0
|
1 /* This file is the configuration file for the GNU/Linux operating system,
|
|
2 prior to version 1.1.56.
|
|
3 Copyright (C) 1985, 1986, 1992, 1994 Free Software Foundation, Inc.
|
|
4
|
|
5 This file is part of GNU Emacs.
|
|
6
|
|
7 GNU Emacs is free software; you can redistribute it and/or modify
|
|
8 it under the terms of the GNU General Public License as published by
|
|
9 the Free Software Foundation; either version 2, or (at your option)
|
|
10 any later version.
|
|
11
|
|
12 GNU Emacs is distributed in the hope that it will be useful,
|
|
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
15 GNU General Public License for more details.
|
|
16
|
|
17 You should have received a copy of the GNU General Public License
|
|
18 along with XEmacs; see the file COPYING. If not, write to
|
|
19 the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
|
20 Boston, MA 02111-1307, USA. */
|
|
21
|
|
22 /* Synched up with: FSF 19.31 (called, ahem ... lignux.h in FSF). */
|
|
23
|
|
24 /* This file was put together by Michael K. Johnson and Rik Faith. */
|
|
25
|
|
26 #define USG
|
|
27 #define LINUX
|
|
28
|
|
29 /* SYSTEM_TYPE should indicate the kind of system you are using.
|
|
30 It sets the Lisp variable system-type. */
|
|
31
|
|
32 #define SYSTEM_TYPE "linux" /* All the best software is free. */
|
|
33
|
|
34 #define FIRST_PTY_LETTER 'p'
|
|
35 #define HAVE_PTYS
|
|
36
|
|
37 /* define MAIL_USE_FLOCK if the mailer uses flock
|
|
38 to interlock access to /usr/spool/mail/$USER.
|
|
39 The alternative is that a lock file named
|
|
40 /usr/spool/mail/$USER.lock. */
|
|
41
|
|
42 /* Both are used in Linux by different mail programs. I assume that most
|
|
43 people are using newer mailers that have heard of flock. Change this
|
|
44 if you need to. */
|
|
45
|
24
|
46 /*#define MAIL_USE_FLOCK*/
|
0
|
47
|
|
48 /* Here, on a separate page, add any special hacks needed
|
|
49 to make Emacs work on this system. For example,
|
|
50 you might define certain system call names that don't
|
|
51 exist on your system, or that do different things on
|
|
52 your system and must be used only through an encapsulation
|
|
53 (Which you should place, by convention, in sysdep.c). */
|
|
54
|
|
55 /* On POSIX systems the system calls are interruptible by signals
|
|
56 that the user program has elected to catch. Thus the system call
|
|
57 must be retried in these cases. To handle this without massive
|
|
58 changes in the source code, we remap the standard system call names
|
|
59 to names for our own functions in sysdep.c that do the system call
|
|
60 with retries. */
|
|
61
|
|
62 #define INTERRUPTIBLE_OPEN
|
|
63 #define INTERRUPTIBLE_CLOSE
|
|
64 #define INTERRUPTIBLE_IO
|
|
65
|
|
66 /* This is needed for dispnew.c:update_frame */
|
|
67
|
163
|
68 #ifndef NOT_C_CODE
|
0
|
69 #include <stdio.h> /* Get the definition of _IO_STDIO_H. */
|
|
70 #if defined(_IO_STDIO_H) || defined(_STDIO_USES_IOSTREAM)
|
|
71 /* new C libio names */
|
|
72 #define GNU_LIBRARY_PENDING_OUTPUT_COUNT(FILE) \
|
|
73 ((FILE)->_IO_write_ptr - (FILE)->_IO_write_base)
|
|
74 #else /* !_IO_STDIO_H */
|
|
75 /* old C++ iostream names */
|
|
76 #define GNU_LIBRARY_PENDING_OUTPUT_COUNT(FILE) \
|
|
77 ((FILE)->_pptr - (FILE)->_pbase)
|
|
78 #endif /* !_IO_STDIO_H */
|
163
|
79 #endif /* C_CODE */
|
0
|
80
|
|
81 /* Ask GCC where to find libgcc.a. */
|
163
|
82 #define LIB_GCC "`$(CC) $(C_SWITCH_X_SITE) -print-libgcc-file-name`"
|
0
|
83
|
|
84 #ifndef __ELF__
|
|
85 /* Linux has crt0.o in a non-standard place */
|
163
|
86 #define START_FILES "pre-crt0.o /usr/lib/crt0.o"
|
0
|
87 #else
|
163
|
88 #define START_FILES "pre-crt0.o /usr/lib/crt1.o /usr/lib/crti.o"
|
0
|
89 #endif
|
|
90
|
|
91 /* This is needed for sysdep.c */
|
|
92
|
|
93 #define NO_SIOCTL_H /* don't have sioctl.h */
|
|
94
|
|
95 #define HAVE_SYS_SIGLIST
|
|
96 #define HAVE_WAIT_HEADER
|
|
97
|
|
98 #define POSIX /* affects getpagesize.h and systty.h */
|
|
99
|
|
100 /* Best not to include -lg, unless it is last on the command line */
|
|
101 #define LIBS_DEBUG
|
163
|
102 #define LIBS_TERMCAP "-ltermcap -lcurses" /* save some space with shared libs*/
|
0
|
103 #ifndef __ELF__
|
163
|
104 #define LIB_STANDARD "-lc" /* avoid -lPW */
|
0
|
105 #else
|
272
|
106 /*#undef LIB_GCC
|
|
107 #define LIB_GCC*/
|
163
|
108 #define LIB_STANDARD "-lgcc -lc -lgcc /usr/lib/crtn.o"
|
272
|
109 #define LINKER "$(CC) -nostdlib"
|
0
|
110 #endif
|
|
111
|
|
112 #ifdef TERM
|
163
|
113 #define LIBS_SYSTEM "-lclient"
|
|
114 #define C_SWITCH_SYSTEM "-I/usr/src/term"
|
0
|
115 #else
|
|
116 /* alane@wozzle.linet.org says that -lipc is not a separate library,
|
|
117 since libc-4.4.1. So -lipc was deleted. */
|
|
118 #define LIBS_SYSTEM
|
157
|
119 #endif
|
|
120
|
0
|
121 #ifdef __ELF__
|
157
|
122 #define UNEXEC "unexelf.o"
|
0
|
123 #define UNEXEC_USE_MAP_PRIVATE
|
272
|
124 #if 0
|
163
|
125 /* mrb - Ordinary link is simple and effective */
|
272
|
126 /* slb - Not any more ... :-( */
|
163
|
127 #define ORDINARY_LINK
|
|
128 #undef LIB_STANDARD
|
|
129 #undef START_FILES
|
|
130 #undef LIB_GCC
|
272
|
131 #endif
|
163
|
132 #endif /* __ELF__ */
|
0
|
133
|
|
134 #ifdef LINUX_QMAGIC
|
|
135
|
|
136 #define HAVE_TEXT_START
|
157
|
137 #define UNEXEC "unexsunos4.o"
|
0
|
138 #define N_PAGSIZ(x) PAGE_SIZE
|
|
139
|
|
140 #else /* not LINUX_QMAGIC */
|
|
141
|
|
142 #define A_TEXT_OFFSET(hdr) (N_MAGIC(hdr) == QMAGIC ? sizeof (struct exec) : 0)
|
|
143 #define A_TEXT_SEEK(hdr) (N_TXTOFF(hdr) + A_TEXT_OFFSET(hdr))
|
|
144 #define ADJUST_EXEC_HEADER \
|
|
145 unexec_text_start = N_TXTADDR(ohdr) + A_TEXT_OFFSET(ohdr)
|
|
146
|
|
147 #endif /* not LINUX_QMAGIC */
|
|
148
|
|
149 /* This is to work around mysterious gcc failures in some system versions.
|
|
150 It is unlikely that Emacs changes will work around this problem;
|
|
151 therefore, this should remain permanently. */
|
|
152 #ifndef HAVE_XRMSETDATABASE
|
|
153 #define HAVE_XRMSETDATABASE
|
|
154 #endif
|
|
155
|
|
156 /* The regex.o routines are a part of the GNU C-library used with Linux. */
|
|
157 /* However, sometimes they disagree with the src/regex.h that comes with Emacs,
|
|
158 and that can make trouble in etags.c because it gets the regex.h from Emacs
|
|
159 and the function definitions in libc. So turn this off. */
|
|
160 /* XEmacs: in any case, Mule uses different regex routines. */
|
|
161 /* #define REGEXP_IN_LIBC */
|
|
162
|
|
163 /* XEmacs change: the standard linux libc includes regex routines in
|
|
164 it. We have to use our own and have to avoid name conflicts. */
|
|
165
|
|
166 #define re_compile_pattern sys_re_compile_pattern
|
|
167 #define re_search sys_re_search
|
|
168 #define re_search_2 sys_re_search_2
|
|
169 #define re_match_2 sys_re_match_2
|
|
170 #define re_max_failures sys_re_max_failures
|
|
171 #define re_set_syntax sys_re_set_syntax
|
|
172 #define re_set_registers sys_re_set_registers
|
|
173 #define re_compile_fastmap sys_re_compile_fastmap
|
|
174 #define re_match sys_re_match
|
|
175 #define regcomp sys_regcomp
|
|
176 #define regexec sys_regexec
|
|
177 #define regerror sys_regerror
|
|
178 #define regfree sys_regfree
|
|
179
|
163
|
180 #if 0 /* mrb - if autoconf 2 is wrong, we should fix the test */
|
0
|
181 /* XEmacs: Damon Lipparelli says that he incorrectly gets this
|
|
182 defined on his system */
|
|
183 #undef GETTIMEOFDAY_ONE_ARGUMENT
|
163
|
184 #endif /* 0 */
|
0
|
185
|
|
186 /* Use BSD process groups, but use setpgid() instead of setpgrp() to
|
|
187 actually set a process group. */
|
|
188
|
|
189 /* XEmacs: removed setpgrp() definition because we use setpgid() when
|
|
190 it's available, and autodetect it. */
|