diff options
Diffstat (limited to 'manual')
-rw-r--r-- | manual/filesys.texi | 2 | ||||
-rw-r--r-- | manual/install.texi | 34 | ||||
-rw-r--r-- | manual/maint.texi | 105 |
3 files changed, 85 insertions, 56 deletions
diff --git a/manual/filesys.texi b/manual/filesys.texi index c5c2f10..47f43ad 100644 --- a/manual/filesys.texi +++ b/manual/filesys.texi @@ -541,7 +541,7 @@ uses the @code{strverscmp} function internally. It is important not to mix the use of @code{scandir} and the 64 bits comparison functions or vice versa. There are systems on which this -work but on others it will fail miserably. +works but on others it will fail miserably. @node Simple Directory Lister Mark II @subsection Simple Program to List a Directory, Mark II diff --git a/manual/install.texi b/manual/install.texi index e1d2086..3313bf0 100644 --- a/manual/install.texi +++ b/manual/install.texi @@ -8,6 +8,7 @@ @menu * Tools for Installation:: We recommend using these tools to build. * Supported Configurations:: What systems the GNU C library runs on. +* Tips for Installation:: Useful hints for the installation. * Reporting Bugs:: How to report bugs (if you want to get them fixed) and other troubles you may have with the GNU C library. @@ -325,6 +326,39 @@ sun4-solaris2.@var{n} sun4-sunos5.@var{n} sun4-sunos4.@var{n} sun4 @end smallexample +@node Tips for Installation +@appendixsec Useful hints for the installation + +There are a some more or less obvious methods one should know when +compiling GNU libc: + +@itemize @bullet +@item +Better never compile in the source directory. Create a new directory +and run the @file{configure} from there. Everything should happen +automagically. + +@item +You can use the @code{-j} option of GNU make by changing the line +specifying @code{PARALLELMAKE} in the Makefile generated during the +configuration. + +It is not useful to start the @code{make} process using the @code{-j} +option since this option is not propagated down to the sub-@code{make}s. + +@item +If you made some changes after a complete build and only want to check +these changes run @code{make} while specifying the list of subdirs it +has to visit. + +@smallexample +make subdirs="nss elf" +@end smallexample + +The above build run will only visit the subdirectories @file{nss} and +@file{elf}. Beside this it updates the @file{libc} files itself. +@end itemize + @node Reporting Bugs @appendixsec Reporting Bugs @cindex reporting bugs diff --git a/manual/maint.texi b/manual/maint.texi index b8ae488..a7e0cc4 100644 --- a/manual/maint.texi +++ b/manual/maint.texi @@ -296,74 +296,57 @@ these to pick the list of system-dependent directories to look for. If the @samp{--nfp} option is @emph{not} passed to @file{configure}, the directory @file{@var{machine}/fpu} is also used. The operating system often has a @dfn{base operating system}; for example, if the operating -system is @samp{sunos4.1}, the base operating system is @samp{unix/bsd}. +system is @samp{Linux}, the base operating system is @samp{unix/sysv}. The algorithm used to pick the list of directories is simple: @file{configure} makes a list of the base operating system, manufacturer, CPU type, and operating system, in that order. It then concatenates all these together with slashes in between, to produce a -directory name; for example, the configuration @w{@samp{sparc-sun-sunos4.1}} -results in @file{unix/bsd/sun/sparc/sunos4.1}. @file{configure} then +directory name; for example, the configuration @w{@samp{i686-linux-gnu}} +results in @file{unix/sysv/linux/i386/i686}. @file{configure} then tries removing each element of the list in turn, so -@file{unix/bsd/sparc} and @file{sun/sparc} are also tried, among others. +@file{unix/sysv/linux} and @file{unix/sysv} are also tried, among others. Since the precise version number of the operating system is often not important, and it would be very inconvenient, for example, to have -identical @file{sunos4.1.1} and @file{sunos4.1.2} directories, +identical @file{irix6.2} and @file{irix6.3} directories, @file{configure} tries successively less specific operating system names by removing trailing suffixes starting with a period. As an example, here is the complete list of directories that would be -tried for the configuration @w{@samp{sparc-sun-sunos4.1}} (without the -@w{@samp{--nfp}} option): +tried for the configuration @w{@samp{i686-linux-gnu}} (with the +@file{crypt} and @file{linuxthreads} add-on): @smallexample -sparc/fpu -unix/bsd/sun/sunos4.1/sparc -unix/bsd/sun/sunos4.1 -unix/bsd/sun/sunos4/sparc -unix/bsd/sun/sunos4 -unix/bsd/sun/sunos/sparc -unix/bsd/sun/sunos -unix/bsd/sun/sparc -unix/bsd/sun -unix/bsd/sunos4.1/sparc -unix/bsd/sunos4.1 -unix/bsd/sunos4/sparc -unix/bsd/sunos4 -unix/bsd/sunos/sparc -unix/bsd/sunos -unix/bsd/sparc -unix/bsd -unix/sun/sunos4.1/sparc -unix/sun/sunos4.1 -unix/sun/sunos4/sparc -unix/sun/sunos4 -unix/sun/sunos/sparc -unix/sun/sunos -unix/sun/sparc -unix/sun -unix/sunos4.1/sparc -unix/sunos4.1 -unix/sunos4/sparc -unix/sunos4 -unix/sunos/sparc -unix/sunos -unix/sparc -unix -sun/sunos4.1/sparc -sun/sunos4.1 -sun/sunos4/sparc -sun/sunos4 -sun/sunos/sparc -sun/sunos -sun/sparc -sun -sunos4.1/sparc -sunos4.1 -sunos4/sparc -sunos4 -sunos/sparc -sunos -sparc +sysdeps/i386/elf +crypt/sysdeps/unix +linuxthreads/sysdeps/unix/sysv/linux +linuxthreads/sysdeps/pthread +linuxthreads/sysdeps/unix/sysv +linuxthreads/sysdeps/unix +linuxthreads/sysdeps/i386/i686 +linuxthreads/sysdeps/i386 +linuxthreads/sysdeps/pthread/no-cmpxchg +sysdeps/unix/sysv/linux/i386 +sysdeps/unix/sysv/linux +sysdeps/gnu +sysdeps/unix/common +sysdeps/unix/mman +sysdeps/unix/inet +sysdeps/unix/sysv/i386/i686 +sysdeps/unix/sysv/i386 +sysdeps/unix/sysv +sysdeps/unix/i386 +sysdeps/unix +sysdeps/posix +sysdeps/i386/i686 +sysdeps/i386/i486 +sysdeps/libm-i387/i686 +sysdeps/i386/fpu +sysdeps/libm-i387 +sysdeps/i386 +sysdeps/wordsize-32 +sysdeps/ieee754 +sysdeps/libm-ieee754 +sysdeps/generic @end smallexample Different machine architectures are conventionally subdirectories at the @@ -391,6 +374,15 @@ where the C type @code{float} is IEEE 754 single-precision format, and directory is referred to in the @file{Implies} file in a machine architecture-specific directory, such as @file{m68k/Implies}. +@item libm-ieee754 +This directory contains an implementation of a mathematical library +usable on platforms which use @w{IEEE 754} conformant floating-point +arithmetic. + +@item libm-i387 +This is a special case. Ideally the code should be in +@file{sysdeps/i386/fpu} but for various reasons it is kept aside. + @item posix This directory contains implementations of things in the library in terms of @sc{POSIX.1} functions. This includes some of the @sc{POSIX.1} @@ -466,6 +458,9 @@ generated are @file{ioctls.h}, @file{errnos.h}, @file{sys/param.h}, and @c ??? This section is really short now. Want to keep it? --roland +@c It's not anymore true. glibc 2.1 cannot be used with K&R compilers. +@c --drepper + Although the GNU C library implements the @w{ISO C} library facilities, you @emph{can} use the GNU C library with traditional, ``pre-ISO'' C compilers. However, you need to be careful because the content and |