Magellan Linux

Contents of /trunk/mkinitrd-magellan/klibc/usr/klibc/README

Parent Directory Parent Directory | Revision Log Revision Log


Revision 532 - (show annotations) (download)
Sat Sep 1 22:45:15 2007 UTC (16 years, 7 months ago) by niro
File size: 2647 byte(s)
-import if magellan mkinitrd; it is a fork of redhats mkinitrd-5.0.8 with all magellan patches and features; deprecates magellan-src/mkinitrd

1 This is klibc, what is intended to be a minimalistic libc subset for
2 use with initramfs. It is deliberately written for small size,
3 minimal entaglement, and portability, not speed. It is definitely a
4 work in progress, and a lot of things are still missing.
5
6
7 The build procedure is not very polished yet, but it should work like
8 this:
9
10 a) In the source root directory (the directory above the one in which
11 this file is found) create a symlink called "linux" pointing to a
12 reasonably recent Linux kernel tree (2.4 or 2.6 should be OK.)
13 This tree must have the include/asm symlink set up for the
14 architecture you're compiling for, and include/linux/autoconf.h
15 must exist. The easiest way to make sure of all of these is to do
16 a "make config" or any of its variants on the kernel tree is
17 question, followed by a "make dep" (2.4) or "make prepare" (2.6).
18
19 b) If you're cross-compiling, you need to set KLIBCARCH to the
20 appropriate architecture, and set CROSS_COMPILE to your toolchain
21 prefix.
22
23 IMPORTANT: if you're on a 64-bit machine with a 32-bit userland
24 (ia64, mips64, ppc64 sparc64, s390x or x86_64), and you want to
25 build the 32-bit version: you need to set KLIBCARCH to the 32-bit
26 architecture as well as set up the linux/include/asm symlink to
27 point to the 32-bit architecture. Building the 32-bit architecture
28 usually (but not always) produces smaller binaries, and is likely
29 to be better tested.
30
31 If you are on ARM, and want to build a thumb version of the library
32 (this is supported), change OPTFLAGS in arch/arm/MCONFIG to build
33 thumb code.
34
35 The following is the last known status of various architectures:
36
37 alpha: Working
38 arm-thumb: Untested
39 arm: Working
40 arm26: Not yet ported
41 cris: Working
42 h8300: Not yet ported
43 i386: Working
44 ia64: Working
45 m32r: Untested
46 m68k: Untested
47 m68knommu: Not yet ported
48 mips: Working
49 mips64: Not yet ported
50 parisc: Working
51 parisc64: Not yet ported
52 ppc: Working
53 ppc64: Working
54 s390: Working static, shared untested
55 s390x: Working
56 sh: Untested
57 sh64: Not yet ported
58 sparc: Working
59 sparc64: Untested
60 v850: Not yet ported
61 x86-64: Working
62 xtensa: Not yet ported
63
64 Shared library support requires recent binutils on many
65 architectures.
66
67 Note that even the "working" ones likely have bugs. Please report
68 them if you run into them.
69
70 c) Type "make" and pray...
71
72 d) Try the test programs in the tests/ directory. They should run...
73
74 Contact the klibc mailing list:
75
76 http://www.zytor.com/mailman/listinfo/klibc
77
78 ... for more info.
79
80 -hpa