This commit is contained in:
Michael Kerrisk 2007-06-22 17:48:59 +00:00
parent c3dfd2c880
commit db4e96b771
7 changed files with 86 additions and 22 deletions

View File

@ -365,7 +365,11 @@ file timestamp fields.
Glibc exposes the nanosecond component of each field using names either
of the form
.IR st_atim.tv_nsec ,
if the _BSD_SOURCE or _SVID_SOURCE feature test macro is defined,
if the
.B _BSD_SOURCE
or
.B _SVID_SOURCE
feature test macro is defined,
or of the form
.IR st_atimensec ,
if neither of these macros is defined.

View File

@ -266,7 +266,9 @@ const char *tm_zone; /* Timezone abbreviation */
.fi
.RE
.sp
defined when _BSD_SOURCE was set before including
defined when
.B _BSD_SOURCE
was set before including
.IR <time.h> .
This is a BSD extension, present in 4.3BSD-Reno.
.SH "SEE ALSO"

View File

@ -75,7 +75,13 @@ See
On a glibc system, these functions are declared by
.I <math.h>
when _BSD_SOURCE or _SVID_SOURCE or _GNU_SOURCE is defined.
when
.B _BSD_SOURCE
or
.B _SVID_SOURCE
or
.B _GNU_SOURCE
is defined.
The isnan() functions will also be declared when _XOPEN_SOURCE
is defined.
.\" .SH HISTORY

View File

@ -130,8 +130,14 @@ According to SUSv2,
.BR valloc ()
is declared in \fI<stdlib.h>\fP.
Libc4,5 and glibc declare it in \fI<malloc.h>\fP and perhaps also in <stdlib.h>
(namely, if _GNU_SOURCE is defined, or _BSD_SOURCE is defined, or,
for glibc, if _XOPEN_SOURCE_EXTENDED is defined, or, equivalently,
(namely, if
.B _GNU_SOURCE
is defined, or
.B _BSD_SOURCE
is defined, or,
for glibc, if
.B _XOPEN_SOURCE_EXTENDED
is defined, or, equivalently,
_XOPEN_SOURCE is defined to a value not less than 500).
.SH NOTES
On many systems there are alignment restrictions, for example, on buffers

View File

@ -78,7 +78,9 @@ architecture.
Libc4 and libc5 only know about the BSD version.
Glibc uses the BSD version if the _BSD_SOURCE feature test macro is
Glibc uses the BSD version if the
.B _BSD_SOURCE
feature test macro is
defined and none of _POSIX_SOURCE, _POSIX_C_SOURCE, _XOPEN_SOURCE,
_GNU_SOURCE, or
.B _SVID_SOURCE

View File

@ -200,25 +200,41 @@ If unset, fill character is ASCII NUL ('\\0').
.B NLDLY
Newline delay mask.
Values are \fBNL0\fP and \fBNL1\fP.
[requires _BSD_SOURCE or _SVID_SOURCE or _XOPEN_SOURCE]
[requires
.B _BSD_SOURCE
or
.B _SVID_SOURCE
or _XOPEN_SOURCE]
.TP
.B CRDLY
Carriage return delay mask.
Values are \fBCR0\fP, \fBCR1\fP, \fBCR2\fP, or \fBCR3\fP.
[requires _BSD_SOURCE or _SVID_SOURCE or _XOPEN_SOURCE]
[requires
.B _BSD_SOURCE
or
.B _SVID_SOURCE
or _XOPEN_SOURCE]
.TP
.B TABDLY
Horizontal tab delay mask.
Values are \fBTAB0\fP, \fBTAB1\fP, \fBTAB2\fP, \fBTAB3\fP (or \fBXTABS\fP).
A value of TAB3, that is, XTABS, expands tabs to spaces
(with tab stops every eight columns).
[requires _BSD_SOURCE or _SVID_SOURCE or _XOPEN_SOURCE]
[requires
.B _BSD_SOURCE
or
.B _SVID_SOURCE
or _XOPEN_SOURCE]
.TP
.B BSDLY
Backspace delay mask.
Values are \fBBS0\fP or \fBBS1\fP.
(Has never been implemented.)
[requires _BSD_SOURCE or _SVID_SOURCE or _XOPEN_SOURCE]
[requires
.B _BSD_SOURCE
or
.B _SVID_SOURCE
or _XOPEN_SOURCE]
.TP
.B VTDLY
Vertical tab delay mask.
@ -227,17 +243,25 @@ Values are \fBVT0\fP or \fBVT1\fP.
.B FFDLY
Form feed delay mask.
Values are \fBFF0\fP or \fBFF1\fP.
[requires _BSD_SOURCE or _SVID_SOURCE or _XOPEN_SOURCE]
[requires
.B _BSD_SOURCE
or
.B _SVID_SOURCE
or _XOPEN_SOURCE]
.PP
\fIc_cflag\fP flag constants:
.TP
.B CBAUD
(not in POSIX) Baud speed mask (4+1 bits).
[requires _BSD_SOURCE or _SVID_SOURCE]
[requires
.B _BSD_SOURCE
or _SVID_SOURCE]
.TP
.B CBAUDEX
(not in POSIX) Extra baud speed mask (1 bit), included in CBAUD.
[requires _BSD_SOURCE or _SVID_SOURCE]
[requires
.B _BSD_SOURCE
or _SVID_SOURCE]
.sp
(POSIX says that the baud speed is stored in the
.I termios
@ -284,7 +308,9 @@ For use by \fBshl\fP (shell layers). (Not implemented on Linux.)
(not in POSIX) Mask for input speeds.
The values for the CIBAUD bits are
the same as the values for the CBAUD bits, shifted left IBSHIFT bits.
[requires _BSD_SOURCE or _SVID_SOURCE]
[requires
.B _BSD_SOURCE
or _SVID_SOURCE]
(Not implemented on Linux.)
.TP
.B CMSPAR
@ -295,11 +321,15 @@ devices): if
is set, the parity bit is always 1; if
.B PARODD
is not set, then the parity bit is always 0).
[requires _BSD_SOURCE or _SVID_SOURCE]
[requires
.B _BSD_SOURCE
or _SVID_SOURCE]
.TP
.B CRTSCTS
(not in POSIX) Enable RTS/CTS (hardware) flow control.
[requires _BSD_SOURCE or _SVID_SOURCE]
[requires
.B _BSD_SOURCE
or _SVID_SOURCE]
.PP
\fIc_lflag\fP flag constants:
.TP
@ -340,17 +370,23 @@ TAB, NL, START, and STOP are echoed as ^X, where X is the character with
ASCII code 0x40 greater than the control signal.
For example, character
0x08 (BS) is echoed as ^H.
[requires _BSD_SOURCE or _SVID_SOURCE]
[requires
.B _BSD_SOURCE
or _SVID_SOURCE]
.TP
.B ECHOPRT
(not in POSIX) If \fBICANON\fP and \fBIECHO\fP are also set, characters
are printed as they are being erased.
[requires _BSD_SOURCE or _SVID_SOURCE]
[requires
.B _BSD_SOURCE
or _SVID_SOURCE]
.TP
.B ECHOKE
(not in POSIX) If \fBICANON\fP is also set, KILL is echoed by erasing
each character on the line, as specified by \fBECHOE\fP and \fBECHOPRT\fP.
[requires _BSD_SOURCE or _SVID_SOURCE]
[requires
.B _BSD_SOURCE
or _SVID_SOURCE]
.TP
.B DEFECHO
(not in POSIX) Echo only when a process is reading.
@ -361,7 +397,9 @@ each character on the line, as specified by \fBECHOE\fP and \fBECHOPRT\fP.
Output is being flushed.
This flag is toggled by typing
the DISCARD character.
[requires _BSD_SOURCE or _SVID_SOURCE]
[requires
.B _BSD_SOURCE
or _SVID_SOURCE]
.TP
.B NOFLSH
Disable flushing the input and output queues when generating the
@ -383,7 +421,9 @@ which tries to write to its controlling terminal.
All characters in the input queue are reprinted when
the next character is read.
(\fBbash\fP handles typeahead this way.)
[requires _BSD_SOURCE or _SVID_SOURCE]
[requires
.B _BSD_SOURCE
or _SVID_SOURCE]
.TP
.B IEXTEN
Enable implementation-defined input processing.

View File

@ -121,7 +121,11 @@ tmpnam_r(char *s)
apparently as a warning not to use NULL.
A few systems implement it.
To get a glibc prototype for this function,
define _SVID_SOURCE or _BSD_SOURCE before including
define
.B _SVID_SOURCE
or
.B _BSD_SOURCE
before including
.IR "<stdio.h>" .
.SH BUGS
Never use this function.