Mercurial > emacs
comparison src/s/gnu-linux.h @ 14775:f4cc1bc9ec2c
(TERMINFO): Define, if HAVE_NCURSES.
(LINUX_SIGIO_DOES_WORK): Maybe define, based on Linux vers.
[LINUX_SIGIO_DOES_WORK]: Don't undef SIGIO, SIGPOLL, SIGPOLL.
Do define INTERRUPT_INPUT.
| author | Richard M. Stallman <rms@gnu.org> |
|---|---|
| date | Wed, 06 Mar 1996 19:20:09 +0000 |
| parents | ee40177f6c68 |
| children | 658f41757279 |
comparison
equal
deleted
inserted
replaced
| 14774:6ad33cc68905 | 14775:f4cc1bc9ec2c |
|---|---|
| 1 /* This file is the configuration file for GNU/Linux operating systems. | 1 /* This file is the configuration file for GNU/Linux operating systems. |
| 2 Copyright (C) 1985, 1986, 1992, 1994 Free Software Foundation, Inc. | 2 Copyright (C) 1985, 1986, 1992, 1994, 1996 Free Software Foundation, Inc. |
| 3 | 3 |
| 4 This file is part of GNU Emacs. | 4 This file is part of GNU Emacs. |
| 5 | 5 |
| 6 GNU Emacs is free software; you can redistribute it and/or modify | 6 GNU Emacs is free software; you can redistribute it and/or modify |
| 7 it under the terms of the GNU General Public License as published by | 7 it under the terms of the GNU General Public License as published by |
| 35 /* SYSTEM_TYPE should indicate the kind of system you are using. | 35 /* SYSTEM_TYPE should indicate the kind of system you are using. |
| 36 It sets the Lisp variable system-type. */ | 36 It sets the Lisp variable system-type. */ |
| 37 | 37 |
| 38 #define SYSTEM_TYPE "linux" /* All the best software is free. */ | 38 #define SYSTEM_TYPE "linux" /* All the best software is free. */ |
| 39 | 39 |
| 40 /* Emacs can read input using SIGIO and buffering characters itself, | 40 /* Check the version number of Linux--if it is at least 1.2.0, |
| 41 or using CBREAK mode and making C-g cause SIGINT. | 41 it is safe to use SIGIO. */ |
| 42 The choice is controlled by the variable interrupt_input. | 42 #ifndef NOT_C_CODE |
| 43 Define INTERRUPT_INPUT to make interrupt_input = 1 the default (use SIGIO) | 43 #ifdef emacs |
| 44 | 44 #include <linux/version.h> |
| 45 SIGIO can be used only on systems that implement it (4.2 and 4.3). | 45 |
| 46 CBREAK mode has two disadvantages | 46 #if LINUX_VERSION_CODE > 0x10200 |
| 47 1) At least in 4.2, it is impossible to handle the Meta key properly. | 47 #define LINUX_SIGIO_DOES_WORK |
| 48 I hear that in system V this problem does not exist. | 48 #endif |
| 49 2) Control-G causes output to be discarded. | 49 #endif |
| 50 I do not know whether this can be fixed in system V. | 50 #endif |
| 51 | |
| 52 Another method of doing input is planned but not implemented. | |
| 53 It would have Emacs fork off a separate process | |
| 54 to read the input and send it to the true Emacs process | |
| 55 through a pipe. | |
| 56 */ | |
| 57 | |
| 58 /* There have been suggestions made to add SIGIO to Linux. If this | |
| 59 is done, you may, at your discretion, uncomment the line below. | |
| 60 */ | |
| 61 | |
| 62 /* #define INTERRUPT_INPUT */ | |
| 63 | 51 |
| 64 /* Letter to use in finding device name of first pty, | 52 /* Letter to use in finding device name of first pty, |
| 65 if system supports pty's. 'p' means it is /dev/ptyp0 */ | 53 if system supports pty's. 'p' means it is /dev/ptyp0 */ |
| 66 | 54 |
| 67 #define FIRST_PTY_LETTER 'p' | 55 #define FIRST_PTY_LETTER 'p' |
| 167 #endif | 155 #endif |
| 168 | 156 |
| 169 /* As of version 1.1.51, Linux does not actually implement SIGIO. */ | 157 /* As of version 1.1.51, Linux does not actually implement SIGIO. */ |
| 170 /* Here we assume that signal.h is already included. */ | 158 /* Here we assume that signal.h is already included. */ |
| 171 #ifdef emacs | 159 #ifdef emacs |
| 160 #ifdef LINUX_SIGIO_DOES_WORK | |
| 161 #define INTERRUPT_INPUT | |
| 162 #else | |
| 172 #undef SIGIO | 163 #undef SIGIO |
| 173 /* Some versions of Linux define SIGURG and SIGPOLL as aliases for SIGIO. | 164 /* Some versions of Linux define SIGURG and SIGPOLL as aliases for SIGIO. |
| 174 This prevents lossage in process.c. */ | 165 This prevents lossage in process.c. */ |
| 175 #undef SIGURG | 166 #undef SIGURG |
| 176 #undef SIGPOLL | 167 #undef SIGPOLL |
| 177 #endif | 168 #endif |
| 169 #endif | |
| 178 | 170 |
| 179 /* This is needed for sysdep.c */ | 171 /* This is needed for sysdep.c */ |
| 180 | 172 |
| 181 #define NO_SIOCTL_H /* don't have sioctl.h */ | 173 #define NO_SIOCTL_H /* don't have sioctl.h */ |
| 182 | 174 |
| 224 #define C_SWITCH_SYSTEM -D_BSD_SOURCE | 216 #define C_SWITCH_SYSTEM -D_BSD_SOURCE |
| 225 #endif | 217 #endif |
| 226 | 218 |
| 227 /* Paul Abrahams <abrahams@equinox.shaysnet.com> says this is needed. */ | 219 /* Paul Abrahams <abrahams@equinox.shaysnet.com> says this is needed. */ |
| 228 #define LIB_MOTIF -lXm -lXpm | 220 #define LIB_MOTIF -lXm -lXpm |
| 221 | |
| 222 #ifdef HAVE_NCURSES | |
| 223 #define TERMINFO | |
| 224 #endif | |
| 229 | 225 |
| 230 #define HAVE_SYSVIPC | 226 #define HAVE_SYSVIPC |
| 231 | 227 |
| 232 #ifdef __ELF__ | 228 #ifdef __ELF__ |
| 233 #define UNEXEC unexelf.o | 229 #define UNEXEC unexelf.o |
