annotate src/s/freebsd.h @ 21004:c1ec48dd8520

Initial revision
author Richard M. Stallman <rms@gnu.org>
date Sat, 28 Feb 1998 01:48:50 +0000
parents 687bc839bd2c
children f1457fc159c9
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
6261
b838645548a0 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
1 /* s/ file for freebsd system. */
b838645548a0 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
2
6930
4d3971045057 Rewrite to use netbsd.h and define NO_SHARED_LIBS.
Richard M. Stallman <rms@gnu.org>
parents: 6434
diff changeset
3 /* '__FreeBSD__' is defined by the preprocessor on FreeBSD-1.1 and up.
8869
eff6c7e4e236 (DECLARE_GETPWUID_WITH_UID_T): Defined.
Richard M. Stallman <rms@gnu.org>
parents: 7608
diff changeset
4 Earlier versions do not have shared libraries, so inhibit them.
eff6c7e4e236 (DECLARE_GETPWUID_WITH_UID_T): Defined.
Richard M. Stallman <rms@gnu.org>
parents: 7608
diff changeset
5 You can inhibit them on newer systems if you wish
eff6c7e4e236 (DECLARE_GETPWUID_WITH_UID_T): Defined.
Richard M. Stallman <rms@gnu.org>
parents: 7608
diff changeset
6 by defining NO_SHARED_LIBS. */
6930
4d3971045057 Rewrite to use netbsd.h and define NO_SHARED_LIBS.
Richard M. Stallman <rms@gnu.org>
parents: 6434
diff changeset
7 #ifndef __FreeBSD__
4d3971045057 Rewrite to use netbsd.h and define NO_SHARED_LIBS.
Richard M. Stallman <rms@gnu.org>
parents: 6434
diff changeset
8 #define NO_SHARED_LIBS
4d3971045057 Rewrite to use netbsd.h and define NO_SHARED_LIBS.
Richard M. Stallman <rms@gnu.org>
parents: 6434
diff changeset
9 #endif
6261
b838645548a0 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
10
7339
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
11
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
12 #if 0 /* This much, alone, seemed sufficient as of 19.23.
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
13 But it seems better to be independent of netbsd.h. */
6930
4d3971045057 Rewrite to use netbsd.h and define NO_SHARED_LIBS.
Richard M. Stallman <rms@gnu.org>
parents: 6434
diff changeset
14 #include "netbsd.h"
6261
b838645548a0 Initial revision
Karl Heuer <kwzh@gnu.org>
parents:
diff changeset
15
6930
4d3971045057 Rewrite to use netbsd.h and define NO_SHARED_LIBS.
Richard M. Stallman <rms@gnu.org>
parents: 6434
diff changeset
16 #undef LIB_GCC
4d3971045057 Rewrite to use netbsd.h and define NO_SHARED_LIBS.
Richard M. Stallman <rms@gnu.org>
parents: 6434
diff changeset
17 #define LIB_GCC -lgcc
4d3971045057 Rewrite to use netbsd.h and define NO_SHARED_LIBS.
Richard M. Stallman <rms@gnu.org>
parents: 6434
diff changeset
18 #undef NEED_ERRNO
7339
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
19 #endif /* 0 */
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
20
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
21
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
22 /* Get most of the stuff from bsd4.3 */
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
23 #include "bsd4-3.h"
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
24
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
25 /* For mem-limits.h. */
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
26 #define BSD4_2
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
27
9930
3b0788d087b6 (LD_SWITCH_SYSTEM): Add -dc and -dp.
Richard M. Stallman <rms@gnu.org>
parents: 9495
diff changeset
28 /* These aren't needed, since we have getloadavg. */
7339
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
29 #undef KERNEL_FILE
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
30 #undef LDAV_SYMBOL
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
31
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
32 #define PENDING_OUTPUT_COUNT(FILE) ((FILE)->_p - (FILE)->_bf._base)
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
33
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
34 #define LIBS_DEBUG
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
35 #define LIBS_SYSTEM -lutil
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
36 #define LIBS_TERMCAP -ltermcap
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
37 #define LIB_GCC -lgcc
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
38
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
39 #define SYSV_SYSTEM_DIR
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
40
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
41 /* freebsd has POSIX-style pgrp behavior. */
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
42 #undef BSD_PGRPS
11738
cb413eec7a2f (GETPGRP_NO_ARG): Defined
Richard M. Stallman <rms@gnu.org>
parents: 9930
diff changeset
43 #define GETPGRP_NO_ARG
7339
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
44
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
45 #ifndef NO_SHARED_LIBS
9930
3b0788d087b6 (LD_SWITCH_SYSTEM): Add -dc and -dp.
Richard M. Stallman <rms@gnu.org>
parents: 9495
diff changeset
46 #define LD_SWITCH_SYSTEM -e start -dc -dp
7339
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
47 #define HAVE_TEXT_START /* No need to define `start_of_text'. */
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
48 #define START_FILES pre-crt0.o /usr/lib/crt0.o
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
49 #define UNEXEC unexsunos4.o
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
50 #define RUN_TIME_REMAP
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
51
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
52 #ifndef N_TRELOFF
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
53 #define N_PAGSIZ(x) __LDPGSZ
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
54 #define N_BSSADDR(x) (N_ALIGN(x, N_DATADDR(x)+x.a_data))
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
55 #define N_TRELOFF(x) N_RELOFF(x)
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
56 #endif
8869
eff6c7e4e236 (DECLARE_GETPWUID_WITH_UID_T): Defined.
Richard M. Stallman <rms@gnu.org>
parents: 7608
diff changeset
57 #else /* NO_SHARED_LIBS */
eff6c7e4e236 (DECLARE_GETPWUID_WITH_UID_T): Defined.
Richard M. Stallman <rms@gnu.org>
parents: 7608
diff changeset
58 #ifdef __FreeBSD__ /* shared libs are available, but the user prefers
eff6c7e4e236 (DECLARE_GETPWUID_WITH_UID_T): Defined.
Richard M. Stallman <rms@gnu.org>
parents: 7608
diff changeset
59 not to use them. */
eff6c7e4e236 (DECLARE_GETPWUID_WITH_UID_T): Defined.
Richard M. Stallman <rms@gnu.org>
parents: 7608
diff changeset
60 #define LD_SWITCH_SYSTEM -Bstatic
eff6c7e4e236 (DECLARE_GETPWUID_WITH_UID_T): Defined.
Richard M. Stallman <rms@gnu.org>
parents: 7608
diff changeset
61 #define A_TEXT_OFFSET(x) (sizeof (struct exec))
eff6c7e4e236 (DECLARE_GETPWUID_WITH_UID_T): Defined.
Richard M. Stallman <rms@gnu.org>
parents: 7608
diff changeset
62 #define A_TEXT_SEEK(hdr) (N_TXTOFF(hdr) + A_TEXT_OFFSET(hdr))
eff6c7e4e236 (DECLARE_GETPWUID_WITH_UID_T): Defined.
Richard M. Stallman <rms@gnu.org>
parents: 7608
diff changeset
63 #endif /* __FreeBSD__ */
eff6c7e4e236 (DECLARE_GETPWUID_WITH_UID_T): Defined.
Richard M. Stallman <rms@gnu.org>
parents: 7608
diff changeset
64 #endif /* NO_SHARED_LIBS */
7339
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
65
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
66 #define HAVE_WAIT_HEADER
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
67 #define HAVE_GETLOADAVG
11738
cb413eec7a2f (GETPGRP_NO_ARG): Defined
Richard M. Stallman <rms@gnu.org>
parents: 9930
diff changeset
68 /*#define HAVE_GETPAGESIZE /* configure now puts this in config.h */
7339
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
69 #define HAVE_TERMIOS
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
70 #define NO_TERMIO
8869
eff6c7e4e236 (DECLARE_GETPWUID_WITH_UID_T): Defined.
Richard M. Stallman <rms@gnu.org>
parents: 7608
diff changeset
71 #define DECLARE_GETPWUID_WITH_UID_T
7339
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
72
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
73 /* freebsd uses OXTABS instead of the expected TAB3. */
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
74 #define TABDLY OXTABS
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
75 #define TAB3 OXTABS
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
76
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
77 /* this silences a few compilation warnings */
16220
02044b05d8e0 Replaced symbol BSD with BSD_SYSTEM.
Karl Heuer <kwzh@gnu.org>
parents: 15367
diff changeset
78 #undef BSD_SYSTEM
9018
e8f02eb00bbf (BSD): Have two definitions according to version number.
Richard M. Stallman <rms@gnu.org>
parents: 8869
diff changeset
79 #if __FreeBSD__ == 1
16220
02044b05d8e0 Replaced symbol BSD with BSD_SYSTEM.
Karl Heuer <kwzh@gnu.org>
parents: 15367
diff changeset
80 #define BSD_SYSTEM 199103
9018
e8f02eb00bbf (BSD): Have two definitions according to version number.
Richard M. Stallman <rms@gnu.org>
parents: 8869
diff changeset
81 #elif __FreeBSD__ == 2
16220
02044b05d8e0 Replaced symbol BSD with BSD_SYSTEM.
Karl Heuer <kwzh@gnu.org>
parents: 15367
diff changeset
82 #define BSD_SYSTEM 199306
17351
e53338c19ba5 (BSD_SYSTEM): Alternate definition for FreeBSD v3.
Richard M. Stallman <rms@gnu.org>
parents: 16220
diff changeset
83 #elif __FreeBSD__ == 3
e53338c19ba5 (BSD_SYSTEM): Alternate definition for FreeBSD v3.
Richard M. Stallman <rms@gnu.org>
parents: 16220
diff changeset
84 #define BSD_SYSTEM 199506
9018
e8f02eb00bbf (BSD): Have two definitions according to version number.
Richard M. Stallman <rms@gnu.org>
parents: 8869
diff changeset
85 #endif
7339
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
86
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
87 #define WAITTYPE int
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
88 /* get this since it won't be included if WAITTYPE is defined */
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
89 #ifdef emacs
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
90 #include <sys/wait.h>
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
91 #endif
b557aa86c53a Don't use netbsd.h. Do all that right here.
Richard M. Stallman <rms@gnu.org>
parents: 6930
diff changeset
92 #define WRETCODE(w) (_W_INT(w) >> 8)
14493
9b8b46e18f97 (vfork): Define as fork.
Richard M. Stallman <rms@gnu.org>
parents: 13017
diff changeset
93
9b8b46e18f97 (vfork): Define as fork.
Richard M. Stallman <rms@gnu.org>
parents: 13017
diff changeset
94 /* Needed to avoid hanging when child process writes an error message
9b8b46e18f97 (vfork): Define as fork.
Richard M. Stallman <rms@gnu.org>
parents: 13017
diff changeset
95 and exits -- enami tsugutomo <enami@ba2.so-net.or.jp>. */
9b8b46e18f97 (vfork): Define as fork.
Richard M. Stallman <rms@gnu.org>
parents: 13017
diff changeset
96 #define vfork fork
15367
179cd20f2f8a (DONT_REOPEN_PTY): New definition.
Richard M. Stallman <rms@gnu.org>
parents: 14493
diff changeset
97
179cd20f2f8a (DONT_REOPEN_PTY): New definition.
Richard M. Stallman <rms@gnu.org>
parents: 14493
diff changeset
98 /* Don't close pty in process.c to make it as controlling terminal.
179cd20f2f8a (DONT_REOPEN_PTY): New definition.
Richard M. Stallman <rms@gnu.org>
parents: 14493
diff changeset
99 It is already a controlling terminal of subprocess, because we did
179cd20f2f8a (DONT_REOPEN_PTY): New definition.
Richard M. Stallman <rms@gnu.org>
parents: 14493
diff changeset
100 ioctl TIOCSCTTY. */
179cd20f2f8a (DONT_REOPEN_PTY): New definition.
Richard M. Stallman <rms@gnu.org>
parents: 14493
diff changeset
101 #define DONT_REOPEN_PTY
19071
687bc839bd2c Comment change.
Richard M. Stallman <rms@gnu.org>
parents: 17351
diff changeset
102
687bc839bd2c Comment change.
Richard M. Stallman <rms@gnu.org>
parents: 17351
diff changeset
103 /* CLASH_DETECTION is defined in bsd4-3.h.
687bc839bd2c Comment change.
Richard M. Stallman <rms@gnu.org>
parents: 17351
diff changeset
104 In FreeBSD 2.1.5 (and other 2.1.x), this results useless symbolic links
687bc839bd2c Comment change.
Richard M. Stallman <rms@gnu.org>
parents: 17351
diff changeset
105 remaining in /tmp or other directories with +t bit.
687bc839bd2c Comment change.
Richard M. Stallman <rms@gnu.org>
parents: 17351
diff changeset
106 To avoid this problem, you could #undef it to use no file lock. */
687bc839bd2c Comment change.
Richard M. Stallman <rms@gnu.org>
parents: 17351
diff changeset
107 /* #undef CLASH_DETECTION */