aboutsummaryrefslogtreecommitdiff
path: root/manual
diff options
context:
space:
mode:
Diffstat (limited to 'manual')
-rw-r--r--manual/filesys.texi2
-rw-r--r--manual/install.texi34
-rw-r--r--manual/maint.texi105
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