diff options
| -rw-r--r-- | ChangeLog | 44 | ||||
| -rw-r--r-- | INSTALL | 13 | ||||
| -rw-r--r-- | manual/charset.texi | 8 | ||||
| -rw-r--r-- | manual/conf.texi | 4 | ||||
| -rw-r--r-- | manual/errno.texi | 35 | ||||
| -rw-r--r-- | manual/filesys.texi | 29 | ||||
| -rw-r--r-- | manual/install.texi | 13 | ||||
| -rw-r--r-- | manual/intro.texi | 2 | ||||
| -rw-r--r-- | manual/io.texi | 18 | ||||
| -rw-r--r-- | manual/job.texi | 2 | ||||
| -rw-r--r-- | manual/llio.texi | 42 | ||||
| -rw-r--r-- | manual/macros.texi | 30 | ||||
| -rw-r--r-- | manual/maint.texi | 2 | ||||
| -rw-r--r-- | manual/memory.texi | 6 | ||||
| -rw-r--r-- | manual/pattern.texi | 2 | ||||
| -rw-r--r-- | manual/pipe.texi | 4 | ||||
| -rw-r--r-- | manual/process.texi | 8 | ||||
| -rw-r--r-- | manual/resource.texi | 3 | ||||
| -rw-r--r-- | manual/setjmp.texi | 2 | ||||
| -rw-r--r-- | manual/signal.texi | 20 | ||||
| -rw-r--r-- | manual/startup.texi | 4 | ||||
| -rw-r--r-- | manual/stdio.texi | 18 | ||||
| -rw-r--r-- | manual/terminal.texi | 51 | ||||
| -rw-r--r-- | manual/time.texi | 12 | ||||
| -rw-r--r-- | manual/users.texi | 26 | ||||
| -rw-r--r-- | sysdeps/gnu/errlist.c | 20 |
26 files changed, 251 insertions, 167 deletions
@@ -1,5 +1,49 @@ 2012-03-08 Joseph Myers <joseph@codesourcery.com> + [BZ #6911] + * manual/macros.texi (gnusystems): New macro. + (nongnusystems): Likewise. + (gnulinuxhurdsystems): Likewise. + (gnuhurdsystems): Likewise.. + (gnulinuxsystems): Likewise. + * manual/charset.texi: Use new macros or @theglibc{} to refer to + variants of the GNU system, not "GNU system". + * manual/conf.texi: Likewise. + * manual/errno.texi: Likewise. Update example of errno macro + expansion. + * manual/filesys.texi: Likewise. + (getumask): Document as specific to GNU/Hurd. + * manual/install.texi: Likewise. Reword some references to + GNU/Linux. + * manual/intro.texi: Likewise. + * manual/io.texi: Likewise. + (File Name Portability): Detail which constraints are inapplicable + to all GNU systems and which are only inapplicable to GNU/Hurd. + * manual/job.texi: Likewise. + * manual/llio.texi: Likewise. + (O_NOCTTY): Document as present on GNU/Linux. + * manual/maint.texi: Likewise. + * manual/memory.texi: Likewise. + * manual/pattern.texi: Likewise. + * manual/pipe.texi: Likewise. + * manual/process.texi: Likewise. + * manual/resource.texi: Likewise. + (RUSAGE_CHILDREN): Remove statement about specifying a particular + child on GNU/Hurd. + * manual/setjmp.texi: Likewise. + * manual/signal.texi: Likewise. + * manual/startup.texi: Likewise. + * manual/stdio.texi: Likewise. + * manual/terminal.texi: Likewise. + (ONLCR): Document as POSIX. + (OXTABS): Document availability on GNU/Linux as XTABS. + (ONOEOT): Document availability separately from other bits. + (VLNEXT, VDISCARD, VSTATUS): Document availability individually. + * manual/time.texi: Likewise. + * manual/users.texi: Likewise. + * INSTALL: Regenerated. + * sysdeps/gnu/errlist.c: Regenerated. + * aclocal.m4 (LIBC_TRY_LINK_STATIC): New macro. * configure.in (libc_cv_preinit_array): Use LIBC_TRY_LINK_STATIC. (libc_cv_ctors_header): Likewise. Use asm ("") instead of calling @@ -339,7 +339,7 @@ patches, although we try to avoid this. Specific advice for GNU/Linux systems ===================================== -If you are installing the GNU C Library on a GNU/Linux system, you need +If you are installing the GNU C Library on GNU/Linux systems, you need to have the header files from a 2.6.19.1 or newer kernel around for reference. These headers must be installed using `make headers_install'; the headers present in the kernel source directory @@ -370,11 +370,12 @@ required if not compiling programs using those interfaces. You do not need to copy kernel headers if you did not specify an alternate kernel header source using `--with-headers'. - GNU/Linux expects some components of the GNU C Library installation -to be in `/lib' and some in `/usr/lib'. This is handled automatically -if you configure the GNU C Library with `--prefix=/usr'. If you set -some other prefix or allow it to default to `/usr/local', then all the -components are installed there. + The Filesystem Hierarchy Standard for GNU/Linux systems expects some +components of the GNU C Library installation to be in `/lib' and some +in `/usr/lib'. This is handled automatically if you configure the GNU +C Library with `--prefix=/usr'. If you set some other prefix or allow +it to default to `/usr/local', then all the components are installed +there. You cannot use `nscd' with 2.0 kernels, due to bugs in the kernel-side thread support. `nscd' happens to hit these bugs diff --git a/manual/charset.texi b/manual/charset.texi index 610db90858..97fb2bed2d 100644 --- a/manual/charset.texi +++ b/manual/charset.texi @@ -112,7 +112,7 @@ this type is capable of storing all elements of the basic character set. Therefore it would be legitimate to define @code{wchar_t} as @code{char}, which might make sense for embedded systems. -But for GNU systems @code{wchar_t} is always 32 bits wide and, therefore, +But in @theglibc{} @code{wchar_t} is always 32 bits wide and, therefore, capable of representing all UCS-4 values and, therefore, covering all of @w{ISO 10646}. Some Unix systems define @code{wchar_t} as a 16-bit type and thereby follow Unicode very strictly. This definition is perfectly @@ -393,7 +393,7 @@ We already said above that the currently selected locale for the by the functions we are about to describe. Each locale uses its own character set (given as an argument to @code{localedef}) and this is the one assumed as the external multibyte encoding. The wide character -set is always UCS-4, at least on GNU systems. +set is always UCS-4 in @theglibc{}. A characteristic of each multibyte character set is the maximum number of bytes that can be necessary to represent one character. This @@ -537,8 +537,8 @@ Code using @code{mbsinit} often looks similar to this: The code to emit the escape sequence to get back to the initial state is interesting. The @code{wcsrtombs} function can be used to determine the -necessary output code (@pxref{Converting Strings}). Please note that on -GNU systems it is not necessary to perform this extra action for the +necessary output code (@pxref{Converting Strings}). Please note that with +@theglibc{} it is not necessary to perform this extra action for the conversion from multibyte text to wide character text since the wide character encoding is not stateful. But there is nothing mentioned in any standard that prohibits making @code{wchar_t} using a stateful diff --git a/manual/conf.texi b/manual/conf.texi index bc5b9282a7..2cd41f6c73 100644 --- a/manual/conf.texi +++ b/manual/conf.texi @@ -1185,7 +1185,7 @@ represents the maximum length of a file name string. It is defined in Unlike @code{PATH_MAX}, this macro is defined even if there is no actual limit imposed. In such a case, its value is typically a very large -number. @strong{This is always the case on the GNU system.} +number. @strong{This is always the case on @gnuhurdsystems{}.} @strong{Usage Note:} Don't use @code{FILENAME_MAX} as the size of an array in which to store a file name! You can't possibly make an array @@ -1252,7 +1252,7 @@ particular file, call @code{pathconf} or @code{fpathconf}. Here are the names for the POSIX minimum upper bounds for some of the above parameters. The significance of these values is that you can safely push to these limits without checking whether the particular -system you are using can go that far. In most cases GNU systems do not +system you are using can go that far. In most cases @gnusystems{} do not have these strict limitations. The actual limit should be requested if necessary. diff --git a/manual/errno.texi b/manual/errno.texi index f155db749f..fa88b1e8a1 100644 --- a/manual/errno.texi +++ b/manual/errno.texi @@ -66,8 +66,9 @@ function returns an error. @strong{Portability Note:} @w{ISO C} specifies @code{errno} as a ``modifiable lvalue'' rather than as a variable, permitting it to be implemented as a macro. For example, its expansion might involve a -function call, like @w{@code{*_errno ()}}. In fact, that is what it is -on the GNU system itself. @Theglibc{}, on non-GNU systems, does +function call, like @w{@code{*__errno_location ()}}. In fact, that is +what it is +on @gnulinuxhurdsystems{}. @Theglibc{}, on each system, does whatever is right for the particular system. There are a few library functions, like @code{sqrt} and @code{atan}, @@ -96,10 +97,10 @@ codes of their own for other situations. The only values that are guaranteed to be meaningful for a particular library function are the ones that this manual lists for that function. -On non-GNU systems, almost any system call can return @code{EFAULT} if +Except on @gnuhurdsystems{}, almost any system call can return @code{EFAULT} if it is given an invalid pointer as an argument. Since this could only happen as a result of a bug in your program, and since it will not -happen on the GNU system, we have saved space by not mentioning +happen on @gnuhurdsystems{}, we have saved space by not mentioning @code{EFAULT} in the descriptions of individual functions. In some Unix systems, many system calls can also return @code{EFAULT} if @@ -114,7 +115,7 @@ allocated memory instead of stack memory on that system. @pindex errno.h The error code macros are defined in the header file @file{errno.h}. All of them expand into integer constant values. Some of these error -codes can't occur on the GNU system, but they can occur using @theglibc{} +codes can't occur on @gnusystems{}, but they can occur using @theglibc{} on other systems. @comment errno.h @@ -178,8 +179,8 @@ computer. @comment errno 7 @c DO NOT REMOVE Argument list too long; used when the arguments passed to a new program being executed with one of the @code{exec} functions (@pxref{Executing a -File}) occupy too much memory space. This condition never arises in the -GNU system. +File}) occupy too much memory space. This condition never arises on +@gnuhurdsystems{}. @end deftypevr @comment errno.h @@ -238,7 +239,7 @@ Permission denied; the file permissions do not allow the attempted operation. @deftypevr Macro int EFAULT @comment errno 14 @c DO NOT REMOVE Bad address; an invalid pointer was detected. -In the GNU system, this error never happens; you get a signal instead. +On @gnuhurdsystems{}, this error never happens; you get a signal instead. @end deftypevr @comment errno.h @@ -326,7 +327,7 @@ want to increase the @code{RLIMIT_NOFILE} limit or make it unlimited; @comment errno 23 @c DO NOT REMOVE There are too many distinct file openings in the entire system. Note that any number of linked channels count as just one file opening; see -@ref{Linked Channels}. This error never occurs in the GNU system. +@ref{Linked Channels}. This error never occurs on @gnuhurdsystems{}. @end deftypevr @comment errno.h @@ -345,7 +346,7 @@ An attempt to execute a file that is currently open for writing, or write to a file that is currently being executed. Often using a debugger to run a program is considered having it open for writing and will cause this error. (The name stands for ``text file busy''.) This -is not an error in the GNU system; the text is copied as necessary. +is not an error on @gnuhurdsystems{}; the text is copied as necessary. @end deftypevr @comment errno.h @@ -533,7 +534,7 @@ The socket type is not supported. @comment errno 45 @c DO NOT REMOVE The operation you requested is not supported. Some socket functions don't make sense for all types of sockets, and others may not be -implemented for all communications protocols. In the GNU system, this +implemented for all communications protocols. On @gnuhurdsystems{}, this error can happen for many calls when the object does not support the particular operation; it is a generic indication that the server knows nothing to do for that call. @@ -754,7 +755,7 @@ the NFS file system on the local host. An attempt was made to NFS-mount a remote file system with a file name that already specifies an NFS-mounted file. (This is an error on some operating systems, but we expect it to work -properly on the GNU system, making this error code impossible.) +properly on @gnuhurdsystems{}, making this error code impossible.) @end deftypevr @comment errno.h @@ -797,7 +798,7 @@ properly on the GNU system, making this error code impossible.) @deftypevr Macro int ENOLCK @comment errno 77 @c DO NOT REMOVE No locks available. This is used by the file locking facilities; see -@ref{File Locks}. This error is never generated by the GNU system, but +@ref{File Locks}. This error is never generated by @gnuhurdsystems{}, but it can result from an operation to an NFS server running another operating system. @end deftypevr @@ -868,7 +869,7 @@ or an incomplete sequence of bytes or the given wide character is invalid. @comment GNU: Inappropriate operation for background process @deftypevr Macro int EBACKGROUND @comment errno 100 @c DO NOT REMOVE -In the GNU system, servers supporting the @code{term} protocol return +On @gnuhurdsystems{}, servers supporting the @code{term} protocol return this error for certain operations when the caller is not in the foreground process group of the terminal. Users do not usually see this error because functions such as @code{read} and @code{write} translate @@ -880,7 +881,7 @@ for information on process groups and these signals. @comment GNU: Translator died @deftypevr Macro int EDIED @comment errno 101 @c DO NOT REMOVE -In the GNU system, opening a file returns this error when the file is +On @gnuhurdsystems{}, opening a file returns this error when the file is translated by a program and the translator program dies while starting up, before it has connected to the file. @end deftypevr @@ -1346,8 +1347,8 @@ The function @code{perror} is declared in @file{stdio.h}. @end deftypefun @code{strerror} and @code{perror} produce the exact same message for any -given error code; the precise text varies from system to system. On the -GNU system, the messages are fairly short; there are no multi-line +given error code; the precise text varies from system to system. With +@theglibc{}, the messages are fairly short; there are no multi-line messages or embedded newlines. Each error message begins with a capital letter and does not include any terminating punctuation. diff --git a/manual/filesys.texi b/manual/filesys.texi index 872e3710a0..dc570df181 100644 --- a/manual/filesys.texi +++ b/manual/filesys.texi @@ -121,8 +121,8 @@ the buffer. @Theglibc{} provides @code{getwd} only for backwards compatibility with BSD. The @var{buffer} argument should be a pointer to an array at least -@code{PATH_MAX} bytes long (@pxref{Limits for Files}). In the GNU -system there is no limit to the size of a file name, so this is not +@code{PATH_MAX} bytes long (@pxref{Limits for Files}). On @gnuhurdsystems{} +there is no limit to the size of a file name, so this is not necessarily enough space to contain the directory name. That is why this function is deprecated. @end deftypefn @@ -242,7 +242,7 @@ field you can count on in all POSIX systems. @item ino_t d_fileno This is the file serial number. For BSD compatibility, you can also -refer to this member as @code{d_ino}. In the GNU system and most POSIX +refer to this member as @code{d_ino}. On @gnulinuxhurdsystems{} and most POSIX systems, for most files this the same as the @code{st_ino} member that @code{stat} will return for the file. @xref{File Attributes}. @@ -354,7 +354,7 @@ The process has too many files open. @item ENFILE The entire system, or perhaps the file system which contains the directory, cannot support any additional open files at the moment. -(This problem cannot happen on the GNU system.) +(This problem cannot happen on @gnuhurdsystems{}.) @item ENOMEM Not enough memory available. @@ -1075,7 +1075,8 @@ The directory or file system that would contain the new link is full and cannot be extended. @item EPERM -In the GNU system and some others, you cannot make links to directories. +On @gnulinuxhurdsystems{} and some others, you cannot make links to +directories. Many systems allow only privileged users to do so. This error is used to report the problem. @@ -1099,7 +1100,7 @@ A hardware error occurred while trying to read or write the to filesystem. @cindex symbolic link @cindex link, symbolic -The GNU system supports @dfn{soft links} or @dfn{symbolic links}. This +@gnusystems{} support @dfn{soft links} or @dfn{symbolic links}. This is a kind of ``file'' that is essentially a pointer to another file name. Unlike hard links, symbolic links can be made to directories or across file systems with no restrictions. You can also make a symbolic @@ -1352,8 +1353,8 @@ The file name to be deleted doesn't exist. @item EPERM On some systems @code{unlink} cannot be used to delete the name of a directory, or at least can only be used this way by a privileged user. -To avoid such problems, use @code{rmdir} to delete directories. (In the -GNU system @code{unlink} can never delete the name of a directory.) +To avoid such problems, use @code{rmdir} to delete directories. (On +@gnulinuxhurdsystems{} @code{unlink} can never delete the name of a directory.) @item EROFS The directory containing the file name to be deleted is on a read-only @@ -1381,7 +1382,7 @@ The directory to be deleted is not empty. @end table These two error codes are synonymous; some systems use one, and some use -the other. The GNU system always uses @code{ENOTEMPTY}. +the other. @gnulinuxhurdsystems{} always use @code{ENOTEMPTY}. The prototype for this function is declared in the header file @file{unistd.h}. @@ -1458,7 +1459,7 @@ that are the current working directories of processes. @item ENOTEMPTY @itemx EEXIST -The directory @var{newname} isn't empty. The GNU system always returns +The directory @var{newname} isn't empty. @gnulinuxhurdsystems{} always return @code{ENOTEMPTY} for this, but some other systems return @code{EEXIST}. @item EINVAL @@ -2480,16 +2481,16 @@ read_umask (void) @end smallexample @noindent -However, it is better to use @code{getumask} if you just want to read -the mask value, because it is reentrant (at least if you use the GNU -operating system). +However, on @gnuhurdsystems{} it is better to use @code{getumask} if +you just want to read the mask value, because it is reentrant. @end deftypefun @comment sys/stat.h @comment GNU @deftypefun mode_t getumask (void) Return the current value of the file creation mask for the current -process. This function is a GNU extension. +process. This function is a GNU extension and is only available on +@gnuhurdsystems{}. @end deftypefun @comment sys/stat.h diff --git a/manual/install.texi b/manual/install.texi index 03cab71845..00db2b8478 100644 --- a/manual/install.texi +++ b/manual/install.texi @@ -58,8 +58,8 @@ directory, especially some files in the manual subdirectory. mandatory is @samp{--prefix}. This option tells @code{configure} where you want @theglibc{} installed. This defaults to @file{/usr/local}, but the normal setting to install as the standard system library is -@samp{--prefix=/usr} for GNU/Linux systems and @samp{--prefix=} (an -empty prefix) for GNU/Hurd systems. +@samp{--prefix=/usr} for @gnulinuxsystems{} and @samp{--prefix=} (an +empty prefix) for @gnuhurdsystems{}. It may also be useful to set the @var{CC} and @var{CFLAGS} variables in the environment when running @code{configure}. @var{CC} selects the C @@ -104,7 +104,7 @@ relative to the build directory (that is, the current working directory). For example, @samp{--enable-add-ons=nptl,../glibc-libidn-@var{version}}. @item --enable-kernel=@var{version} -This option is currently only useful on GNU/Linux systems. The +This option is currently only useful on @gnulinuxsystems{}. The @var{version} parameter should have the form X.Y.Z and describes the smallest version of the Linux kernel the generated library is expected to support. The higher the @var{version} number is, the less @@ -386,10 +386,10 @@ You may also need these packages if you upgrade your source tree using patches, although we try to avoid this. @node Linux -@appendixsec Specific advice for GNU/Linux systems +@appendixsec Specific advice for @gnulinuxsystems{} @cindex kernel header files -If you are installing @theglibc{} on a GNU/Linux system, you need to have +If you are installing @theglibc{} on @gnulinuxsystems{}, you need to have the header files from a 2.6.19.1 or newer kernel around for reference. These headers must be installed using @samp{make headers_install}; the headers present in the kernel source directory are not suitable for @@ -421,7 +421,8 @@ are not required if not compiling programs using those interfaces. You do not need to copy kernel headers if you did not specify an alternate kernel header source using @samp{--with-headers}. -GNU/Linux expects some components of the @glibcadj{} installation to be in +The Filesystem Hierarchy Standard for @gnulinuxsystems{} expects some +components of the @glibcadj{} installation to be in @file{/lib} and some in @file{/usr/lib}. This is handled automatically if you configure @theglibc{} with @samp{--prefix=/usr}. If you set some other prefix or allow it to default to @file{/usr/local}, then all the diff --git a/manual/intro.texi b/manual/intro.texi index bfe30d76e0..4a709edf72 100644 --- a/manual/intro.texi +++ b/manual/intro.texi @@ -12,7 +12,7 @@ programs |
