Mercurial > emacs
annotate src/s/netbsd.h @ 88123:375f2633d815
New directory
author | Kenichi Handa <handa@m17n.org> |
---|---|
date | Mon, 08 Sep 2003 11:56:09 +0000 |
parents | 695cf19ef79e |
children | 68c22ea6027c |
rev | line source |
---|---|
4690 | 1 /* s/ file for netbsd system. */ |
2 | |
3 /* Get most of the stuff from bsd4.3 */ | |
4 #include "bsd4-3.h" | |
5 | |
18121
23ee33de4cca
(NO_SHARED_LIBS): Test __alpha__ && ! __ELF__.
Richard M. Stallman <rms@gnu.org>
parents:
18102
diff
changeset
|
6 #if defined (__alpha__) && !defined (__ELF__) |
18102
d419ea48f00e
[__alpha__] (NO_SHARED_LIBS): Defined.
Richard M. Stallman <rms@gnu.org>
parents:
14618
diff
changeset
|
7 #define NO_SHARED_LIBS |
d419ea48f00e
[__alpha__] (NO_SHARED_LIBS): Defined.
Richard M. Stallman <rms@gnu.org>
parents:
14618
diff
changeset
|
8 #endif |
d419ea48f00e
[__alpha__] (NO_SHARED_LIBS): Defined.
Richard M. Stallman <rms@gnu.org>
parents:
14618
diff
changeset
|
9 |
5902
916cd5156aed
Use -ltermcap, not Emacs's own version. #undef symbols used for
Charles Hannum <mycroft@gnu.org>
parents:
5901
diff
changeset
|
10 /* For mem-limits.h. */ |
916cd5156aed
Use -ltermcap, not Emacs's own version. #undef symbols used for
Charles Hannum <mycroft@gnu.org>
parents:
5901
diff
changeset
|
11 #define BSD4_2 |
916cd5156aed
Use -ltermcap, not Emacs's own version. #undef symbols used for
Charles Hannum <mycroft@gnu.org>
parents:
5901
diff
changeset
|
12 |
4690 | 13 #undef KERNEL_FILE |
14 #undef LDAV_SYMBOL | |
28640 | 15 #define HAVE_GETLOADAVG 1 |
4690 | 16 |
6014
0d370ebc038a
(BSD_PGRPS): Add #undef.
Richard M. Stallman <rms@gnu.org>
parents:
5938
diff
changeset
|
17 #define HAVE_UNION_WAIT |
0d370ebc038a
(BSD_PGRPS): Add #undef.
Richard M. Stallman <rms@gnu.org>
parents:
5938
diff
changeset
|
18 |
4690 | 19 #define SIGNALS_VIA_CHARACTERS |
20 | |
21 #define PENDING_OUTPUT_COUNT(FILE) ((FILE)->_p - (FILE)->_bf._base) | |
22 | |
6014
0d370ebc038a
(BSD_PGRPS): Add #undef.
Richard M. Stallman <rms@gnu.org>
parents:
5938
diff
changeset
|
23 /* netbsd uses OXTABS instead of the expected TAB3. */ |
6861 | 24 #define TABDLY OXTABS |
6014
0d370ebc038a
(BSD_PGRPS): Add #undef.
Richard M. Stallman <rms@gnu.org>
parents:
5938
diff
changeset
|
25 #define TAB3 OXTABS |
0d370ebc038a
(BSD_PGRPS): Add #undef.
Richard M. Stallman <rms@gnu.org>
parents:
5938
diff
changeset
|
26 |
4690 | 27 #define A_TEXT_OFFSET(x) (sizeof (struct exec)) |
28 #define A_TEXT_SEEK(hdr) (N_TXTOFF(hdr) + A_TEXT_OFFSET(hdr)) | |
29 | |
6014
0d370ebc038a
(BSD_PGRPS): Add #undef.
Richard M. Stallman <rms@gnu.org>
parents:
5938
diff
changeset
|
30 #define HAVE_TERMIOS |
0d370ebc038a
(BSD_PGRPS): Add #undef.
Richard M. Stallman <rms@gnu.org>
parents:
5938
diff
changeset
|
31 #define NO_TERMIO |
0d370ebc038a
(BSD_PGRPS): Add #undef.
Richard M. Stallman <rms@gnu.org>
parents:
5938
diff
changeset
|
32 |
4690 | 33 #define LIBS_DEBUG |
5902
916cd5156aed
Use -ltermcap, not Emacs's own version. #undef symbols used for
Charles Hannum <mycroft@gnu.org>
parents:
5901
diff
changeset
|
34 /* -lutil is not needed for NetBSD >0.9. */ |
11336 | 35 /* #define LIBS_SYSTEM -lutil */ |
5902
916cd5156aed
Use -ltermcap, not Emacs's own version. #undef symbols used for
Charles Hannum <mycroft@gnu.org>
parents:
5901
diff
changeset
|
36 #define LIBS_TERMCAP -ltermcap |
5901
0377de94724d
(SYSV_SYSTEM_DIR): Define.
Roland McGrath <roland@gnu.org>
parents:
5334
diff
changeset
|
37 |
6014
0d370ebc038a
(BSD_PGRPS): Add #undef.
Richard M. Stallman <rms@gnu.org>
parents:
5938
diff
changeset
|
38 #define NEED_ERRNO |
5901
0377de94724d
(SYSV_SYSTEM_DIR): Define.
Roland McGrath <roland@gnu.org>
parents:
5334
diff
changeset
|
39 #define SYSV_SYSTEM_DIR |
0377de94724d
(SYSV_SYSTEM_DIR): Define.
Roland McGrath <roland@gnu.org>
parents:
5334
diff
changeset
|
40 |
6014
0d370ebc038a
(BSD_PGRPS): Add #undef.
Richard M. Stallman <rms@gnu.org>
parents:
5938
diff
changeset
|
41 /* Netbsd has POSIX-style pgrp behavior. */ |
0d370ebc038a
(BSD_PGRPS): Add #undef.
Richard M. Stallman <rms@gnu.org>
parents:
5938
diff
changeset
|
42 #undef BSD_PGRPS |
0d370ebc038a
(BSD_PGRPS): Add #undef.
Richard M. Stallman <rms@gnu.org>
parents:
5938
diff
changeset
|
43 |
11705
29064b5e5398
(GETPGRP_NO_ARG): Defined.
Richard M. Stallman <rms@gnu.org>
parents:
11336
diff
changeset
|
44 #define GETPGRP_NO_ARG |
29064b5e5398
(GETPGRP_NO_ARG): Defined.
Richard M. Stallman <rms@gnu.org>
parents:
11336
diff
changeset
|
45 |
20032
8b3f96c4cad1
(LD_SWITCH_SYSTEM): Use -Wl,-rpath if __ELF__.
Richard M. Stallman <rms@gnu.org>
parents:
18121
diff
changeset
|
46 #if !defined (NO_SHARED_LIBS) && ! defined (__ELF__) |
5901
0377de94724d
(SYSV_SYSTEM_DIR): Define.
Roland McGrath <roland@gnu.org>
parents:
5334
diff
changeset
|
47 /* These definitions should work for either dynamic or static linking, |
0377de94724d
(SYSV_SYSTEM_DIR): Define.
Roland McGrath <roland@gnu.org>
parents:
5334
diff
changeset
|
48 whichever is the default for `cc -nostdlib'. */ |
5938
db25cb887e22
(BROKEN_START, TEXT_START): Don't define.
Roland McGrath <roland@gnu.org>
parents:
5919
diff
changeset
|
49 #define HAVE_TEXT_START /* No need to define `start_of_text'. */ |
5901
0377de94724d
(SYSV_SYSTEM_DIR): Define.
Roland McGrath <roland@gnu.org>
parents:
5334
diff
changeset
|
50 #define START_FILES pre-crt0.o /usr/lib/crt0.o |
5902
916cd5156aed
Use -ltermcap, not Emacs's own version. #undef symbols used for
Charles Hannum <mycroft@gnu.org>
parents:
5901
diff
changeset
|
51 #define UNEXEC unexsunos4.o |
5901
0377de94724d
(SYSV_SYSTEM_DIR): Define.
Roland McGrath <roland@gnu.org>
parents:
5334
diff
changeset
|
52 #define RUN_TIME_REMAP |
5902
916cd5156aed
Use -ltermcap, not Emacs's own version. #undef symbols used for
Charles Hannum <mycroft@gnu.org>
parents:
5901
diff
changeset
|
53 |
916cd5156aed
Use -ltermcap, not Emacs's own version. #undef symbols used for
Charles Hannum <mycroft@gnu.org>
parents:
5901
diff
changeset
|
54 /* Try to make this work for both 0.9 and >0.9. */ |
916cd5156aed
Use -ltermcap, not Emacs's own version. #undef symbols used for
Charles Hannum <mycroft@gnu.org>
parents:
5901
diff
changeset
|
55 #ifndef N_TRELOFF |
5901
0377de94724d
(SYSV_SYSTEM_DIR): Define.
Roland McGrath <roland@gnu.org>
parents:
5334
diff
changeset
|
56 #define N_PAGSIZ(x) __LDPGSZ |
0377de94724d
(SYSV_SYSTEM_DIR): Define.
Roland McGrath <roland@gnu.org>
parents:
5334
diff
changeset
|
57 #define N_BSSADDR(x) (N_ALIGN(x, N_DATADDR(x)+x.a_data)) |
0377de94724d
(SYSV_SYSTEM_DIR): Define.
Roland McGrath <roland@gnu.org>
parents:
5334
diff
changeset
|
58 #define N_TRELOFF(x) N_RELOFF(x) |
5902
916cd5156aed
Use -ltermcap, not Emacs's own version. #undef symbols used for
Charles Hannum <mycroft@gnu.org>
parents:
5901
diff
changeset
|
59 #endif |
26163 | 60 #endif /* not NO_SHARED_LIBS and not ELF */ |
61 | |
62 #if !defined (NO_SHARED_LIBS) && defined (__ELF__) | |
51878
aa3263cb4987
(START_FILES, LIB_STANDARD): Use START_FILES_1, END_FILES_1.
Richard M. Stallman <rms@gnu.org>
parents:
49600
diff
changeset
|
63 #define START_FILES pre-crt0.o /usr/lib/crt0.o START_FILES_1 /usr/lib/crtbegin.o |
26163 | 64 #define UNEXEC unexelf.o |
51878
aa3263cb4987
(START_FILES, LIB_STANDARD): Use START_FILES_1, END_FILES_1.
Richard M. Stallman <rms@gnu.org>
parents:
49600
diff
changeset
|
65 #define LIB_STANDARD -lgcc -lc -lgcc /usr/lib/crtend.o END_FILES_1 |
26163 | 66 #undef LIB_GCC |
67 #define LIB_GCC | |
68 #endif | |
6368
f18c8a4f7125
(LOCALTIME_CACHE): Define this symbol.
Karl Heuer <kwzh@gnu.org>
parents:
6014
diff
changeset
|
69 |
51878
aa3263cb4987
(START_FILES, LIB_STANDARD): Use START_FILES_1, END_FILES_1.
Richard M. Stallman <rms@gnu.org>
parents:
49600
diff
changeset
|
70 #ifdef HAVE_CRTIN |
aa3263cb4987
(START_FILES, LIB_STANDARD): Use START_FILES_1, END_FILES_1.
Richard M. Stallman <rms@gnu.org>
parents:
49600
diff
changeset
|
71 #define START_FILES_1 /usr/lib/crti.o |
aa3263cb4987
(START_FILES, LIB_STANDARD): Use START_FILES_1, END_FILES_1.
Richard M. Stallman <rms@gnu.org>
parents:
49600
diff
changeset
|
72 #define END_FILES_1 /usr/lib/crtn.o |
51903
707ddd673f01
(START_FILES_1, END_FILES_1): Always define them.
Richard M. Stallman <rms@gnu.org>
parents:
51878
diff
changeset
|
73 #else |
707ddd673f01
(START_FILES_1, END_FILES_1): Always define them.
Richard M. Stallman <rms@gnu.org>
parents:
51878
diff
changeset
|
74 #define START_FILES_1 |
707ddd673f01
(START_FILES_1, END_FILES_1): Always define them.
Richard M. Stallman <rms@gnu.org>
parents:
51878
diff
changeset
|
75 #define END_FILES_1 |
51878
aa3263cb4987
(START_FILES, LIB_STANDARD): Use START_FILES_1, END_FILES_1.
Richard M. Stallman <rms@gnu.org>
parents:
49600
diff
changeset
|
76 #endif |
aa3263cb4987
(START_FILES, LIB_STANDARD): Use START_FILES_1, END_FILES_1.
Richard M. Stallman <rms@gnu.org>
parents:
49600
diff
changeset
|
77 |
6388
c82a7e9ae93b
(LD_SWITCH_SYSTEM, HAVE_WAIT_HEADER): Define these.
Karl Heuer <kwzh@gnu.org>
parents:
6368
diff
changeset
|
78 #define HAVE_WAIT_HEADER |
10714
a383e6129216
(WAIT_USE_INT): Defined.
Richard M. Stallman <rms@gnu.org>
parents:
8916
diff
changeset
|
79 #define WAIT_USE_INT |
11336 | 80 |
12534
3f869873946a
(AMPERSAND_FULL_NAME): Defined.
Karl Heuer <kwzh@gnu.org>
parents:
11705
diff
changeset
|
81 #define AMPERSAND_FULL_NAME |
20032
8b3f96c4cad1
(LD_SWITCH_SYSTEM): Use -Wl,-rpath if __ELF__.
Richard M. Stallman <rms@gnu.org>
parents:
18121
diff
changeset
|
82 |
8b3f96c4cad1
(LD_SWITCH_SYSTEM): Use -Wl,-rpath if __ELF__.
Richard M. Stallman <rms@gnu.org>
parents:
18121
diff
changeset
|
83 #ifdef __ELF__ |
8b3f96c4cad1
(LD_SWITCH_SYSTEM): Use -Wl,-rpath if __ELF__.
Richard M. Stallman <rms@gnu.org>
parents:
18121
diff
changeset
|
84 /* Here is how to find X Windows. LD_SWITCH_X_SITE_AUX gives an -R option |
8b3f96c4cad1
(LD_SWITCH_SYSTEM): Use -Wl,-rpath if __ELF__.
Richard M. Stallman <rms@gnu.org>
parents:
18121
diff
changeset
|
85 says where to find X windows at run time. We convert it to a -rpath option |
8b3f96c4cad1
(LD_SWITCH_SYSTEM): Use -Wl,-rpath if __ELF__.
Richard M. Stallman <rms@gnu.org>
parents:
18121
diff
changeset
|
86 which is what OSF1 uses. */ |
39331 | 87 #define LD_SWITCH_SYSTEM_tmp `echo LD_SWITCH_X_SITE_AUX | sed -e 's/-R/-Wl,-rpath,/'` |
45600
5265807751c9
Include /usr/pkg in the run time shared library path.
Eli Zaretskii <eliz@gnu.org>
parents:
39349
diff
changeset
|
88 #define LD_SWITCH_SYSTEM LD_SWITCH_SYSTEM_tmp -Wl,-rpath,/usr/pkg/lib -L/usr/pkg/lib -Wl,-rpath,/usr/local/lib -L/usr/local/lib |
39331 | 89 |
90 /* The following is needed to make `configure' find Xpm, Xaw3d and | |
91 image include and library files if using /usr/bin/gcc. That | |
92 compiler seems to be modified to not find headers in | |
93 /usr/local/include or libs in /usr/local/lib by default. */ | |
94 | |
39349
0ad6378e66d4
(LD_SWITCH_SYSTEM, C_SWITCH_SYSTEM): Add /usr/pkg.
Gerd Moellmann <gerd@gnu.org>
parents:
39331
diff
changeset
|
95 #define C_SWITCH_SYSTEM -I/usr/X11R6/include -I/usr/pkg/include -I/usr/local/include -L/usr/pkg/lib -L/usr/local/lib |
39331 | 96 |
51878
aa3263cb4987
(START_FILES, LIB_STANDARD): Use START_FILES_1, END_FILES_1.
Richard M. Stallman <rms@gnu.org>
parents:
49600
diff
changeset
|
97 /* Link temacs with -z nocombreloc so that unexec works right, whether or |
aa3263cb4987
(START_FILES, LIB_STANDARD): Use START_FILES_1, END_FILES_1.
Richard M. Stallman <rms@gnu.org>
parents:
49600
diff
changeset
|
98 not -z combreloc is the default. GNU ld ignores unknown -z KEYWORD |
aa3263cb4987
(START_FILES, LIB_STANDARD): Use START_FILES_1, END_FILES_1.
Richard M. Stallman <rms@gnu.org>
parents:
49600
diff
changeset
|
99 switches, so this also works with older versions that don't implement |
aa3263cb4987
(START_FILES, LIB_STANDARD): Use START_FILES_1, END_FILES_1.
Richard M. Stallman <rms@gnu.org>
parents:
49600
diff
changeset
|
100 -z combreloc. */ |
aa3263cb4987
(START_FILES, LIB_STANDARD): Use START_FILES_1, END_FILES_1.
Richard M. Stallman <rms@gnu.org>
parents:
49600
diff
changeset
|
101 |
51975 | 102 #define LD_SWITCH_SYSTEM_TEMACS -Wl,-z,nocombreloc |
51878
aa3263cb4987
(START_FILES, LIB_STANDARD): Use START_FILES_1, END_FILES_1.
Richard M. Stallman <rms@gnu.org>
parents:
49600
diff
changeset
|
103 |
20032
8b3f96c4cad1
(LD_SWITCH_SYSTEM): Use -Wl,-rpath if __ELF__.
Richard M. Stallman <rms@gnu.org>
parents:
18121
diff
changeset
|
104 #endif /* __ELF__ */ |
21475 | 105 |
106 /* On post 1.3 releases of NetBSD, gcc -nostdlib also clears | |
107 the library search parth, i.e. it won't search /usr/lib | |
108 for libc and friends. Using -nostartfiles instead avoids | |
109 this problem, and will also work on earlier NetBSD releases */ | |
110 | |
111 #define LINKER $(CC) -nostartfiles | |
25032 | 112 |
113 #define NARROWPROTO 1 | |
30079
1572612184fc
Sound support for NetBSD through "Linux emulation" support:
Ken Raeburn <raeburn@raeburn.org>
parents:
29430
diff
changeset
|
114 |
1572612184fc
Sound support for NetBSD through "Linux emulation" support:
Ken Raeburn <raeburn@raeburn.org>
parents:
29430
diff
changeset
|
115 #define DEFAULT_SOUND_DEVICE "/dev/audio" |
31332 | 116 |
117 /* Greg A. Woods <woods@weird.com> says we must include signal.h | |
118 before syssignal.h is included, to work around interface conflicts | |
119 that are handled with CPP __RENAME() macro in signal.h. */ | |
120 | |
31524
3935d834ff04
s/netbsd.h: NO_C_SOURCE->NOT_C_CODE
Ken Raeburn <raeburn@raeburn.org>
parents:
31332
diff
changeset
|
121 #ifndef NOT_C_CODE |
31332 | 122 #include <signal.h> |
123 #endif | |
124 | |
125 /* Don't close pty in process.c to make it as controlling terminal. | |
126 It is already a controlling terminal of subprocess, because we did | |
127 ioctl TIOCSCTTY. */ | |
128 | |
129 #define DONT_REOPEN_PTY | |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
45600
diff
changeset
|
130 |
31332 | 131 /* Tell that garbage collector that setjmp is known to save all |
132 registers relevant for conservative garbage collection in the | |
133 jmp_buf. */ | |
134 | |
135 #define GC_SETJMP_WORKS 1 | |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
45600
diff
changeset
|
136 |
31332 | 137 /* Use the GC_MAKE_GCPROS_NOOPS (see lisp.h) method. */ |
138 | |
34472
76076c5b2009
(GC_MARK_STACK): Use GC_MAKE_GCPROS_NOOPS instead of `1'.
Gerd Moellmann <gerd@gnu.org>
parents:
31524
diff
changeset
|
139 #define GC_MARK_STACK GC_MAKE_GCPROS_NOOPS |
31332 | 140 |