Mercurial > emacs
annotate src/s/gnu-linux.h @ 108481:d72eb924677c
Synch with Gnus trunk.
(mm-extern-url): Don't use mm-with-unibyte-current-buffer.
(mm-extern-cache-contents): Use with-current-buffer instead of
save-excursion + set-buffer.
author | Katsumi Yamaoka <yamaoka@jpl.org> |
---|---|
date | Tue, 11 May 2010 04:43:46 +0000 |
parents | 203aa49071bf |
children | ea7b1bab920f |
rev | line source |
---|---|
15478 | 1 /* This file is the configuration file for Linux-based GNU systems |
108278
9c003610b6fc
Move LD_SWITCH_SYSTEM from cpp to configure.
Glenn Morris <rgm@gnu.org>
parents:
108274
diff
changeset
|
2 |
9c003610b6fc
Move LD_SWITCH_SYSTEM from cpp to configure.
Glenn Morris <rgm@gnu.org>
parents:
108274
diff
changeset
|
3 Copyright (C) 1985, 1986, 1992, 1994, 1996, 1999, 2001, 2002, 2003, 2004, |
9c003610b6fc
Move LD_SWITCH_SYSTEM from cpp to configure.
Glenn Morris <rgm@gnu.org>
parents:
108274
diff
changeset
|
4 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. |
2915 | 5 |
6 This file is part of GNU Emacs. | |
7 | |
94715
1f134b61867c
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
91723
diff
changeset
|
8 GNU Emacs is free software: you can redistribute it and/or modify |
2915 | 9 it under the terms of the GNU General Public License as published by |
94715
1f134b61867c
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
91723
diff
changeset
|
10 the Free Software Foundation, either version 3 of the License, or |
1f134b61867c
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
91723
diff
changeset
|
11 (at your option) any later version. |
2915 | 12 |
13 GNU Emacs is distributed in the hope that it will be useful, | |
14 but WITHOUT ANY WARRANTY; without even the implied warranty of | |
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
16 GNU General Public License for more details. | |
17 | |
18 You should have received a copy of the GNU General Public License | |
94715
1f134b61867c
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
91723
diff
changeset
|
19 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ |
2915 | 20 |
2940
3c7c3bd60e4f
* s/linux.h: Remove copyright notices by Michael K. Johnson and
Jim Blandy <jimb@redhat.com>
parents:
2916
diff
changeset
|
21 /* This file was put together by Michael K. Johnson and Rik Faith. */ |
3c7c3bd60e4f
* s/linux.h: Remove copyright notices by Michael K. Johnson and
Jim Blandy <jimb@redhat.com>
parents:
2916
diff
changeset
|
22 |
2915 | 23 |
24 /* | |
25 * Define symbols to identify the version of Unix this is. | |
26 * Define all the symbols that apply correctly. | |
27 */ | |
28 | |
29 #define USG | |
41968 | 30 #define GNU_LINUX |
2915 | 31 |
32 /* SYSTEM_TYPE should indicate the kind of system you are using. | |
33 It sets the Lisp variable system-type. */ | |
34 | |
15478 | 35 #define SYSTEM_TYPE "gnu/linux" /* All the best software is free. */ |
2915 | 36 |
14775
f4cc1bc9ec2c
(TERMINFO): Define, if HAVE_NCURSES.
Richard M. Stallman <rms@gnu.org>
parents:
14186
diff
changeset
|
37 #ifndef NOT_C_CODE |
f4cc1bc9ec2c
(TERMINFO): Define, if HAVE_NCURSES.
Richard M. Stallman <rms@gnu.org>
parents:
14186
diff
changeset
|
38 #ifdef emacs |
14839
bc1d2478d392
Test HAVE_LINUX_VERSION_H, not HAVE_VERSION_H.
Richard M. Stallman <rms@gnu.org>
parents:
14824
diff
changeset
|
39 #ifdef HAVE_LINUX_VERSION_H |
14775
f4cc1bc9ec2c
(TERMINFO): Define, if HAVE_NCURSES.
Richard M. Stallman <rms@gnu.org>
parents:
14186
diff
changeset
|
40 #include <linux/version.h> |
2915 | 41 |
71477
eb1fe905e1f8
(SIGNALS_VIA_CHARACTERS): Define for Linux kernel
Kim F. Storm <storm@cua.dk>
parents:
68651
diff
changeset
|
42 #if LINUX_VERSION_CODE >= 0x20400 |
96595 | 43 /* 21 Jun 06: Eric Hanchrow <offby1@blarg.net> says this works. */ |
44 #define SIGNALS_VIA_CHARACTERS | |
71477
eb1fe905e1f8
(SIGNALS_VIA_CHARACTERS): Define for Linux kernel
Kim F. Storm <storm@cua.dk>
parents:
68651
diff
changeset
|
45 #endif /* LINUX_VERSION_CODE >= 0x20400 */ |
14839
bc1d2478d392
Test HAVE_LINUX_VERSION_H, not HAVE_VERSION_H.
Richard M. Stallman <rms@gnu.org>
parents:
14824
diff
changeset
|
46 #endif /* HAVE_LINUX_VERSION_H */ |
14824
f56bb68b6903
(LINUX_SIGIO_DOES_WORK): Define only if HAVE_VERSION_H.
Richard M. Stallman <rms@gnu.org>
parents:
14777
diff
changeset
|
47 #endif /* emacs */ |
f56bb68b6903
(LINUX_SIGIO_DOES_WORK): Define only if HAVE_VERSION_H.
Richard M. Stallman <rms@gnu.org>
parents:
14777
diff
changeset
|
48 #endif /* NOT_C_CODE */ |
2915 | 49 |
29032
659202362f2b
(UNIX98_PTYS) [HAVE_GRANDPT]: Define.
Gerd Moellmann <gerd@gnu.org>
parents:
28378
diff
changeset
|
50 #if defined HAVE_GRANTPT |
659202362f2b
(UNIX98_PTYS) [HAVE_GRANDPT]: Define.
Gerd Moellmann <gerd@gnu.org>
parents:
28378
diff
changeset
|
51 #define UNIX98_PTYS |
659202362f2b
(UNIX98_PTYS) [HAVE_GRANDPT]: Define.
Gerd Moellmann <gerd@gnu.org>
parents:
28378
diff
changeset
|
52 |
659202362f2b
(UNIX98_PTYS) [HAVE_GRANDPT]: Define.
Gerd Moellmann <gerd@gnu.org>
parents:
28378
diff
changeset
|
53 /* Run only once. We need a `for'-loop because the code uses |
659202362f2b
(UNIX98_PTYS) [HAVE_GRANDPT]: Define.
Gerd Moellmann <gerd@gnu.org>
parents:
28378
diff
changeset
|
54 `continue'. */ |
659202362f2b
(UNIX98_PTYS) [HAVE_GRANDPT]: Define.
Gerd Moellmann <gerd@gnu.org>
parents:
28378
diff
changeset
|
55 |
659202362f2b
(UNIX98_PTYS) [HAVE_GRANDPT]: Define.
Gerd Moellmann <gerd@gnu.org>
parents:
28378
diff
changeset
|
56 #define PTY_ITERATION for (i = 0; i < 1; i++) |
659202362f2b
(UNIX98_PTYS) [HAVE_GRANDPT]: Define.
Gerd Moellmann <gerd@gnu.org>
parents:
28378
diff
changeset
|
57 |
659202362f2b
(UNIX98_PTYS) [HAVE_GRANDPT]: Define.
Gerd Moellmann <gerd@gnu.org>
parents:
28378
diff
changeset
|
58 #ifdef HAVE_GETPT |
659202362f2b
(UNIX98_PTYS) [HAVE_GRANDPT]: Define.
Gerd Moellmann <gerd@gnu.org>
parents:
28378
diff
changeset
|
59 #define PTY_NAME_SPRINTF |
659202362f2b
(UNIX98_PTYS) [HAVE_GRANDPT]: Define.
Gerd Moellmann <gerd@gnu.org>
parents:
28378
diff
changeset
|
60 #define PTY_OPEN fd = getpt () |
659202362f2b
(UNIX98_PTYS) [HAVE_GRANDPT]: Define.
Gerd Moellmann <gerd@gnu.org>
parents:
28378
diff
changeset
|
61 #else /* not HAVE_GETPT */ |
659202362f2b
(UNIX98_PTYS) [HAVE_GRANDPT]: Define.
Gerd Moellmann <gerd@gnu.org>
parents:
28378
diff
changeset
|
62 #define PTY_NAME_SPRINTF strcpy (pty_name, "/dev/ptmx"); |
659202362f2b
(UNIX98_PTYS) [HAVE_GRANDPT]: Define.
Gerd Moellmann <gerd@gnu.org>
parents:
28378
diff
changeset
|
63 #endif /* not HAVE_GETPT */ |
659202362f2b
(UNIX98_PTYS) [HAVE_GRANDPT]: Define.
Gerd Moellmann <gerd@gnu.org>
parents:
28378
diff
changeset
|
64 |
659202362f2b
(UNIX98_PTYS) [HAVE_GRANDPT]: Define.
Gerd Moellmann <gerd@gnu.org>
parents:
28378
diff
changeset
|
65 /* Note that grantpt and unlockpt may fork. We must block SIGCHLD to |
659202362f2b
(UNIX98_PTYS) [HAVE_GRANDPT]: Define.
Gerd Moellmann <gerd@gnu.org>
parents:
28378
diff
changeset
|
66 prevent sigchld_handler from intercepting the child's death. */ |
659202362f2b
(UNIX98_PTYS) [HAVE_GRANDPT]: Define.
Gerd Moellmann <gerd@gnu.org>
parents:
28378
diff
changeset
|
67 |
659202362f2b
(UNIX98_PTYS) [HAVE_GRANDPT]: Define.
Gerd Moellmann <gerd@gnu.org>
parents:
28378
diff
changeset
|
68 #define PTY_TTY_NAME_SPRINTF \ |
659202362f2b
(UNIX98_PTYS) [HAVE_GRANDPT]: Define.
Gerd Moellmann <gerd@gnu.org>
parents:
28378
diff
changeset
|
69 { \ |
659202362f2b
(UNIX98_PTYS) [HAVE_GRANDPT]: Define.
Gerd Moellmann <gerd@gnu.org>
parents:
28378
diff
changeset
|
70 char *ptyname; \ |
659202362f2b
(UNIX98_PTYS) [HAVE_GRANDPT]: Define.
Gerd Moellmann <gerd@gnu.org>
parents:
28378
diff
changeset
|
71 \ |
659202362f2b
(UNIX98_PTYS) [HAVE_GRANDPT]: Define.
Gerd Moellmann <gerd@gnu.org>
parents:
28378
diff
changeset
|
72 sigblock (sigmask (SIGCHLD)); \ |
659202362f2b
(UNIX98_PTYS) [HAVE_GRANDPT]: Define.
Gerd Moellmann <gerd@gnu.org>
parents:
28378
diff
changeset
|
73 if (grantpt (fd) == -1 || unlockpt (fd) == -1 \ |
659202362f2b
(UNIX98_PTYS) [HAVE_GRANDPT]: Define.
Gerd Moellmann <gerd@gnu.org>
parents:
28378
diff
changeset
|
74 || !(ptyname = ptsname(fd))) \ |
659202362f2b
(UNIX98_PTYS) [HAVE_GRANDPT]: Define.
Gerd Moellmann <gerd@gnu.org>
parents:
28378
diff
changeset
|
75 { \ |
659202362f2b
(UNIX98_PTYS) [HAVE_GRANDPT]: Define.
Gerd Moellmann <gerd@gnu.org>
parents:
28378
diff
changeset
|
76 sigunblock (sigmask (SIGCHLD)); \ |
659202362f2b
(UNIX98_PTYS) [HAVE_GRANDPT]: Define.
Gerd Moellmann <gerd@gnu.org>
parents:
28378
diff
changeset
|
77 close (fd); \ |
659202362f2b
(UNIX98_PTYS) [HAVE_GRANDPT]: Define.
Gerd Moellmann <gerd@gnu.org>
parents:
28378
diff
changeset
|
78 return -1; \ |
659202362f2b
(UNIX98_PTYS) [HAVE_GRANDPT]: Define.
Gerd Moellmann <gerd@gnu.org>
parents:
28378
diff
changeset
|
79 } \ |
659202362f2b
(UNIX98_PTYS) [HAVE_GRANDPT]: Define.
Gerd Moellmann <gerd@gnu.org>
parents:
28378
diff
changeset
|
80 strncpy (pty_name, ptyname, sizeof (pty_name)); \ |
659202362f2b
(UNIX98_PTYS) [HAVE_GRANDPT]: Define.
Gerd Moellmann <gerd@gnu.org>
parents:
28378
diff
changeset
|
81 pty_name[sizeof (pty_name) - 1] = 0; \ |
659202362f2b
(UNIX98_PTYS) [HAVE_GRANDPT]: Define.
Gerd Moellmann <gerd@gnu.org>
parents:
28378
diff
changeset
|
82 sigunblock (sigmask (SIGCHLD)); \ |
659202362f2b
(UNIX98_PTYS) [HAVE_GRANDPT]: Define.
Gerd Moellmann <gerd@gnu.org>
parents:
28378
diff
changeset
|
83 } |
659202362f2b
(UNIX98_PTYS) [HAVE_GRANDPT]: Define.
Gerd Moellmann <gerd@gnu.org>
parents:
28378
diff
changeset
|
84 |
35150 | 85 #else /* not HAVE_GRANTPT */ |
29032
659202362f2b
(UNIX98_PTYS) [HAVE_GRANDPT]: Define.
Gerd Moellmann <gerd@gnu.org>
parents:
28378
diff
changeset
|
86 |
2915 | 87 /* Letter to use in finding device name of first pty, |
29032
659202362f2b
(UNIX98_PTYS) [HAVE_GRANDPT]: Define.
Gerd Moellmann <gerd@gnu.org>
parents:
28378
diff
changeset
|
88 if system supports pty's. 'p' means it is /dev/ptyp0 */ |
2915 | 89 |
90 #define FIRST_PTY_LETTER 'p' | |
91 | |
96732
1e0b67e40d48
* systty.h: Remove code for Aix on 386, unsupported platform.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
96643
diff
changeset
|
92 #endif /* not HAVE_GRANTPT */ |
26212
539733154e0a
[HAVE_DEV_PTMX]: Redefine FIRST_PTY_LETTER to 'z'.
Gerd Moellmann <gerd@gnu.org>
parents:
26090
diff
changeset
|
93 |
29032
659202362f2b
(UNIX98_PTYS) [HAVE_GRANDPT]: Define.
Gerd Moellmann <gerd@gnu.org>
parents:
28378
diff
changeset
|
94 /* Define HAVE_TERMIOS if the system provides POSIX-style |
659202362f2b
(UNIX98_PTYS) [HAVE_GRANDPT]: Define.
Gerd Moellmann <gerd@gnu.org>
parents:
28378
diff
changeset
|
95 functions and macros for terminal control. */ |
2915 | 96 |
97 #define HAVE_TERMIOS | |
98 | |
29032
659202362f2b
(UNIX98_PTYS) [HAVE_GRANDPT]: Define.
Gerd Moellmann <gerd@gnu.org>
parents:
28378
diff
changeset
|
99 /* Define HAVE_PTYS if the system supports pty devices. */ |
2915 | 100 |
101 #define HAVE_PTYS | |
102 | |
3014
a416873d97e5
* s/linux.h (HAVE_DUP2, HAVE_ALLOCA_H): Deleted.
Jim Blandy <jimb@redhat.com>
parents:
2989
diff
changeset
|
103 #define HAVE_SOCKETS |
2915 | 104 |
105 /* Define this symbol if your system has the functions bcopy, etc. */ | |
106 #define BSTRING | |
107 | |
100565
dcc7f5970d5c
Reorganize implementation of Flist_system_processes and
Dan Nicolaescu <dann@ics.uci.edu>
parents:
98455
diff
changeset
|
108 /* This is used in list_system_processes. */ |
97225
3866542dcfee
(HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
Eli Zaretskii <eliz@gnu.org>
parents:
96985
diff
changeset
|
109 #define HAVE_PROCFS 1 |
3866542dcfee
(HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
Eli Zaretskii <eliz@gnu.org>
parents:
96985
diff
changeset
|
110 |
2915 | 111 |
112 /* Define CLASH_DETECTION if you want lock files to be written | |
113 so that Emacs can tell instantly when you try to modify | |
114 a file that someone else has modified in his Emacs. */ | |
7835
27ec793a0e99
(CLASH_DETECTION): Defined.
Richard M. Stallman <rms@gnu.org>
parents:
7703
diff
changeset
|
115 #define CLASH_DETECTION |
2915 | 116 |
117 /* Here, on a separate page, add any special hacks needed | |
118 to make Emacs work on this system. For example, | |
119 you might define certain system call names that don't | |
120 exist on your system, or that do different things on | |
121 your system and must be used only through an encapsulation | |
122 (Which you should place, by convention, in sysdep.c). */ | |
123 | |
14777 | 124 /* This is needed for dispnew.c:update_frame */ |
2915 | 125 |
5387
f99b0175322e
(PENDING_OUTPUT_COUNT): Two alternate definitions
Richard M. Stallman <rms@gnu.org>
parents:
5363
diff
changeset
|
126 #ifdef emacs |
8274
04eeb3ed2828
[emacs]: Include stdio.h.
Richard M. Stallman <rms@gnu.org>
parents:
7972
diff
changeset
|
127 #include <stdio.h> /* Get the definition of _IO_STDIO_H. */ |
11826
6197ce4cd509
Test _STDIO_USES_IOSTREAM as well as _IO_STDIO_H.
Karl Heuer <kwzh@gnu.org>
parents:
11549
diff
changeset
|
128 #if defined(_IO_STDIO_H) || defined(_STDIO_USES_IOSTREAM) |
5387
f99b0175322e
(PENDING_OUTPUT_COUNT): Two alternate definitions
Richard M. Stallman <rms@gnu.org>
parents:
5363
diff
changeset
|
129 /* new C libio names */ |
7555
85afced1519c
(GNU_LIBRARY_PENDING_OUTPUT_COUNT): Both definitions
Richard M. Stallman <rms@gnu.org>
parents:
7307
diff
changeset
|
130 #define GNU_LIBRARY_PENDING_OUTPUT_COUNT(FILE) \ |
5387
f99b0175322e
(PENDING_OUTPUT_COUNT): Two alternate definitions
Richard M. Stallman <rms@gnu.org>
parents:
5363
diff
changeset
|
131 ((FILE)->_IO_write_ptr - (FILE)->_IO_write_base) |
98455
876b289a899e
* gmalloc.c (__sbrk): Also define for uClibc.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
97225
diff
changeset
|
132 #elif defined (__UCLIBC__) |
876b289a899e
* gmalloc.c (__sbrk): Also define for uClibc.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
97225
diff
changeset
|
133 /* using the uClibc library */ |
876b289a899e
* gmalloc.c (__sbrk): Also define for uClibc.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
97225
diff
changeset
|
134 #define GNU_LIBRARY_PENDING_OUTPUT_COUNT(FILE) \ |
876b289a899e
* gmalloc.c (__sbrk): Also define for uClibc.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
97225
diff
changeset
|
135 ((FILE)->__bufpos - (FILE)->__bufstart) |
876b289a899e
* gmalloc.c (__sbrk): Also define for uClibc.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
97225
diff
changeset
|
136 #else /* !_IO_STDIO_H && ! __UCLIBC__ */ |
5387
f99b0175322e
(PENDING_OUTPUT_COUNT): Two alternate definitions
Richard M. Stallman <rms@gnu.org>
parents:
5363
diff
changeset
|
137 /* old C++ iostream names */ |
7555
85afced1519c
(GNU_LIBRARY_PENDING_OUTPUT_COUNT): Both definitions
Richard M. Stallman <rms@gnu.org>
parents:
7307
diff
changeset
|
138 #define GNU_LIBRARY_PENDING_OUTPUT_COUNT(FILE) \ |
5387
f99b0175322e
(PENDING_OUTPUT_COUNT): Two alternate definitions
Richard M. Stallman <rms@gnu.org>
parents:
5363
diff
changeset
|
139 ((FILE)->_pptr - (FILE)->_pbase) |
98455
876b289a899e
* gmalloc.c (__sbrk): Also define for uClibc.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
97225
diff
changeset
|
140 #endif /* !_IO_STDIO_H && ! __UCLIBC__ */ |
5387
f99b0175322e
(PENDING_OUTPUT_COUNT): Two alternate definitions
Richard M. Stallman <rms@gnu.org>
parents:
5363
diff
changeset
|
141 #endif /* emacs */ |
2915 | 142 |
12306
173396dad212
(LIB_GCC): Define here, overriding Makefile.in.in,
Richard M. Stallman <rms@gnu.org>
parents:
11828
diff
changeset
|
143 /* Ask GCC where to find libgcc.a. */ |
12314
b55e6abc0f0e
(LIB_GCC): Fix previous change.
Richard M. Stallman <rms@gnu.org>
parents:
12306
diff
changeset
|
144 #define LIB_GCC `$(CC) $(C_SWITCH_X_SITE) -print-libgcc-file-name` |
12306
173396dad212
(LIB_GCC): Define here, overriding Makefile.in.in,
Richard M. Stallman <rms@gnu.org>
parents:
11828
diff
changeset
|
145 |
2915 | 146 #ifdef emacs |
14775
f4cc1bc9ec2c
(TERMINFO): Define, if HAVE_NCURSES.
Richard M. Stallman <rms@gnu.org>
parents:
14186
diff
changeset
|
147 #define INTERRUPT_INPUT |
f4cc1bc9ec2c
(TERMINFO): Define, if HAVE_NCURSES.
Richard M. Stallman <rms@gnu.org>
parents:
14186
diff
changeset
|
148 #endif |
2915 | 149 |
150 #define SYSV_SYSTEM_DIR /* use dirent.h */ | |
151 | |
4825 | 152 #define POSIX /* affects getpagesize.h and systty.h */ |
2915 | 153 |
12314
b55e6abc0f0e
(LIB_GCC): Fix previous change.
Richard M. Stallman <rms@gnu.org>
parents:
12306
diff
changeset
|
154 #undef LIB_GCC |
11826
6197ce4cd509
Test _STDIO_USES_IOSTREAM as well as _IO_STDIO_H.
Karl Heuer <kwzh@gnu.org>
parents:
11549
diff
changeset
|
155 #define LIB_GCC |
3207
257a856de952
* s/linux.h (SIGNALS_VIA_CHARACTERS): Try this out for a bit.
Jim Blandy <jimb@redhat.com>
parents:
3154
diff
changeset
|
156 |
11826
6197ce4cd509
Test _STDIO_USES_IOSTREAM as well as _IO_STDIO_H.
Karl Heuer <kwzh@gnu.org>
parents:
11549
diff
changeset
|
157 #define UNEXEC unexelf.o |
8633
ef773dd417ea
Add LINUX_QMAGIC conditional.
Richard M. Stallman <rms@gnu.org>
parents:
8274
diff
changeset
|
158 |
12720
8033d2412068
(HAVE_XRMSETDATABASE): Define if not defined.
Richard M. Stallman <rms@gnu.org>
parents:
12314
diff
changeset
|
159 /* This is to work around mysterious gcc failures in some system versions. |
8033d2412068
(HAVE_XRMSETDATABASE): Define if not defined.
Richard M. Stallman <rms@gnu.org>
parents:
12314
diff
changeset
|
160 It is unlikely that Emacs changes will work around this problem; |
8033d2412068
(HAVE_XRMSETDATABASE): Define if not defined.
Richard M. Stallman <rms@gnu.org>
parents:
12314
diff
changeset
|
161 therefore, this should remain permanently. */ |
7703
2b7b11a5e1e6
(HAVE_XRMSETDATABASE): Define if not defined.
Richard M. Stallman <rms@gnu.org>
parents:
7632
diff
changeset
|
162 #ifndef HAVE_XRMSETDATABASE |
2b7b11a5e1e6
(HAVE_XRMSETDATABASE): Define if not defined.
Richard M. Stallman <rms@gnu.org>
parents:
7632
diff
changeset
|
163 #define HAVE_XRMSETDATABASE |
2b7b11a5e1e6
(HAVE_XRMSETDATABASE): Define if not defined.
Richard M. Stallman <rms@gnu.org>
parents:
7632
diff
changeset
|
164 #endif |
11549
bfb9b93ee7e9
(REGEXP_IN_LIBC): Defined.
Richard M. Stallman <rms@gnu.org>
parents:
11292
diff
changeset
|
165 |
25032 | 166 #define NARROWPROTO 1 |
167 | |
23974
dcc1ebab38c1
[DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
Richard M. Stallman <rms@gnu.org>
parents:
22229
diff
changeset
|
168 /* Use mmap directly for allocating larger buffers. */ |
dcc1ebab38c1
[DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
Richard M. Stallman <rms@gnu.org>
parents:
22229
diff
changeset
|
169 #ifdef DOUG_LEA_MALLOC |
dcc1ebab38c1
[DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
Richard M. Stallman <rms@gnu.org>
parents:
22229
diff
changeset
|
170 #undef REL_ALLOC |
dcc1ebab38c1
[DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
Richard M. Stallman <rms@gnu.org>
parents:
22229
diff
changeset
|
171 #endif |
28378
65fca17fb602
(GC_SETJMP_WORKS): Define for i386, sparc, m68k, alpha.
Dave Love <fx@gnu.org>
parents:
27679
diff
changeset
|
172 |
65fca17fb602
(GC_SETJMP_WORKS): Define for i386, sparc, m68k, alpha.
Dave Love <fx@gnu.org>
parents:
27679
diff
changeset
|
173 /* Tell that garbage collector that setjmp is known to save all |
65fca17fb602
(GC_SETJMP_WORKS): Define for i386, sparc, m68k, alpha.
Dave Love <fx@gnu.org>
parents:
27679
diff
changeset
|
174 registers relevant for conservative garbage collection in the |
65fca17fb602
(GC_SETJMP_WORKS): Define for i386, sparc, m68k, alpha.
Dave Love <fx@gnu.org>
parents:
27679
diff
changeset
|
175 jmp_buf. */ |
49413
8aaa2f3ae722
(GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
Dave Love <fx@gnu.org>
parents:
43162
diff
changeset
|
176 /* Not all the architectures are tested, but there are Debian packages |
8aaa2f3ae722
(GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
Dave Love <fx@gnu.org>
parents:
43162
diff
changeset
|
177 for SCM and/or Guile on them, so the technique must work. See also |
8aaa2f3ae722
(GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
Dave Love <fx@gnu.org>
parents:
43162
diff
changeset
|
178 comments in alloc.c concerning setjmp and gcc. Fixme: it's |
8aaa2f3ae722
(GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
Dave Love <fx@gnu.org>
parents:
43162
diff
changeset
|
179 probably safe to make this conditional just on GCC, except for ia64 |
8aaa2f3ae722
(GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
Dave Love <fx@gnu.org>
parents:
43162
diff
changeset
|
180 register window-flushing. */ |
33654 | 181 /* Don't use #cpu here since in newest development versions of GCC, |
182 we must call cpp with -traditional, and that disables #cpu. */ | |
183 | |
49413
8aaa2f3ae722
(GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
Dave Love <fx@gnu.org>
parents:
43162
diff
changeset
|
184 #if defined __i386__ || defined __sparc__ || defined __mc68000__ \ |
8aaa2f3ae722
(GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
Dave Love <fx@gnu.org>
parents:
43162
diff
changeset
|
185 || defined __alpha__ || defined __mips__ || defined __s390__ \ |
58594
f86ad7205885
Enable no-op gcpros on ia64.
Andreas Schwab <schwab@suse.de>
parents:
56501
diff
changeset
|
186 || defined __arm__ || defined __powerpc__ || defined __amd64__ \ |
103190
21a9a415c6d0
Make GCPROs and UNGCPRO no-ops also on SuperH.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents:
100951
diff
changeset
|
187 || defined __ia64__ || defined __sh__ |
28378
65fca17fb602
(GC_SETJMP_WORKS): Define for i386, sparc, m68k, alpha.
Dave Love <fx@gnu.org>
parents:
27679
diff
changeset
|
188 #define GC_SETJMP_WORKS 1 |
34470
286c73f656a1
(GC_MARK_STACK): Define as GC_MAKE_GCPROS_NOOPS.
Gerd Moellmann <gerd@gnu.org>
parents:
33654
diff
changeset
|
189 #define GC_MARK_STACK GC_MAKE_GCPROS_NOOPS |
43162
a62b272dc382
(GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
Andreas Schwab <schwab@suse.de>
parents:
43071
diff
changeset
|
190 #ifdef __mc68000__ |
a62b272dc382
(GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
Andreas Schwab <schwab@suse.de>
parents:
43071
diff
changeset
|
191 #define GC_LISP_OBJECT_ALIGNMENT 2 |
28378
65fca17fb602
(GC_SETJMP_WORKS): Define for i386, sparc, m68k, alpha.
Dave Love <fx@gnu.org>
parents:
27679
diff
changeset
|
192 #endif |
58594
f86ad7205885
Enable no-op gcpros on ia64.
Andreas Schwab <schwab@suse.de>
parents:
56501
diff
changeset
|
193 #ifdef __ia64__ |
f86ad7205885
Enable no-op gcpros on ia64.
Andreas Schwab <schwab@suse.de>
parents:
56501
diff
changeset
|
194 #define GC_MARK_SECONDARY_STACK() \ |
f86ad7205885
Enable no-op gcpros on ia64.
Andreas Schwab <schwab@suse.de>
parents:
56501
diff
changeset
|
195 do { \ |
f86ad7205885
Enable no-op gcpros on ia64.
Andreas Schwab <schwab@suse.de>
parents:
56501
diff
changeset
|
196 extern void *__libc_ia64_register_backing_store_base; \ |
f86ad7205885
Enable no-op gcpros on ia64.
Andreas Schwab <schwab@suse.de>
parents:
56501
diff
changeset
|
197 __builtin_ia64_flushrs (); \ |
f86ad7205885
Enable no-op gcpros on ia64.
Andreas Schwab <schwab@suse.de>
parents:
56501
diff
changeset
|
198 mark_memory (__libc_ia64_register_backing_store_base, \ |
74043
2bd7a6d6a83f
(GC_MARK_SECONDARY_STACK): Update call to
Andreas Schwab <schwab@suse.de>
parents:
73073
diff
changeset
|
199 __builtin_ia64_bsp (), 0); \ |
58594
f86ad7205885
Enable no-op gcpros on ia64.
Andreas Schwab <schwab@suse.de>
parents:
56501
diff
changeset
|
200 } while (0) |
f86ad7205885
Enable no-op gcpros on ia64.
Andreas Schwab <schwab@suse.de>
parents:
56501
diff
changeset
|
201 #endif |
43162
a62b272dc382
(GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
Andreas Schwab <schwab@suse.de>
parents:
43071
diff
changeset
|
202 #endif |
52401 | 203 |
204 /* arch-tag: 6244ea2a-abd0-44ec-abec-ff3dcc9afea9 | |
205 (do not change this comment) */ |