diff options
| author | Dan Nicolaescu | 2008-06-26 04:24:54 +0000 |
|---|---|---|
| committer | Dan Nicolaescu | 2008-06-26 04:24:54 +0000 |
| commit | f2a77c3a41744e43b52f0ac7a2c9bd7f8d406ae1 (patch) | |
| tree | 05d027376fd22d8624eefdd512362109f7b2389a /src | |
| parent | 3617b1eb8da69a836148741cd35a7d8ec59191af (diff) | |
| download | emacs-f2a77c3a41744e43b52f0ac7a2c9bd7f8d406ae1.tar.gz emacs-f2a77c3a41744e43b52f0ac7a2c9bd7f8d406ae1.zip | |
* unexnext.c:
* m/ews4800.h:
* m/hp9000s300.h:
* m/ibm370aix.h:
* m/mips-siemens.h:
* m/ncr386.h:
* m/next.h:
* m/pmax.h:
* m/powerpcle.h:
* m/tandem-s2.h:
* s/386bsd.h:
* s/bsd386.h:
* s/bsd4-1.h:
* s/bsd4-2.h:
* s/bsdos2-1.h:
* s/bsdos2.h:
* s/bsdos3.h:
* s/bsdos4.h:
* s/nextstep.h:
* s/ultrix4-3.h:
* s/usg5-0.h:
* s/usg5-2-2.h:
* s/usg5-2.h:
* s/usg5-4-3.h:
* s/ux4800.h:
* s/uxpds.h:
* s/uxpv.h: Remove support for obsolete systems.
* s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
Remove, insert contents in s/hpux-10.20.h
* s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
Remove, insert contents in s/aix-4.2.h
* s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
* s/bsd4-3.h: Rename to ..
* s/bsd-common.h: ... this.
* src/data.c:
* src/doc.c:
* src/ecrt0.c:
* src/emacs.c:
* src/fileio.c:
* src/floatfns.c:
* src/keyboard.c:
* src/mem-limits.h:
* src/print.c:
* src/process.c:
* src/sysdep.c:
* src/syssignal.h:
* src/systty.h:
* src/syswait.h:
* src/term.c:
* src/unexec.c:
* src/unexelf.c:
* src/unexhp9k800.c:
* src/m/hp800.h:
* src/m/ibmrs6000.h:
* src/m/mips.h:
* src/m/vax.h:
* src/s/darwin.h:
* src/s/freebsd.h:
* src/s/gnu.h:
* src/s/ms-w32.h:
* src/s/msdos.h:
* src/s/netbsd.h:
* src/s/template.h: Remove references to obsolete variables.
* Makefile.in: Add dependencies for all unexec files.
(admindir): Remove unused variable.
(UNEXEC_SRC): Remove references.
* config.nt: Remove reference to UNEXEC_SRC.
* lwlib.c: Remove references to obsolete variables.
* fakemail.c: Remove references to obsolete variables.
* os.texi: Remove references to obsolete systems.
* configure.in:
* configure: Remove references to obsolete systems.
Diffstat (limited to 'src')
73 files changed, 693 insertions, 4342 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index eea911d7a89..4450763e1a9 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,73 @@ | |||
| 1 | 2008-06-26 Dan Nicolaescu <dann@ics.uci.edu> | ||
| 2 | |||
| 3 | * unexnext.c: | ||
| 4 | * m/ews4800.h: | ||
| 5 | * m/hp9000s300.h: | ||
| 6 | * m/ibm370aix.h: | ||
| 7 | * m/mips-siemens.h: | ||
| 8 | * m/ncr386.h: | ||
| 9 | * m/next.h: | ||
| 10 | * m/pmax.h: | ||
| 11 | * m/powerpcle.h: | ||
| 12 | * m/tandem-s2.h: | ||
| 13 | * s/386bsd.h: | ||
| 14 | * s/bsd386.h: | ||
| 15 | * s/bsd4-1.h: | ||
| 16 | * s/bsd4-2.h: | ||
| 17 | * s/bsdos2-1.h: | ||
| 18 | * s/bsdos2.h: | ||
| 19 | * s/bsdos3.h: | ||
| 20 | * s/bsdos4.h: | ||
| 21 | * s/nextstep.h: | ||
| 22 | * s/ultrix4-3.h: | ||
| 23 | * s/usg5-0.h: | ||
| 24 | * s/usg5-2-2.h: | ||
| 25 | * s/usg5-2.h: | ||
| 26 | * s/usg5-4-3.h: | ||
| 27 | * s/ux4800.h: | ||
| 28 | * s/uxpds.h: | ||
| 29 | * s/uxpv.h: Remove support for obsolete systems. | ||
| 30 | * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h: | ||
| 31 | Remove, insert contents in s/hpux-10.20.h | ||
| 32 | * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h: | ||
| 33 | Remove, insert contents in s/aix-4.2.h | ||
| 34 | * s/usg5-3.h: Remove, insert contents in s/usg5-4.h. | ||
| 35 | * s/bsd4-3.h: Rename to .. | ||
| 36 | * s/bsd-common.h: ... this. | ||
| 37 | * src/data.c: | ||
| 38 | * src/doc.c: | ||
| 39 | * src/ecrt0.c: | ||
| 40 | * src/emacs.c: | ||
| 41 | * src/fileio.c: | ||
| 42 | * src/floatfns.c: | ||
| 43 | * src/keyboard.c: | ||
| 44 | * src/mem-limits.h: | ||
| 45 | * src/print.c: | ||
| 46 | * src/process.c: | ||
| 47 | * src/sysdep.c: | ||
| 48 | * src/syssignal.h: | ||
| 49 | * src/systty.h: | ||
| 50 | * src/syswait.h: | ||
| 51 | * src/term.c: | ||
| 52 | * src/unexec.c: | ||
| 53 | * src/unexelf.c: | ||
| 54 | * src/unexhp9k800.c: | ||
| 55 | * src/m/hp800.h: | ||
| 56 | * src/m/ibmrs6000.h: | ||
| 57 | * src/m/mips.h: | ||
| 58 | * src/m/vax.h: | ||
| 59 | * src/s/darwin.h: | ||
| 60 | * src/s/freebsd.h: | ||
| 61 | * src/s/gnu.h: | ||
| 62 | * src/s/ms-w32.h: | ||
| 63 | * src/s/msdos.h: | ||
| 64 | * src/s/netbsd.h: | ||
| 65 | * src/s/template.h: Remove references to obsolete variables. | ||
| 66 | |||
| 67 | * Makefile.in: Add dependencies for all unexec files. | ||
| 68 | (admindir): Remove unused variable. | ||
| 69 | (UNEXEC_SRC): Remove references. | ||
| 70 | |||
| 1 | 2008-06-25 Chong Yidong <cyd@stupidchicken.com> | 71 | 2008-06-25 Chong Yidong <cyd@stupidchicken.com> |
| 2 | 72 | ||
| 3 | * xfns.c (x_default_font_parameter): If Xft is available, first | 73 | * xfns.c (x_default_font_parameter): If Xft is available, first |
diff --git a/src/Makefile.in b/src/Makefile.in index 60aace0a53e..8acfa014f2b 100644 --- a/src/Makefile.in +++ b/src/Makefile.in | |||
| @@ -52,7 +52,6 @@ version=@version@ | |||
| 52 | LIBOBJS = @LIBOBJS@ | 52 | LIBOBJS = @LIBOBJS@ |
| 53 | 53 | ||
| 54 | lispsource = ${srcdir}/../lisp/ | 54 | lispsource = ${srcdir}/../lisp/ |
| 55 | admindir = $(srcdir)/../admin/ | ||
| 56 | libsrc = ../lib-src/ | 55 | libsrc = ../lib-src/ |
| 57 | etc = ../etc/ | 56 | etc = ../etc/ |
| 58 | oldXMenudir = ../oldXMenu/ | 57 | oldXMenudir = ../oldXMenu/ |
| @@ -94,11 +93,6 @@ SHELL=/bin/sh | |||
| 94 | do not let it interfere with this file. */ | 93 | do not let it interfere with this file. */ |
| 95 | #undef register | 94 | #undef register |
| 96 | 95 | ||
| 97 | /* On some systems we may not be able to use the system make command. */ | ||
| 98 | #ifdef MAKE_COMMAND | ||
| 99 | MAKE = MAKE_COMMAND | ||
| 100 | #endif | ||
| 101 | |||
| 102 | /* GNU libc requires ORDINARY_LINK so that its own crt0 is used. | 96 | /* GNU libc requires ORDINARY_LINK so that its own crt0 is used. |
| 103 | GNU/Linux is an exception because it uses a funny variant of GNU libc. */ | 97 | GNU/Linux is an exception because it uses a funny variant of GNU libc. */ |
| 104 | #ifdef __GNU_LIBRARY__ | 98 | #ifdef __GNU_LIBRARY__ |
| @@ -500,9 +494,6 @@ TEMACS_LDFLAGS = LD_SWITCH_SYSTEM LD_SWITCH_SYSTEM_TEMACS LD_SWITCH_MACHINE LD_S | |||
| 500 | #ifndef UNEXEC | 494 | #ifndef UNEXEC |
| 501 | #define UNEXEC unexec.o | 495 | #define UNEXEC unexec.o |
| 502 | #endif | 496 | #endif |
| 503 | #ifndef UNEXEC_SRC | ||
| 504 | #define UNEXEC_SRC unexec.c | ||
| 505 | #endif | ||
| 506 | 497 | ||
| 507 | INTERVAL_SRC = intervals.h composite.h | 498 | INTERVAL_SRC = intervals.h composite.h |
| 508 | 499 | ||
| @@ -1141,10 +1132,17 @@ terminal.o: terminal.c frame.h termchar.h termhooks.h charset.h coding.h \ | |||
| 1141 | terminfo.o: terminfo.c $(config_h) | 1132 | terminfo.o: terminfo.c $(config_h) |
| 1142 | tparam.o: tparam.c $(config_h) | 1133 | tparam.o: tparam.c $(config_h) |
| 1143 | undo.o: undo.c buffer.h commands.h window.h $(config_h) | 1134 | undo.o: undo.c buffer.h commands.h window.h $(config_h) |
| 1144 | /* This hack is to discard any space that cpp might put at the beginning | 1135 | unexaix.o: unexaix.c $(config_h) |
| 1145 | of UNEXEC when substituting it in. */ | 1136 | unexalpha.o: unexalpha.c $(config_h) |
| 1146 | UNEXEC_ALIAS=UNEXEC | 1137 | unexcw.o: unexcw.c $(config_h) |
| 1147 | $(UNEXEC_ALIAS): UNEXEC_SRC $(config_h) | 1138 | unexec.o: unexec.c $(config_h) |
| 1139 | unexelf.o: unexelf.c $(config_h) | ||
| 1140 | unexhp9k800.o: unexhp9k800.c $(config_h) | ||
| 1141 | unexmacosx.o: unexmacosx.c $(config_h) | ||
| 1142 | unexmips.o: unexmips.c $(config_h) | ||
| 1143 | unexnext.o: unexnext.c $(config_h) | ||
| 1144 | unexsol.o: unexsol.c $(config_h) | ||
| 1145 | unexw32.o: unexw32.c $(config_h) | ||
| 1148 | w16select.o: w16select.c dispextern.h frame.h blockinput.h atimer.h systime.h \ | 1146 | w16select.o: w16select.c dispextern.h frame.h blockinput.h atimer.h systime.h \ |
| 1149 | msdos.h buffer.h charset.h coding.h composite.h $(config_h) | 1147 | msdos.h buffer.h charset.h coding.h composite.h $(config_h) |
| 1150 | widget.o: widget.c xterm.h frame.h dispextern.h widgetprv.h \ | 1148 | widget.o: widget.c xterm.h frame.h dispextern.h widgetprv.h \ |
diff --git a/src/data.c b/src/data.c index a695c4d56b2..ab52c20c77f 100644 --- a/src/data.c +++ b/src/data.c | |||
| @@ -45,16 +45,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | |||
| 45 | #endif | 45 | #endif |
| 46 | #endif | 46 | #endif |
| 47 | 47 | ||
| 48 | /* Work around a problem that happens because math.h on hpux 7 | ||
| 49 | defines two static variables--which, in Emacs, are not really static, | ||
| 50 | because `static' is defined as nothing. The problem is that they are | ||
| 51 | here, in floatfns.c, and in lread.c. | ||
| 52 | These macros prevent the name conflict. */ | ||
| 53 | #if defined (HPUX) && !defined (HPUX8) | ||
| 54 | #define _MAXLDBL data_c_maxldbl | ||
| 55 | #define _NMAXLDBL data_c_nmaxldbl | ||
| 56 | #endif | ||
| 57 | |||
| 58 | #include <math.h> | 48 | #include <math.h> |
| 59 | 49 | ||
| 60 | #if !defined (atof) | 50 | #if !defined (atof) |
| @@ -3285,11 +3275,7 @@ arith_error (signo) | |||
| 3285 | /* VMS systems are like USG. */ | 3275 | /* VMS systems are like USG. */ |
| 3286 | signal (signo, arith_error); | 3276 | signal (signo, arith_error); |
| 3287 | #endif /* VMS */ | 3277 | #endif /* VMS */ |
| 3288 | #ifdef BSD4_1 | ||
| 3289 | sigrelse (SIGFPE); | ||
| 3290 | #else /* not BSD4_1 */ | ||
| 3291 | sigsetmask (SIGEMPTYMASK); | 3278 | sigsetmask (SIGEMPTYMASK); |
| 3292 | #endif /* not BSD4_1 */ | ||
| 3293 | 3279 | ||
| 3294 | SIGNAL_THREAD_CHECK (signo); | 3280 | SIGNAL_THREAD_CHECK (signo); |
| 3295 | xsignal0 (Qarith_error); | 3281 | xsignal0 (Qarith_error); |
| @@ -22,7 +22,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | |||
| 22 | #include <config.h> | 22 | #include <config.h> |
| 23 | 23 | ||
| 24 | #include <sys/types.h> | 24 | #include <sys/types.h> |
| 25 | #include <sys/file.h> /* Must be after sys/types.h for USG and BSD4_1*/ | 25 | #include <sys/file.h> /* Must be after sys/types.h for USG*/ |
| 26 | #include <ctype.h> | 26 | #include <ctype.h> |
| 27 | 27 | ||
| 28 | #ifdef HAVE_FCNTL_H | 28 | #ifdef HAVE_FCNTL_H |
diff --git a/src/ecrt0.c b/src/ecrt0.c index fcf4fee26e8..4c4f297c9ca 100644 --- a/src/ecrt0.c +++ b/src/ecrt0.c | |||
| @@ -200,120 +200,6 @@ start1 (ignore, argc, xargv) | |||
| 200 | 200 | ||
| 201 | #endif /* not CRT0_DUMMIES */ | 201 | #endif /* not CRT0_DUMMIES */ |
| 202 | 202 | ||
| 203 | #ifdef hp9000s300 | ||
| 204 | int argc_value; | ||
| 205 | char **argv_value; | ||
| 206 | #ifdef OLD_HP_ASSEMBLER | ||
| 207 | asm(" text"); | ||
| 208 | asm(" globl __start"); | ||
| 209 | asm(" globl _exit"); | ||
| 210 | asm(" globl _main"); | ||
| 211 | asm("__start"); | ||
| 212 | asm(" dc.l 0"); | ||
| 213 | asm(" subq.w #0x1,d0"); | ||
| 214 | asm(" move.w d0,float_soft"); | ||
| 215 | asm(" move.l 0x4(a7),d0"); | ||
| 216 | asm(" beq.s skip_1"); | ||
| 217 | asm(" move.l d0,a0"); | ||
| 218 | asm(" clr.l -0x4(a0)"); | ||
| 219 | asm("skip_1"); | ||
| 220 | asm(" move.l a7,a0"); | ||
| 221 | asm(" subq.l #0x8,a7"); | ||
| 222 | asm(" move.l (a0),(a7)"); | ||
| 223 | asm(" move.l (a0),_argc_value"); | ||
| 224 | asm(" addq.l #0x4,a0"); | ||
| 225 | asm(" move.l a0,0x4(a7)"); | ||
| 226 | asm(" move.l a0,_argv_value"); | ||
| 227 | asm("incr_loop"); | ||
| 228 | asm(" tst.l (a0)+"); | ||
| 229 | asm(" bne.s incr_loop"); | ||
| 230 | asm(" move.l 0x4(a7),a1"); | ||
| 231 | asm(" cmp.l (a1),a0"); | ||
| 232 | asm(" blt.s skip_2"); | ||
| 233 | asm(" subq.l #0x4,a0"); | ||
| 234 | asm("skip_2"); | ||
| 235 | asm(" move.l a0,0x8(a7)"); | ||
| 236 | asm(" move.l a0,_environ"); | ||
| 237 | asm(" jsr _main"); | ||
| 238 | asm(" addq.l #0x8,a7"); | ||
| 239 | asm(" move.l d0,-(a7)"); | ||
| 240 | asm(" jsr _exit"); | ||
| 241 | asm(" move.w #0x1,d0"); | ||
| 242 | asm(" trap #0x0"); | ||
| 243 | asm(" comm float_soft,4"); | ||
| 244 | /* float_soft is allocated in this way because C would | ||
| 245 | put an underscore character in its name otherwise. */ | ||
| 246 | |||
| 247 | #else /* new hp assembler */ | ||
| 248 | |||
| 249 | asm(" text"); | ||
| 250 | asm(" global float_loc"); | ||
| 251 | asm(" set float_loc,0xFFFFB000"); | ||
| 252 | asm(" global fpa_loc"); | ||
| 253 | asm(" set fpa_loc,0xfff08000"); | ||
| 254 | asm(" global __start"); | ||
| 255 | asm(" global _exit"); | ||
| 256 | asm(" global _main"); | ||
| 257 | asm("__start:"); | ||
| 258 | asm(" byte 0,0,0,0"); | ||
| 259 | asm(" subq.w &1,%d0"); | ||
| 260 | asm(" mov.w %d0,float_soft"); | ||
| 261 | asm(" mov.w %d1,flag_68881"); | ||
| 262 | #ifndef HPUX_68010 | ||
| 263 | asm(" beq.b skip_float"); | ||
| 264 | asm(" fmov.l &0x7400,%fpcr"); | ||
| 265 | /* asm(" fmov.l &0x7480,%fpcr"); */ | ||
| 266 | #endif /* HPUX_68010 */ | ||
| 267 | asm("skip_float:"); | ||
| 268 | asm(" mov.l %a0,%d0"); | ||
| 269 | asm(" add.l %d0,%d0"); | ||
| 270 | asm(" subx.w %d1,%d1"); | ||
| 271 | asm(" mov.w %d1,flag_68010"); | ||
| 272 | asm(" add.l %d0,%d0"); | ||
| 273 | asm(" subx.w %d1,%d1"); | ||
| 274 | asm(" mov.w %d1,flag_fpa"); | ||
| 275 | asm(" tst.l %d2"); | ||
| 276 | asm(" ble.b skip_3"); | ||
| 277 | asm(" lsl flag_68881"); | ||
| 278 | asm(" lsl flag_fpa"); | ||
| 279 | asm("skip_3:"); | ||
| 280 | asm(" mov.l 4(%a7),%d0"); | ||
| 281 | asm(" beq.b skip_1"); | ||
| 282 | asm(" mov.l %d0,%a0"); | ||
| 283 | asm(" clr.l -4(%a0)"); | ||
| 284 | asm("skip_1:"); | ||
| 285 | asm(" mov.l %a7,%a0"); | ||
| 286 | asm(" subq.l &8,%a7"); | ||
| 287 | asm(" mov.l (%a0),(%a7)"); | ||
| 288 | asm(" mov.l (%a0),_argc_value"); | ||
| 289 | asm(" addq.l &4,%a0"); | ||
| 290 | asm(" mov.l %a0,4(%a7)"); | ||
| 291 | asm(" mov.l %a0,_argv_value"); | ||
| 292 | asm("incr_loop:"); | ||
| 293 | asm(" tst.l (%a0)+"); | ||
| 294 | asm(" bne.b incr_loop"); | ||
| 295 | asm(" mov.l 4(%a7),%a1"); | ||
| 296 | asm(" cmp.l %a0,(%a1)"); | ||
| 297 | asm(" blt.b skip_2"); | ||
| 298 | asm(" subq.l &4,%a0"); | ||
| 299 | asm("skip_2:"); | ||
| 300 | asm(" mov.l %a0,8(%a7)"); | ||
| 301 | asm(" mov.l %a0,_environ"); | ||
| 302 | asm(" jsr _main"); | ||
| 303 | asm(" addq.l &8,%a7"); | ||
| 304 | asm(" mov.l %d0,-(%a7)"); | ||
| 305 | asm(" jsr _exit"); | ||
| 306 | asm(" mov.w &1,%d0"); | ||
| 307 | asm(" trap &0"); | ||
| 308 | asm(" comm float_soft, 4"); | ||
| 309 | asm(" comm flag_68881, 4"); | ||
| 310 | asm(" comm flag_68010, 4"); | ||
| 311 | asm(" comm flag_68040, 4"); | ||
| 312 | asm(" comm flag_fpa, 4"); | ||
| 313 | |||
| 314 | #endif /* new hp assembler */ | ||
| 315 | #endif /* hp9000s300 */ | ||
| 316 | |||
| 317 | #ifdef sparc | 203 | #ifdef sparc |
| 318 | asm (".global __start"); | 204 | asm (".global __start"); |
| 319 | asm (".text"); | 205 | asm (".text"); |
| @@ -337,12 +223,6 @@ asm (" nop"); | |||
| 337 | #if __FreeBSD__ == 2 | 223 | #if __FreeBSD__ == 2 |
| 338 | char *__progname; | 224 | char *__progname; |
| 339 | #endif | 225 | #endif |
| 340 | #ifdef __bsdi__ | ||
| 341 | #include <sys/param.h> /* for version number */ | ||
| 342 | #if defined(_BSDI_VERSION) && (_BSDI_VERSION >= 199501) | ||
| 343 | char *__progname; | ||
| 344 | #endif | ||
| 345 | #endif /* __bsdi__ */ | ||
| 346 | 226 | ||
| 347 | /* arch-tag: 4025c2fb-d6b1-4d29-b1b6-8100b6bd1e74 | 227 | /* arch-tag: 4025c2fb-d6b1-4d29-b1b6-8100b6bd1e74 |
| 348 | (do not change this comment) */ | 228 | (do not change this comment) */ |
diff --git a/src/emacs.c b/src/emacs.c index 517b39e828d..b27e787e7e0 100644 --- a/src/emacs.c +++ b/src/emacs.c | |||
| @@ -922,16 +922,6 @@ main (argc, argv | |||
| 922 | } | 922 | } |
| 923 | #endif | 923 | #endif |
| 924 | 924 | ||
| 925 | #ifdef NeXT | ||
| 926 | { | ||
| 927 | extern int malloc_cookie; | ||
| 928 | /* This helps out unexnext.c. */ | ||
| 929 | if (initialized) | ||
| 930 | if (malloc_jumpstart (malloc_cookie) != 0) | ||
| 931 | printf ("malloc jumpstart failed!\n"); | ||
| 932 | } | ||
| 933 | #endif /* NeXT */ | ||
| 934 | |||
| 935 | #ifdef MAC_OSX | 925 | #ifdef MAC_OSX |
| 936 | /* Skip process serial number passed in the form -psn_x_y as | 926 | /* Skip process serial number passed in the form -psn_x_y as |
| 937 | command-line argument. The WindowServer adds this option when | 927 | command-line argument. The WindowServer adds this option when |
| @@ -1505,7 +1495,7 @@ main (argc, argv | |||
| 1505 | if this is not done. Do it after set_global_environment so that we | 1495 | if this is not done. Do it after set_global_environment so that we |
| 1506 | don't pollute Vglobal_environment. */ | 1496 | don't pollute Vglobal_environment. */ |
| 1507 | /* Setting LANG here will defeat the startup locale processing... */ | 1497 | /* Setting LANG here will defeat the startup locale processing... */ |
| 1508 | #ifdef AIX3_2 | 1498 | #ifdef AIX |
| 1509 | putenv ("LANG=C"); | 1499 | putenv ("LANG=C"); |
| 1510 | #endif | 1500 | #endif |
| 1511 | 1501 | ||
diff --git a/src/fileio.c b/src/fileio.c index 2a700a69f97..ffb65497a40 100644 --- a/src/fileio.c +++ b/src/fileio.c | |||
| @@ -122,11 +122,6 @@ extern int errno; | |||
| 122 | 122 | ||
| 123 | #ifdef HPUX | 123 | #ifdef HPUX |
| 124 | #include <netio.h> | 124 | #include <netio.h> |
| 125 | #ifndef HPUX8 | ||
| 126 | #ifndef HPUX9 | ||
| 127 | #include <errnet.h> | ||
| 128 | #endif | ||
| 129 | #endif | ||
| 130 | #endif | 125 | #endif |
| 131 | 126 | ||
| 132 | #include "commands.h" | 127 | #include "commands.h" |
| @@ -2792,12 +2787,7 @@ This is what happens in interactive use with M-x. */) | |||
| 2792 | || INTEGERP (ok_if_already_exists)) | 2787 | || INTEGERP (ok_if_already_exists)) |
| 2793 | barf_or_query_if_file_exists (newname, "rename to it", | 2788 | barf_or_query_if_file_exists (newname, "rename to it", |
| 2794 | INTEGERP (ok_if_already_exists), 0, 0); | 2789 | INTEGERP (ok_if_already_exists), 0, 0); |
| 2795 | #ifndef BSD4_1 | ||
| 2796 | if (0 > rename (SDATA (encoded_file), SDATA (encoded_newname))) | 2790 | if (0 > rename (SDATA (encoded_file), SDATA (encoded_newname))) |
| 2797 | #else | ||
| 2798 | if (0 > link (SDATA (encoded_file), SDATA (encoded_newname)) | ||
| 2799 | || 0 > unlink (SDATA (encoded_file))) | ||
| 2800 | #endif | ||
| 2801 | { | 2791 | { |
| 2802 | if (errno == EXDEV) | 2792 | if (errno == EXDEV) |
| 2803 | { | 2793 | { |
diff --git a/src/floatfns.c b/src/floatfns.c index 5600d980652..8ee28210e43 100644 --- a/src/floatfns.c +++ b/src/floatfns.c | |||
| @@ -62,16 +62,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | |||
| 62 | #endif | 62 | #endif |
| 63 | #endif | 63 | #endif |
| 64 | 64 | ||
| 65 | /* Work around a problem that happens because math.h on hpux 7 | ||
| 66 | defines two static variables--which, in Emacs, are not really static, | ||
| 67 | because `static' is defined as nothing. The problem is that they are | ||
| 68 | defined both here and in lread.c. | ||
| 69 | These macros prevent the name conflict. */ | ||
| 70 | #if defined (HPUX) && !defined (HPUX8) | ||
| 71 | #define _MAXLDBL floatfns_maxldbl | ||
| 72 | #define _NMAXLDBL floatfns_nmaxldbl | ||
| 73 | #endif | ||
| 74 | |||
| 75 | #include <math.h> | 65 | #include <math.h> |
| 76 | 66 | ||
| 77 | /* This declaration is omitted on some systems, like Ultrix. */ | 67 | /* This declaration is omitted on some systems, like Ultrix. */ |
| @@ -972,11 +962,7 @@ float_error (signo) | |||
| 972 | fatal_error_signal (signo); | 962 | fatal_error_signal (signo); |
| 973 | 963 | ||
| 974 | #ifdef BSD_SYSTEM | 964 | #ifdef BSD_SYSTEM |
| 975 | #ifdef BSD4_1 | ||
| 976 | sigrelse (SIGILL); | ||
| 977 | #else /* not BSD4_1 */ | ||
| 978 | sigsetmask (SIGEMPTYMASK); | 965 | sigsetmask (SIGEMPTYMASK); |
| 979 | #endif /* not BSD4_1 */ | ||
| 980 | #else | 966 | #else |
| 981 | /* Must reestablish handler each time it is called. */ | 967 | /* Must reestablish handler each time it is called. */ |
| 982 | signal (SIGILL, float_error); | 968 | signal (SIGILL, float_error); |
diff --git a/src/keyboard.c b/src/keyboard.c index 5ac28a55247..e42e17525e6 100644 --- a/src/keyboard.c +++ b/src/keyboard.c | |||
| @@ -7305,10 +7305,6 @@ tty_read_avail_input (struct terminal *terminal, | |||
| 7305 | void | 7305 | void |
| 7306 | handle_async_input () | 7306 | handle_async_input () |
| 7307 | { | 7307 | { |
| 7308 | #ifdef BSD4_1 | ||
| 7309 | extern int select_alarmed; | ||
| 7310 | #endif | ||
| 7311 | |||
| 7312 | interrupt_input_pending = 0; | 7308 | interrupt_input_pending = 0; |
| 7313 | 7309 | ||
| 7314 | while (1) | 7310 | while (1) |
| @@ -7321,9 +7317,6 @@ handle_async_input () | |||
| 7321 | if (nread <= 0) | 7317 | if (nread <= 0) |
| 7322 | break; | 7318 | break; |
| 7323 | 7319 | ||
| 7324 | #ifdef BSD4_1 | ||
| 7325 | select_alarmed = 1; /* Force the select emulator back to life */ | ||
| 7326 | #endif | ||
| 7327 | } | 7320 | } |
| 7328 | } | 7321 | } |
| 7329 | 7322 | ||
| @@ -7342,10 +7335,6 @@ input_available_signal (signo) | |||
| 7342 | signal (signo, input_available_signal); | 7335 | signal (signo, input_available_signal); |
| 7343 | #endif /* USG */ | 7336 | #endif /* USG */ |
| 7344 | 7337 | ||
| 7345 | #ifdef BSD4_1 | ||
| 7346 | sigisheld (SIGIO); | ||
| 7347 | #endif | ||
| 7348 | |||
| 7349 | #ifdef SYNC_INPUT | 7338 | #ifdef SYNC_INPUT |
| 7350 | interrupt_input_pending = 1; | 7339 | interrupt_input_pending = 1; |
| 7351 | #else | 7340 | #else |
| @@ -7359,9 +7348,6 @@ input_available_signal (signo) | |||
| 7359 | handle_async_input (); | 7348 | handle_async_input (); |
| 7360 | #endif | 7349 | #endif |
| 7361 | 7350 | ||
| 7362 | #ifdef BSD4_1 | ||
| 7363 | sigfree (); | ||
| 7364 | #endif | ||
| 7365 | errno = old_errno; | 7351 | errno = old_errno; |
| 7366 | } | 7352 | } |
| 7367 | #endif /* SIGIO */ | 7353 | #endif /* SIGIO */ |
diff --git a/src/m/ews4800.h b/src/m/ews4800.h deleted file mode 100644 index 5badc7ecf1a..00000000000 --- a/src/m/ews4800.h +++ /dev/null | |||
| @@ -1,40 +0,0 @@ | |||
| 1 | /* m- file for NEC EWS4800 RISC series. | ||
| 2 | Copyright (C) 1998, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, | ||
| 3 | 2008 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 3 of the License, or | ||
| 10 | (at your option) 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 GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #undef LIB_STANDARD | ||
| 21 | #undef C_DEBUG_SWITCH | ||
| 22 | #define INHIBIT_BSD_TIME | ||
| 23 | #undef USG | ||
| 24 | #include "mips.h" | ||
| 25 | #define USG | ||
| 26 | #undef UNEXEC | ||
| 27 | #define UNEXEC unexelf.o | ||
| 28 | #undef LIBS_MACHINE | ||
| 29 | #undef LD_SWITCH_MACHINE | ||
| 30 | #undef START_FILES | ||
| 31 | #undef DATA_START | ||
| 32 | #undef LIB_STANDARD | ||
| 33 | #undef C_SWITCH_MACHINE | ||
| 34 | #ifndef __GNUC__ | ||
| 35 | #undef C_DEBUG_SWITCH | ||
| 36 | #define C_DEBUG_SWITCH -O -KOlimit=3000 -ZXNd=5000 | ||
| 37 | #endif /* !__GNUC__ */ | ||
| 38 | |||
| 39 | /* arch-tag: 27f72f54-45cd-40a3-b182-345127f04955 | ||
| 40 | (do not change this comment) */ | ||
diff --git a/src/m/hp800.h b/src/m/hp800.h index 28d7e4d7371..1a1a6abc465 100644 --- a/src/m/hp800.h +++ b/src/m/hp800.h | |||
| @@ -62,13 +62,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | |||
| 62 | /* Common definitions for HPUX and GNU/Linux. */ | 62 | /* Common definitions for HPUX and GNU/Linux. */ |
| 63 | 63 | ||
| 64 | #if defined (__hpux) || defined (GNU_LINUX) | 64 | #if defined (__hpux) || defined (GNU_LINUX) |
| 65 | /* Now define a symbol for the cpu type, if your compiler | ||
| 66 | does not define it automatically: | ||
| 67 | Ones defined so far include vax, m68000, ns16000, pyramid, | ||
| 68 | orion, tahoe, APOLLO and many others */ | ||
| 69 | #ifndef hp9000s800 | ||
| 70 | # define hp9000s800 | ||
| 71 | #endif | ||
| 72 | 65 | ||
| 73 | /* Define CANNOT_DUMP on machines where unexec does not work. | 66 | /* Define CANNOT_DUMP on machines where unexec does not work. |
| 74 | Then the function dump-emacs will not be defined | 67 | Then the function dump-emacs will not be defined |
diff --git a/src/m/hp9000s300.h b/src/m/hp9000s300.h deleted file mode 100644 index d7fb8b4015a..00000000000 --- a/src/m/hp9000s300.h +++ /dev/null | |||
| @@ -1,212 +0,0 @@ | |||
| 1 | /* machine description file for hp9000 series 200 or 300 on either HPUX or BSD. | ||
| 2 | Copyright (C) 1985, 2001, 2002, 2003, 2004, 2005, 2006, 2007, | ||
| 3 | 2008 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 3 of the License, or | ||
| 10 | (at your option) 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 GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | |||
| 21 | /* The following line tells the configuration script what sort of | ||
| 22 | operating system this machine is likely to run. | ||
| 23 | USUAL-OPSYS="note" | ||
| 24 | |||
| 25 | NOTE-START | ||
| 26 | HP 9000 series 200 or 300 (-machine=hp9000s300) | ||
| 27 | |||
| 28 | These machines are 68000-series CPUs running HP-UX | ||
| 29 | (a derivative of sysV with some BSD features) or BSD 4.3 ported by Utah. | ||
| 30 | |||
| 31 | If you're running HP-UX, specify `-opsystem=hpux'. | ||
| 32 | If you're running BSD, specify `-opsystem=bsd4-3'. | ||
| 33 | NOTE-END */ | ||
| 34 | |||
| 35 | /* I don't understand why we have to do this at all! -JimB */ | ||
| 36 | |||
| 37 | /* Define NOMULTIPLEJOBS on versions of HPUX before 6.5. */ | ||
| 38 | |||
| 39 | /* #define NOMULTIPLEJOBS */ | ||
| 40 | |||
| 41 | /* Define this symbol if you are running a version of HP-UX | ||
| 42 | which predates version 6.01 */ | ||
| 43 | |||
| 44 | /* #define HPUX_5 */ | ||
| 45 | |||
| 46 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 47 | is the most significant byte. */ | ||
| 48 | |||
| 49 | #define WORDS_BIG_ENDIAN | ||
| 50 | |||
| 51 | /* Define NO_ARG_ARRAY if you cannot take the address of the first of a | ||
| 52 | * group of arguments and treat it as an array of the arguments. */ | ||
| 53 | |||
| 54 | /* #define NO_ARG_ARRAY */ | ||
| 55 | |||
| 56 | /* Define WORD_MACHINE if addresses and such have | ||
| 57 | * to be corrected before they can be used as byte counts. */ | ||
| 58 | |||
| 59 | /* #define WORD_MACHINE */ | ||
| 60 | |||
| 61 | /* Now define a symbol for the cpu type, if your compiler | ||
| 62 | does not define it automatically. */ | ||
| 63 | |||
| 64 | #ifndef hp9000s300 | ||
| 65 | #define hp9000s300 | ||
| 66 | #endif | ||
| 67 | |||
| 68 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 69 | /* This is desirable for most machines. */ | ||
| 70 | |||
| 71 | #define NO_UNION_TYPE | ||
| 72 | |||
| 73 | /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend | ||
| 74 | the 24-bit bit field into an int. In other words, if bit fields | ||
| 75 | are always unsigned. | ||
| 76 | |||
| 77 | If you use NO_UNION_TYPE, this flag does not matter. */ | ||
| 78 | |||
| 79 | #define EXPLICIT_SIGN_EXTEND | ||
| 80 | |||
| 81 | /* Define CANNOT_DUMP on machines where unexec does not work. | ||
| 82 | Then the function dump-emacs will not be defined | ||
| 83 | and temacs will do (load "loadup") automatically unless told otherwise. */ | ||
| 84 | |||
| 85 | /* #define CANNOT_DUMP */ | ||
| 86 | |||
| 87 | /* Define VIRT_ADDR_VARIES if the virtual addresses of | ||
| 88 | pure and impure space as loaded can vary, and even their | ||
| 89 | relative order cannot be relied on. | ||
| 90 | |||
| 91 | Otherwise Emacs assumes that text space precedes data space, | ||
| 92 | numerically. */ | ||
| 93 | |||
| 94 | /* #define VIRT_ADDR_VARIES */ | ||
| 95 | |||
| 96 | /* For University of Utah 4.3bsd implementation on HP300s. | ||
| 97 | The #ifndef __GNUC__ definitions are required for the "standard" cc, | ||
| 98 | a very old, brain-dead version of PCC. */ | ||
| 99 | |||
| 100 | #ifdef BSD4_3 | ||
| 101 | |||
| 102 | /* Tell crt0.c that this is an ordinary 68020. */ | ||
| 103 | #undef hp9000s300 | ||
| 104 | #define m68000 | ||
| 105 | |||
| 106 | #define CRT0_DUMMIES bogus_a6, | ||
| 107 | |||
| 108 | #ifndef __GNUC__ | ||
| 109 | #define LIBS_DEBUG /* don't have -lg that works */ | ||
| 110 | #define C_DEBUG_SWITCH /* don't support -g */ | ||
| 111 | #endif | ||
| 112 | |||
| 113 | #undef LOAD_AVE_TYPE | ||
| 114 | #undef LOAD_AVE_CVT | ||
| 115 | #define LOAD_AVE_TYPE long | ||
| 116 | #define LOAD_AVE_CVT(x) ((int) (((double) (x)) / 2048.0 * 100.0)) | ||
| 117 | |||
| 118 | #endif /* BSD4_3 */ | ||
| 119 | |||
| 120 | #ifndef BSD4_3 | ||
| 121 | /* The following definitions are for HPUX only. */ | ||
| 122 | |||
| 123 | /* The symbol in the kernel where the load average is found | ||
| 124 | is named _avenrun on this machine. */ | ||
| 125 | |||
| 126 | #define LDAV_SYMBOL "_avenrun" | ||
| 127 | |||
| 128 | /* Data type of load average, as read out of kmem. */ | ||
| 129 | |||
| 130 | #define LOAD_AVE_TYPE double | ||
| 131 | |||
| 132 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 133 | |||
| 134 | #define LOAD_AVE_CVT(x) ((int) ((x) * 100.0)) | ||
| 135 | |||
| 136 | /* This library is needed with -g, on the 200/300 only. */ | ||
| 137 | |||
| 138 | #if !defined(__GNUC__) || defined(__HPUX_ASM__) | ||
| 139 | #define LIBS_DEBUG /usr/lib/end.o | ||
| 140 | #endif | ||
| 141 | |||
| 142 | /* Need a TEXT_START. On the HP9000/s300 that is 0. */ | ||
| 143 | #ifdef __GNUC__ | ||
| 144 | #define TEXT_START 0 | ||
| 145 | #endif | ||
| 146 | |||
| 147 | /* The symbol FIONREAD is defined, but the feature does not work | ||
| 148 | on the 200/300. */ | ||
| 149 | |||
| 150 | #define BROKEN_FIONREAD | ||
| 151 | |||
| 152 | /* In older versions of hpux, for unknown reasons, S_IFLNK is defined | ||
| 153 | even though symbolic links do not exist. | ||
| 154 | Make sure our conditionals based on S_IFLNK are not confused. | ||
| 155 | |||
| 156 | Here we assume that stat.h is included before config.h | ||
| 157 | so that we can override it here. | ||
| 158 | |||
| 159 | Version 6 of HP-UX has symbolic links. */ | ||
| 160 | |||
| 161 | #ifdef HPUX_5 | ||
| 162 | #undef S_IFLNK | ||
| 163 | #endif | ||
| 164 | |||
| 165 | /* Define the BSTRING functions in terms of the sysV functions. | ||
| 166 | Version 6 of HP-UX supplies these in the BSD library, | ||
| 167 | but that library has reported bugs in `signal'. */ | ||
| 168 | |||
| 169 | /* #ifdef HPUX_5 */ | ||
| 170 | #define bcopy(a,b,s) memcpy (b,a,s) | ||
| 171 | #define bzero(a,s) memset (a,0,s) | ||
| 172 | #define bcmp memcmp | ||
| 173 | /* #endif */ | ||
| 174 | |||
| 175 | /* On USG systems these have different names. | ||
| 176 | Version 6 of HP-UX supplies these in the BSD library, | ||
| 177 | which we currently want to avoid using. */ | ||
| 178 | |||
| 179 | /* #ifdef HPUX_5 */ | ||
| 180 | #define index strchr | ||
| 181 | #define rindex strrchr | ||
| 182 | /* #endif */ | ||
| 183 | |||
| 184 | /* Define C_SWITCH_MACHINE to be +X if you want the s200/300 | ||
| 185 | * Emacs to run on both 68010 and 68020 based hp-ux's. | ||
| 186 | * | ||
| 187 | * Define OLD_HP_ASSEMBLER if you have an ancient assembler | ||
| 188 | * | ||
| 189 | * Define HPUX_68010 if you are using the new assembler but | ||
| 190 | * compiling for a s200 (upgraded) or s310. 68010 based | ||
| 191 | * processor without 68881. | ||
| 192 | */ | ||
| 193 | |||
| 194 | /* These switches increase the size of some internal C compiler tables. | ||
| 195 | They are required for compiling the X11 interface files. */ | ||
| 196 | |||
| 197 | #ifndef HPUX_5 | ||
| 198 | #ifndef __GNUC__ | ||
| 199 | #define C_SWITCH_MACHINE -Wc,-Nd4000,-Ns3000 | ||
| 200 | #endif | ||
| 201 | #endif | ||
| 202 | |||
| 203 | /* Define NEED_BSDTTY if you have such. */ | ||
| 204 | |||
| 205 | #ifndef NOMULTIPLEJOBS | ||
| 206 | #define NEED_BSDTTY | ||
| 207 | #endif | ||
| 208 | |||
| 209 | #endif /* not BSD4_3 */ | ||
| 210 | |||
| 211 | /* arch-tag: 6e0001a5-ed62-4258-9235-204348f6bdb9 | ||
| 212 | (do not change this comment) */ | ||
diff --git a/src/m/ibm370aix.h b/src/m/ibm370aix.h deleted file mode 100644 index daaa4ddff02..00000000000 --- a/src/m/ibm370aix.h +++ /dev/null | |||
| @@ -1,51 +0,0 @@ | |||
| 1 | /* m/ file for IBM 370 running AIX. | ||
| 2 | Copyright (C) 1993, 1994, 2001, 2002, 2003, 2004, 2005, 2006, 2007, | ||
| 3 | 2008 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 3 of the License, or | ||
| 10 | (at your option) 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 GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #define AIX | ||
| 21 | |||
| 22 | /* Include unistd.h, even though we don't define POSIX. */ | ||
| 23 | #define NEED_UNISTD_H | ||
| 24 | |||
| 25 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 26 | is the most significant byte. */ | ||
| 27 | |||
| 28 | #define WORDS_BIG_ENDIAN | ||
| 29 | |||
| 30 | #undef TEXT_START | ||
| 31 | #undef SEGMENT_MASK | ||
| 32 | #undef DATA_SECTION_ALIGNMENT | ||
| 33 | |||
| 34 | #define TEXT_START 0 | ||
| 35 | #define SEGMENT_MASK 0 | ||
| 36 | #define DATA_SECTION_ALIGNMENT 0x00001000 | ||
| 37 | |||
| 38 | #undef LOAD_AVE_CVT | ||
| 39 | #undef LOAD_AVE_TYPE | ||
| 40 | /* Data type of load average, as read out of kmem. */ | ||
| 41 | #define LOAD_AVE_CVT(x) (int)(((double) (x)) * 100.0 / 1.0) | ||
| 42 | #define LOAD_AVE_TYPE double | ||
| 43 | |||
| 44 | #undef LIBS_MACHINE | ||
| 45 | #define LIBS_MACHINE | ||
| 46 | |||
| 47 | #undef LD_SWITCH_MACHINE | ||
| 48 | #define LD_SWITCH_MACHINE -xa | ||
| 49 | |||
| 50 | /* arch-tag: 8605b600-0580-4e49-9ba9-8b4a977f860a | ||
| 51 | (do not change this comment) */ | ||
diff --git a/src/m/ibmrs6000.h b/src/m/ibmrs6000.h index fcbb8f28864..db6ebee0d78 100644 --- a/src/m/ibmrs6000.h +++ b/src/m/ibmrs6000.h | |||
| @@ -107,15 +107,11 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | |||
| 107 | 107 | ||
| 108 | /* Here override various assumptions in ymakefile */ | 108 | /* Here override various assumptions in ymakefile */ |
| 109 | 109 | ||
| 110 | #ifdef AIXHFT | ||
| 111 | #define OBJECTS_MACHINE hftctl.o | ||
| 112 | #endif | ||
| 113 | |||
| 114 | #ifndef USG5 | 110 | #ifndef USG5 |
| 115 | #define C_SWITCH_MACHINE -D_BSD | 111 | #define C_SWITCH_MACHINE -D_BSD |
| 116 | #endif | 112 | #endif |
| 117 | 113 | ||
| 118 | #ifdef AIX3_2 | 114 | #ifdef AIX |
| 119 | /* -lpthreads seems to be necessary for Xlib in X11R6, and should be harmless | 115 | /* -lpthreads seems to be necessary for Xlib in X11R6, and should be harmless |
| 120 | on older versions of X where it happens to exist. */ | 116 | on older versions of X where it happens to exist. */ |
| 121 | #ifdef HAVE_LIBPTHREADS | 117 | #ifdef HAVE_LIBPTHREADS |
| @@ -159,15 +155,15 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | |||
| 159 | because .inp is a better convention to use in make-dist for naming | 155 | because .inp is a better convention to use in make-dist for naming |
| 160 | random input files. */ | 156 | random input files. */ |
| 161 | #ifdef THIS_IS_MAKEFILE /* Don't use this in configure. */ | 157 | #ifdef THIS_IS_MAKEFILE /* Don't use this in configure. */ |
| 162 | #ifdef AIX4 | 158 | #ifdef AIX |
| 163 | #define LD_SWITCH_MACHINE -Wl,-bnodelcsect | 159 | #define LD_SWITCH_MACHINE -Wl,-bnodelcsect |
| 164 | #else /* not AIX4 */ | 160 | #else /* not AIX */ |
| 165 | #ifdef HAVE_AIX_SMT_EXP | 161 | #ifdef HAVE_AIX_SMT_EXP |
| 166 | #define LD_SWITCH_MACHINE -Wl,-bnso,-bnodelcsect,-bI:/lib/syscalls.exp,-bI:$(srcdir)/m/ibmrs6000.inp,-bI:/usr/lpp/X11/bin/smt.exp | 162 | #define LD_SWITCH_MACHINE -Wl,-bnso,-bnodelcsect,-bI:/lib/syscalls.exp,-bI:$(srcdir)/m/ibmrs6000.inp,-bI:/usr/lpp/X11/bin/smt.exp |
| 167 | #else | 163 | #else |
| 168 | #define LD_SWITCH_MACHINE -Wl,-bnso,-bnodelcsect,-bI:/lib/syscalls.exp,-bI:$(srcdir)/m/ibmrs6000.inp | 164 | #define LD_SWITCH_MACHINE -Wl,-bnso,-bnodelcsect,-bI:/lib/syscalls.exp,-bI:$(srcdir)/m/ibmrs6000.inp |
| 169 | #endif | 165 | #endif |
| 170 | #endif /* not AIX4 */ | 166 | #endif /* not AIX */ |
| 171 | #endif /* THIS_IS_MAKEFILE */ | 167 | #endif /* THIS_IS_MAKEFILE */ |
| 172 | 168 | ||
| 173 | /* Avoid gcc 2.7.x collect2 bug by using /bin/ld instead. */ | 169 | /* Avoid gcc 2.7.x collect2 bug by using /bin/ld instead. */ |
diff --git a/src/m/mips-siemens.h b/src/m/mips-siemens.h deleted file mode 100644 index 1fa475e95d7..00000000000 --- a/src/m/mips-siemens.h +++ /dev/null | |||
| @@ -1,161 +0,0 @@ | |||
| 1 | /* m- file for Mips machines. | ||
| 2 | Copyright (C) 1987, 1992, 1993, 1995, 2001, 2002, 2003, 2004, 2005, | ||
| 3 | 2006, 2007, 2008 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file contains some changes for our SVR4 based SINIX-Mips 5.4. | ||
| 6 | I hope this is helpful to port the emacs to our RM?00 series and | ||
| 7 | maybe to the DC/OSx (Mips-based) machines of Pyramid Inc. | ||
| 8 | (Marco.Walther@mch.sni.de) | ||
| 9 | |||
| 10 | This file is part of GNU Emacs. | ||
| 11 | |||
| 12 | GNU Emacs is free software: you can redistribute it and/or modify | ||
| 13 | it under the terms of the GNU General Public License as published by | ||
| 14 | the Free Software Foundation, either version 3 of the License, or | ||
| 15 | (at your option) any later version. | ||
| 16 | |||
| 17 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 18 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 19 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 20 | GNU General Public License for more details. | ||
| 21 | |||
| 22 | You should have received a copy of the GNU General Public License | ||
| 23 | along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | ||
| 24 | |||
| 25 | |||
| 26 | /* The following line tells the configuration script what sort of | ||
| 27 | operating system this machine is likely to run. | ||
| 28 | USUAL-OPSYS="note" | ||
| 29 | |||
| 30 | NOTE-START | ||
| 31 | Use m-mips4.h for RISCOS version 4; use s-bsd4-3.h with the BSD world. | ||
| 32 | Note that the proper m- file for the Decstation is m-pmax.h. | ||
| 33 | This is the m- file for SNI RM*00 machines. Use s- sinix5-4.h file! | ||
| 34 | With this the file mips-siemens.h is obsolete. | ||
| 35 | NOTE-END */ | ||
| 36 | |||
| 37 | /* Define BIG_ENDIAN if lowest-numbered byte in a word | ||
| 38 | is the most significant byte. */ | ||
| 39 | |||
| 40 | #define BIG_ENDIAN | ||
| 41 | |||
| 42 | /* Define NO_ARG_ARRAY if you cannot take the address of the first of a | ||
| 43 | * group of arguments and treat it as an array of the arguments. */ | ||
| 44 | |||
| 45 | #define NO_ARG_ARRAY | ||
| 46 | |||
| 47 | /* Define WORD_MACHINE if addresses and such have | ||
| 48 | * to be corrected before they can be used as byte counts. */ | ||
| 49 | |||
| 50 | #undef WORD_MACHINE | ||
| 51 | |||
| 52 | /* Define how to take a char and sign-extend into an int. | ||
| 53 | On machines where char is signed, this is a no-op. */ | ||
| 54 | |||
| 55 | #define SIGN_EXTEND_CHAR(c) ((signed char)(c)) | ||
| 56 | |||
| 57 | /* Now define a symbol for the cpu type, if your compiler | ||
| 58 | does not define it automatically: | ||
| 59 | Ones defined so far include vax, m68000, ns16000, pyramid, | ||
| 60 | orion, tahoe, APOLLO and many others */ | ||
| 61 | #ifndef mips | ||
| 62 | # define mips | ||
| 63 | #endif | ||
| 64 | |||
| 65 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 66 | /* This is desirable for most machines. */ | ||
| 67 | |||
| 68 | #define NO_UNION_TYPE | ||
| 69 | |||
| 70 | /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend | ||
| 71 | the 24-bit bit field into an int. In other words, if bit fields | ||
| 72 | are always unsigned. | ||
| 73 | |||
| 74 | If you use NO_UNION_TYPE, this flag does not matter. */ | ||
| 75 | |||
| 76 | #define EXPLICIT_SIGN_EXTEND | ||
| 77 | |||
| 78 | /* Data type of load average, as read out of kmem. */ | ||
| 79 | |||
| 80 | #define LOAD_AVE_TYPE long | ||
| 81 | |||
| 82 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 83 | |||
| 84 | #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / 256.0) | ||
| 85 | |||
| 86 | /* CDC EP/IX 1.4.3 uses /unix */ | ||
| 87 | |||
| 88 | #undef KERNEL_FILE | ||
| 89 | #define KERNEL_FILE "/unix" | ||
| 90 | |||
| 91 | /* Define CANNOT_DUMP on machines where unexec does not work. | ||
| 92 | Then the function dump-emacs will not be defined | ||
| 93 | and temacs will do (load "loadup") automatically unless told otherwise. */ | ||
| 94 | |||
| 95 | #undef CANNOT_DUMP | ||
| 96 | |||
| 97 | /* Define VIRT_ADDR_VARIES if the virtual addresses of | ||
| 98 | pure and impure space as loaded can vary, and even their | ||
| 99 | relative order cannot be relied on. | ||
| 100 | |||
| 101 | Otherwise Emacs assumes that text space precedes data space, | ||
| 102 | numerically. */ | ||
| 103 | |||
| 104 | /* #define VIRT_ADDR_VARIES */ | ||
| 105 | |||
| 106 | /* Define NO_REMAP if memory segmentation makes it not work well | ||
| 107 | to change the boundary between the text section and data section | ||
| 108 | when Emacs is dumped. If you define this, the preloaded Lisp | ||
| 109 | code will not be sharable; but that's better than failing completely. */ | ||
| 110 | |||
| 111 | #define NO_REMAP | ||
| 112 | |||
| 113 | /* Describe layout of the address space in an executing process. */ | ||
| 114 | /* MARCO ??? | ||
| 115 | */ | ||
| 116 | #define TEXT_START 0x400000 | ||
| 117 | /* | ||
| 118 | #define DATA_START 0x10000000 | ||
| 119 | #define DATA_SEG_BITS 0x10000000 | ||
| 120 | */ | ||
| 121 | #ifdef UNEXEC | ||
| 122 | #undef UNEXEC | ||
| 123 | #endif | ||
| 124 | #define UNEXEC unexsni.o | ||
| 125 | |||
| 126 | #undef ORDINARY_LINK | ||
| 127 | |||
| 128 | #undef LIBS_DEBUG | ||
| 129 | |||
| 130 | /* Alter some of the options used when linking. */ | ||
| 131 | |||
| 132 | #define LIBS_MACHINE -lmld | ||
| 133 | #define START_FILES pre-crt0.o /usr/ccs/lib/crt1.o /usr/ccs/lib/crti.o /usr/ccs/lib/values-Xt.o | ||
| 134 | |||
| 135 | #ifdef LIB_STANDARD | ||
| 136 | #undef LIB_STANDARD | ||
| 137 | #endif | ||
| 138 | #define LIB_STANDARD -lc /usr/ccs/lib/crtn.o | ||
| 139 | |||
| 140 | #ifdef __GNUC__ | ||
| 141 | #define C_DEBUG_SWITCH | ||
| 142 | #define LD_SWITCH_MACHINE | ||
| 143 | #else | ||
| 144 | #define C_DEBUG_SWITCH -DSYSV | ||
| 145 | #define C_OPTIMIZE_SWITCH -DSYSV | ||
| 146 | #define LD_SWITCH_MACHINE | ||
| 147 | #endif | ||
| 148 | |||
| 149 | |||
| 150 | /* The standard definitions of these macros would work ok, | ||
| 151 | but these are faster because the constants are short. */ | ||
| 152 | |||
| 153 | #define XUINT(a) (((unsigned)(a) << (BITS_PER_INT-VALBITS)) >> (BITS_PER_INT-VALBITS)) | ||
| 154 | |||
| 155 | #define XSET(var, type, ptr) \ | ||
| 156 | ((var) = \ | ||
| 157 | ((int)(type) << VALBITS) \ | ||
| 158 | + (((unsigned) (ptr) << (BITS_PER_INT-VALBITS)) >> (BITS_PER_INT-VALBITS))) | ||
| 159 | |||
| 160 | /* arch-tag: a4f5c090-0bd5-48f0-9724-b7d531f9b6c8 | ||
| 161 | (do not change this comment) */ | ||
diff --git a/src/m/mips.h b/src/m/mips.h index b3192d75de7..877e4e4c900 100644 --- a/src/m/mips.h +++ b/src/m/mips.h | |||
| @@ -187,7 +187,7 @@ NOTE-END */ | |||
| 187 | 187 | ||
| 188 | #define HAVE_SYSVIPC | 188 | #define HAVE_SYSVIPC |
| 189 | 189 | ||
| 190 | #if defined(emacs) && !defined(INHIBIT_BSD_TIME) | 190 | #if defined(emacs) |
| 191 | #include <bsd/sys/time.h> | 191 | #include <bsd/sys/time.h> |
| 192 | #endif | 192 | #endif |
| 193 | 193 | ||
diff --git a/src/m/ncr386.h b/src/m/ncr386.h deleted file mode 100644 index f98566a2959..00000000000 --- a/src/m/ncr386.h +++ /dev/null | |||
| @@ -1,18 +0,0 @@ | |||
| 1 | #include "intel386.h" | ||
| 2 | |||
| 3 | #ifndef __GNUC__ | ||
| 4 | /* Allow emacs to link with "bcopy()" unresolved. Works around a | ||
| 5 | problem where /usr/lib/libX11.so provides bcopy, but | ||
| 6 | /usr/ccs/lib/libX11.so does not. */ | ||
| 7 | #define LD_SWITCH_X_DEFAULT -Wl,-z,nodefs | ||
| 8 | #else /* __GNUC__ */ | ||
| 9 | |||
| 10 | /* Assuming we are using GNU ld, pass a -R option to it | ||
| 11 | so that shared libraries will be found at execution time | ||
| 12 | just as they are found at link time. */ | ||
| 13 | #define LD_SWITCH_X_DEFAULT -Xlinker LD_SWITCH_X_SITE_AUX | ||
| 14 | |||
| 15 | #endif /* __GNUC__ */ | ||
| 16 | |||
| 17 | /* arch-tag: 79c76283-7d50-499b-b910-8ef980357758 | ||
| 18 | (do not change this comment) */ | ||
diff --git a/src/m/next.h b/src/m/next.h deleted file mode 100644 index c6e2358fdd9..00000000000 --- a/src/m/next.h +++ /dev/null | |||
| @@ -1,125 +0,0 @@ | |||
| 1 | /* Configuration file for the NeXT machine. | ||
| 2 | Copyright (C) 1990, 2001, 2002, 2003, 2004, 2005, 2006, 2007, | ||
| 3 | 2008 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 3 of the License, or | ||
| 10 | (at your option) 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 GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | |||
| 21 | /* Say this machine is a next if not previously defined */ | ||
| 22 | |||
| 23 | #ifndef NeXT | ||
| 24 | #define NeXT | ||
| 25 | #endif | ||
| 26 | |||
| 27 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 28 | is the most significant byte. */ | ||
| 29 | |||
| 30 | /* Let the compiler tell us. */ | ||
| 31 | #ifdef __BIG_ENDIAN__ | ||
| 32 | #define WORDS_BIG_ENDIAN | ||
| 33 | #endif | ||
| 34 | |||
| 35 | /* Define how to take a char and sign-extend into an int. | ||
| 36 | On machines where char is signed, this is a no-op. */ | ||
| 37 | |||
| 38 | #define SIGN_EXTEND_CHAR(c) (c) | ||
| 39 | |||
| 40 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 41 | |||
| 42 | #define NO_UNION_TYPE | ||
| 43 | |||
| 44 | /* XINT must explicitly sign-extend */ | ||
| 45 | |||
| 46 | #define EXPLICIT_SIGN_EXTEND | ||
| 47 | |||
| 48 | /* Data type of load average, as read out of kmem. */ | ||
| 49 | |||
| 50 | #define LOAD_AVE_TYPE long | ||
| 51 | |||
| 52 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 53 | |||
| 54 | #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE) | ||
| 55 | |||
| 56 | /* Say that the text segment of a.out includes the header; | ||
| 57 | the header actually occupies the first few bytes of the text segment | ||
| 58 | and is counted in hdr.a_text. */ | ||
| 59 | |||
| 60 | #define A_TEXT_OFFSET(HDR) sizeof (HDR) | ||
| 61 | |||
| 62 | /* Mask for address bits within a memory segment */ | ||
| 63 | |||
| 64 | #define SEGSIZ 0x20000 | ||
| 65 | #define SEGMENT_MASK (SEGSIZ - 1) | ||
| 66 | |||
| 67 | #define SYSTEM_MALLOC | ||
| 68 | |||
| 69 | #define HAVE_UNIX_DOMAIN | ||
| 70 | |||
| 71 | #define LIB_X11_LIB -L/usr/lib/X11 -lX11 | ||
| 72 | |||
| 73 | /* This avoids a problem in Xos.h when using co-Xist 3.01. */ | ||
| 74 | #define X_NOT_POSIX | ||
| 75 | |||
| 76 | /* Conflicts in process.c between ioctl.h & tty.h use of t_foo fields */ | ||
| 77 | |||
| 78 | #define NO_T_CHARS_DEFINES | ||
| 79 | |||
| 80 | /* Use our own unexec routines */ | ||
| 81 | |||
| 82 | #define UNEXEC unexnext.o | ||
| 83 | |||
| 84 | /* We don't have a g library either, so override the -lg LIBS_DEBUG switch */ | ||
| 85 | |||
| 86 | #define LIBS_DEBUG | ||
| 87 | |||
| 88 | /* We don't have a libgcc.a, so we can't let LIB_GCC default to -lgcc */ | ||
| 89 | |||
| 90 | #define LIB_GCC | ||
| 91 | |||
| 92 | #if 0 /* ohl@chico.harvard.edu says to do this. */ | ||
| 93 | /* Compile "strict bsd" to avoid warnings from include files */ | ||
| 94 | |||
| 95 | #define C_SWITCH_MACHINE -bsd | ||
| 96 | #endif | ||
| 97 | |||
| 98 | /* Link this program just by running cc. */ | ||
| 99 | #define ORDINARY_LINK | ||
| 100 | |||
| 101 | /* start_of_text isn't actually used, so make it compile without error. */ | ||
| 102 | #define TEXT_START 0 | ||
| 103 | /* This seems to be right for end_of_text, but it may not be used anyway. */ | ||
| 104 | #define TEXT_END get_etext () | ||
| 105 | /* This seems to be right for end_of_data, but it may not be used anyway. */ | ||
| 106 | #define DATA_END get_edata () | ||
| 107 | |||
| 108 | /* Defining KERNEL_FILE causes lossage because sys/file.h | ||
| 109 | stupidly gets confused by it. */ | ||
| 110 | #undef KERNEL_FILE | ||
| 111 | |||
| 112 | #define LD_SWITCH_MACHINE -X -noseglinkedit | ||
| 113 | |||
| 114 | #define environ _environ | ||
| 115 | |||
| 116 | #if 0 /* This is ok for NeXT system version 3.0 or above. */ | ||
| 117 | /* Where to find the kernel, for load average. */ | ||
| 118 | #define KERNEL_FILE "/mach" | ||
| 119 | #endif | ||
| 120 | |||
| 121 | /* This should be true for recent NeXT systems. At least since 3.2. */ | ||
| 122 | #define HAVE_MACH_MACH_H | ||
| 123 | |||
| 124 | /* arch-tag: 1155cdcb-1f6c-4208-a2da-22c7473060a1 | ||
| 125 | (do not change this comment) */ | ||
diff --git a/src/m/pmax.h b/src/m/pmax.h deleted file mode 100644 index ad884ca8b36..00000000000 --- a/src/m/pmax.h +++ /dev/null | |||
| @@ -1,127 +0,0 @@ | |||
| 1 | /* Machine description file for DEC MIPS machines. | ||
| 2 | |||
| 3 | Copyright (C) 1992, 1999, 2001, 2002, 2003, 2004, 2005, 2006, 2007, | ||
| 4 | 2008 Free Software Foundation, Inc. | ||
| 5 | |||
| 6 | This file is part of GNU Emacs. | ||
| 7 | |||
| 8 | GNU Emacs is free software: you can redistribute it and/or modify | ||
| 9 | it under the terms of the GNU General Public License as published by | ||
| 10 | the Free Software Foundation, either version 3 of the License, or | ||
| 11 | (at your option) any later version. | ||
| 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 | ||
| 19 | along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | ||
| 20 | |||
| 21 | |||
| 22 | #include "mips.h" | ||
| 23 | |||
| 24 | /* The following line tells the configuration script what sort of | ||
| 25 | operating system this machine is likely to run. | ||
| 26 | USUAL-OPSYS="note" | ||
| 27 | |||
| 28 | NOTE-START | ||
| 29 | The operating system would be either osf1, ultrix, or NetBSD. | ||
| 30 | NOTE-END */ | ||
| 31 | |||
| 32 | #ifndef __MIPSEB__ | ||
| 33 | #undef WORDS_BIG_ENDIAN | ||
| 34 | #endif | ||
| 35 | #if defined (__NetBSD__) | ||
| 36 | #define BROKEN_NOCOMBRELOC | ||
| 37 | #else | ||
| 38 | #undef LIB_STANDARD | ||
| 39 | #undef START_FILES | ||
| 40 | #endif | ||
| 41 | #undef COFF | ||
| 42 | #undef TERMINFO | ||
| 43 | #define MAIL_USE_FLOCK | ||
| 44 | #define HAVE_UNION_WAIT | ||
| 45 | |||
| 46 | |||
| 47 | #ifdef MACH | ||
| 48 | #define START_FILES pre-crt0.o /usr/lib/crt0.o | ||
| 49 | #else | ||
| 50 | #if !defined (__NetBSD__) | ||
| 51 | /* This line starts being needed with ultrix 4.0. */ | ||
| 52 | /* You must delete it for version 3.1. */ | ||
| 53 | #define START_FILES pre-crt0.o /usr/lib/cmplrs/cc/crt0.o | ||
| 54 | #endif | ||
| 55 | #endif | ||
| 56 | |||
| 57 | /* Supposedly the following will overcome a kernel bug. */ | ||
| 58 | #undef LD_SWITCH_MACHINE | ||
| 59 | #undef DATA_START | ||
| 60 | #define DATA_START 0x10000000 | ||
| 61 | #define DATA_SEG_BITS 0x10000000 | ||
| 62 | |||
| 63 | #if 0 | ||
| 64 | /* I don't see any such conflict in Ultrix 4.2, 4.2a, or 4.3. And | ||
| 65 | the relocating allocator is a real win. -JimB */ | ||
| 66 | |||
| 67 | /* In Ultrix 4.1, XvmsAlloc.o in libX11.a seems to insist | ||
| 68 | on defining malloc itself. This should avoid conflicting with it. */ | ||
| 69 | #define SYSTEM_MALLOC | ||
| 70 | #endif | ||
| 71 | |||
| 72 | /* Override what mips.h says about this. */ | ||
| 73 | #if !defined (__NetBSD__) | ||
| 74 | #undef LINKER | ||
| 75 | #endif | ||
| 76 | |||
| 77 | #ifdef ultrix | ||
| 78 | /* Ultrix 4.2 (perhaps also 4.1) implements O_NONBLOCK | ||
| 79 | but it doesn't work right; | ||
| 80 | and it causes hanging in read_process_output. */ | ||
| 81 | #define BROKEN_O_NONBLOCK | ||
| 82 | #endif | ||
| 83 | |||
| 84 | #ifndef __NetBSD__ | ||
| 85 | /* mcc@timessqr.gc.cuny.edu says this makes Emacs work with DECnet. */ | ||
| 86 | #ifdef HAVE_LIBDNET | ||
| 87 | #define LIBS_MACHINE -ldnet | ||
| 88 | #endif | ||
| 89 | |||
| 90 | /* mcc@timessqr.gc.cuny.edu says it is /vmunix on Ultrix 4.2a. */ | ||
| 91 | #undef KERNEL_FILE | ||
| 92 | #define KERNEL_FILE "/vmunix" | ||
| 93 | #endif | ||
| 94 | |||
| 95 | #ifdef ultrix | ||
| 96 | /* Jim Wilson writes: | ||
| 97 | [...] The X11 include files that Dec distributes with Ultrix | ||
| 98 | are bogus. | ||
| 99 | |||
| 100 | When __STDC__ is defined (which is true with gcc), the X11 include files | ||
| 101 | try to define prototypes. The prototypes however use types which haven't | ||
| 102 | been defined yet, and thus we get syntax/parse errors. | ||
| 103 | |||
| 104 | You can not fix this by changing the include files, because the prototypes | ||
| 105 | create circular dependencies, in particular Xutil.h depends on types defined | ||
| 106 | in Xlib.h, and Xlib.h depends on types defined in Xutil.h. So, no matter | ||
| 107 | which order you try to include them in, it will still fail. | ||
| 108 | |||
| 109 | Compiling with -DNeedFunctionPrototypes=0 will solve the problem by | ||
| 110 | directly inhibiting the bad prototypes. This could perhaps just be put in | ||
| 111 | an a Ultrix configuration file. | ||
| 112 | |||
| 113 | Using the MIT X11 distribution instead of the one provided by Dec will | ||
| 114 | also solve the problem, but I doubt you can convince everyone to do this. */ | ||
| 115 | /* Addendum: the MIT X11 distribution neglects to define certain symbols | ||
| 116 | when NeedFunctionPrototypes is 0, but still tries to use them when | ||
| 117 | NeedVarargsPrototypes is 1 (which is its default value). So if we're | ||
| 118 | going to disable non-variadic prototypes, we also need to disable | ||
| 119 | variadic prototypes. --kwzh@gnu.ai.mit.edu */ | ||
| 120 | #define C_SWITCH_X_MACHINE -DNeedFunctionPrototypes=0 -DNeedVarargsPrototypes=0 | ||
| 121 | #endif | ||
| 122 | |||
| 123 | /* Enable a fix in process.c. */ | ||
| 124 | #define SET_CHILD_PTY_PGRP | ||
| 125 | |||
| 126 | /* arch-tag: 45d5070e-d2b7-479f-b336-3fd497c36e15 | ||
| 127 | (do not change this comment) */ | ||
diff --git a/src/m/powerpcle.h b/src/m/powerpcle.h deleted file mode 100644 index 071ea29d61e..00000000000 --- a/src/m/powerpcle.h +++ /dev/null | |||
| @@ -1,61 +0,0 @@ | |||
| 1 | /* machine description file for PowerPC. | ||
| 2 | Copyright (C) 1987, 2001, 2002, 2003, 2004, 2005, 2006, 2007, | ||
| 3 | 2008 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 3 of the License, or | ||
| 10 | (at your option) 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 GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | /* The following line tells the configuration script what sort of | ||
| 21 | operating system this machine is likely to run. | ||
| 22 | USUAL-OPSYS="Solaris2.5.1 Windows/NT AIX 4.1.2" | ||
| 23 | */ | ||
| 24 | |||
| 25 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 26 | is the most significant byte. */ | ||
| 27 | |||
| 28 | #undef WORDS_BIG_ENDIAN | ||
| 29 | |||
| 30 | /* Define NO_ARG_ARRAY if you cannot take the address of the first of a | ||
| 31 | * group of arguments and treat it as an array of the arguments. */ | ||
| 32 | |||
| 33 | #define NO_ARG_ARRAY | ||
| 34 | |||
| 35 | /* Say this machine is a PowerPC Refernce Platform */ | ||
| 36 | |||
| 37 | #ifndef prep | ||
| 38 | #define prep | ||
| 39 | #endif | ||
| 40 | |||
| 41 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 42 | |||
| 43 | #define NO_UNION_TYPE | ||
| 44 | |||
| 45 | /* XINT must explicitly sign-extend */ | ||
| 46 | |||
| 47 | #define EXPLICIT_SIGN_EXTEND | ||
| 48 | |||
| 49 | /* Data type of load average, as read out of kmem. */ | ||
| 50 | |||
| 51 | #define LOAD_AVE_TYPE long | ||
| 52 | |||
| 53 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 54 | |||
| 55 | #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE) | ||
| 56 | |||
| 57 | /* Control a conditional in unexelf.c. */ | ||
| 58 | #define SOLARIS_POWERPC | ||
| 59 | |||
| 60 | /* arch-tag: dc2c3cb6-4683-45ae-961f-0a4f2bda3c61 | ||
| 61 | (do not change this comment) */ | ||
diff --git a/src/m/tandem-s2.h b/src/m/tandem-s2.h deleted file mode 100644 index b22f9bb66af..00000000000 --- a/src/m/tandem-s2.h +++ /dev/null | |||
| @@ -1,24 +0,0 @@ | |||
| 1 | /* machine description file for the Tandem Integrity S2. */ | ||
| 2 | |||
| 3 | #include "mips.h" | ||
| 4 | |||
| 5 | /* The following line tells the configuration script what sort of | ||
| 6 | operating system this machine is likely to run. | ||
| 7 | USUAL-OPSYS="usg5-3" */ | ||
| 8 | |||
| 9 | /* This overrides some of the usual support for the mips and system V.3. */ | ||
| 10 | |||
| 11 | /* The operating system apparently defines TIOCGETC | ||
| 12 | but it doesn't work. */ | ||
| 13 | #undef BROKEN_TIOCGETC | ||
| 14 | |||
| 15 | /* rs@ai.mit.edu said this was necessary for it to work. However, some | ||
| 16 | user of this machine ought to try to get subprocesses to work. */ | ||
| 17 | #undef subprocesses | ||
| 18 | |||
| 19 | /* Correct some library file names. */ | ||
| 20 | #define START_FILES pre-crt0.o /usr/lib/crt1.o1.31 | ||
| 21 | #define LIB_STANDARD -lbsd -lc /usr/lib/crtn.o1.31 | ||
| 22 | |||
| 23 | /* arch-tag: ae34a1a6-6408-4b23-a6d3-ce4e8f124916 | ||
| 24 | (do not change this comment) */ | ||
diff --git a/src/m/vax.h b/src/m/vax.h index 631a25d50c9..35050a11e10 100644 --- a/src/m/vax.h +++ b/src/m/vax.h | |||
| @@ -100,12 +100,6 @@ NOTE-END */ | |||
| 100 | #ifdef USG | 100 | #ifdef USG |
| 101 | #define LIB_STANDARD -lPW -lc | 101 | #define LIB_STANDARD -lPW -lc |
| 102 | 102 | ||
| 103 | /* There is some bug in unexec in for usg 5.2 on a vax | ||
| 104 | which nobody who runs such a system has yet tracked down. */ | ||
| 105 | #ifndef USG5_0 | ||
| 106 | #define NO_REMAP | ||
| 107 | #endif /* USG 5_0 */ | ||
| 108 | |||
| 109 | #define TEXT_START 0 | 103 | #define TEXT_START 0 |
| 110 | #endif /* USG */ | 104 | #endif /* USG */ |
| 111 | 105 | ||
diff --git a/src/mem-limits.h b/src/mem-limits.h index a6cb43d1d81..7341295fa31 100644 --- a/src/mem-limits.h +++ b/src/mem-limits.h | |||
| @@ -45,10 +45,6 @@ extern int etext, __data_start; weak_extern (__data_start) | |||
| 45 | # endif | 45 | # endif |
| 46 | #endif | 46 | #endif |
| 47 | 47 | ||
| 48 | #ifdef __bsdi__ | ||
| 49 | #define BSD4_2 | ||
| 50 | #endif | ||
| 51 | |||
| 52 | #ifdef CYGWIN | 48 | #ifdef CYGWIN |
| 53 | #define BSD4_2 | 49 | #define BSD4_2 |
| 54 | #endif | 50 | #endif |
diff --git a/src/print.c b/src/print.c index c88951880e8..8fac2660d0f 100644 --- a/src/print.c +++ b/src/print.c | |||
| @@ -45,16 +45,6 @@ extern Lisp_Object Qbackquote, Qcomma, Qcomma_at, Qcomma_dot, Qfunction; | |||
| 45 | 45 | ||
| 46 | Lisp_Object Vfloat_output_format, Qfloat_output_format; | 46 | Lisp_Object Vfloat_output_format, Qfloat_output_format; |
| 47 | 47 | ||
| 48 | /* Work around a problem that happens because math.h on hpux 7 | ||
| 49 | defines two static variables--which, in Emacs, are not really static, | ||
| 50 | because `static' is defined as nothing. The problem is that they are | ||
| 51 | defined both here and in lread.c. | ||
| 52 | These macros prevent the name conflict. */ | ||
| 53 | #if defined (HPUX) && !defined (HPUX8) | ||
| 54 | #define _MAXLDBL print_maxldbl | ||
| 55 | #define _NMAXLDBL print_nmaxldbl | ||
| 56 | #endif | ||
| 57 | |||
| 58 | #include <math.h> | 48 | #include <math.h> |
| 59 | 49 | ||
| 60 | #if STDC_HEADERS | 50 | #if STDC_HEADERS |
diff --git a/src/process.c b/src/process.c index fdeb0aa9e91..73bbb34fd01 100644 --- a/src/process.c +++ b/src/process.c | |||
| @@ -80,10 +80,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | |||
| 80 | #endif /* HAVE_PTYS and no O_NDELAY */ | 80 | #endif /* HAVE_PTYS and no O_NDELAY */ |
| 81 | #endif /* BSD_SYSTEM */ | 81 | #endif /* BSD_SYSTEM */ |
| 82 | 82 | ||
| 83 | #ifdef BROKEN_O_NONBLOCK | ||
| 84 | #undef O_NONBLOCK | ||
| 85 | #endif /* BROKEN_O_NONBLOCK */ | ||
| 86 | |||
| 87 | #ifdef NEED_BSDTTY | 83 | #ifdef NEED_BSDTTY |
| 88 | #include <bsdtty.h> | 84 | #include <bsdtty.h> |
| 89 | #endif | 85 | #endif |
| @@ -2006,9 +2002,6 @@ create_process (process, new_argv, current_dir) | |||
| 2006 | sigprocmask (SIG_BLOCK, &blocked, &procmask); | 2002 | sigprocmask (SIG_BLOCK, &blocked, &procmask); |
| 2007 | #else /* !POSIX_SIGNALS */ | 2003 | #else /* !POSIX_SIGNALS */ |
| 2008 | #ifdef SIGCHLD | 2004 | #ifdef SIGCHLD |
| 2009 | #ifdef BSD4_1 | ||
| 2010 | sighold (SIGCHLD); | ||
| 2011 | #else /* not BSD4_1 */ | ||
| 2012 | #if defined (BSD_SYSTEM) || defined (HPUX) | 2005 | #if defined (BSD_SYSTEM) || defined (HPUX) |
| 2013 | sigsetmask (sigmask (SIGCHLD)); | 2006 | sigsetmask (sigmask (SIGCHLD)); |
| 2014 | #else /* ordinary USG */ | 2007 | #else /* ordinary USG */ |
| @@ -2017,7 +2010,6 @@ create_process (process, new_argv, current_dir) | |||
| 2017 | sigchld = signal (SIGCHLD, create_process_sigchld); | 2010 | sigchld = signal (SIGCHLD, create_process_sigchld); |
| 2018 | #endif | 2011 | #endif |
| 2019 | #endif /* ordinary USG */ | 2012 | #endif /* ordinary USG */ |
| 2020 | #endif /* not BSD4_1 */ | ||
| 2021 | #endif /* SIGCHLD */ | 2013 | #endif /* SIGCHLD */ |
| 2022 | #endif /* !POSIX_SIGNALS */ | 2014 | #endif /* !POSIX_SIGNALS */ |
| 2023 | 2015 | ||
| @@ -2134,9 +2126,6 @@ create_process (process, new_argv, current_dir) | |||
| 2134 | This makes the pty the controlling terminal of the subprocess. */ | 2126 | This makes the pty the controlling terminal of the subprocess. */ |
| 2135 | if (pty_flag) | 2127 | if (pty_flag) |
| 2136 | { | 2128 | { |
| 2137 | #ifdef SET_CHILD_PTY_PGRP | ||
| 2138 | int pgrp = getpid (); | ||
| 2139 | #endif | ||
| 2140 | 2129 | ||
| 2141 | /* I wonder if emacs_close (emacs_open (pty_name, ...)) | 2130 | /* I wonder if emacs_close (emacs_open (pty_name, ...)) |
| 2142 | would work? */ | 2131 | would work? */ |
| @@ -2152,10 +2141,6 @@ create_process (process, new_argv, current_dir) | |||
| 2152 | _exit (1); | 2141 | _exit (1); |
| 2153 | } | 2142 | } |
| 2154 | 2143 | ||
| 2155 | #ifdef SET_CHILD_PTY_PGRP | ||
| 2156 | ioctl (xforkin, TIOCSPGRP, &pgrp); | ||
| 2157 | ioctl (xforkout, TIOCSPGRP, &pgrp); | ||
| 2158 | #endif | ||
| 2159 | } | 2144 | } |
| 2160 | #endif /* not DONT_REOPEN_PTY */ | 2145 | #endif /* not DONT_REOPEN_PTY */ |
| 2161 | 2146 | ||
| @@ -2181,9 +2166,6 @@ create_process (process, new_argv, current_dir) | |||
| 2181 | sigprocmask (SIG_SETMASK, &procmask, 0); | 2166 | sigprocmask (SIG_SETMASK, &procmask, 0); |
| 2182 | #else /* !POSIX_SIGNALS */ | 2167 | #else /* !POSIX_SIGNALS */ |
| 2183 | #ifdef SIGCHLD | 2168 | #ifdef SIGCHLD |
| 2184 | #ifdef BSD4_1 | ||
| 2185 | sigrelse (SIGCHLD); | ||
| 2186 | #else /* not BSD4_1 */ | ||
| 2187 | #if defined (BSD_SYSTEM) || defined (HPUX) | 2169 | #if defined (BSD_SYSTEM) || defined (HPUX) |
| 2188 | sigsetmask (SIGEMPTYMASK); | 2170 | sigsetmask (SIGEMPTYMASK); |
| 2189 | #else /* ordinary USG */ | 2171 | #else /* ordinary USG */ |
| @@ -2191,7 +2173,6 @@ create_process (process, new_argv, current_dir) | |||
| 2191 | signal (SIGCHLD, sigchld); | 2173 | signal (SIGCHLD, sigchld); |
| 2192 | #endif | 2174 | #endif |
| 2193 | #endif /* ordinary USG */ | 2175 | #endif /* ordinary USG */ |
| 2194 | #endif /* not BSD4_1 */ | ||
| 2195 | #endif /* SIGCHLD */ | 2176 | #endif /* SIGCHLD */ |
| 2196 | #endif /* !POSIX_SIGNALS */ | 2177 | #endif /* !POSIX_SIGNALS */ |
| 2197 | 2178 | ||
| @@ -2273,9 +2254,6 @@ create_process (process, new_argv, current_dir) | |||
| 2273 | sigprocmask (SIG_SETMASK, &procmask, 0); | 2254 | sigprocmask (SIG_SETMASK, &procmask, 0); |
| 2274 | #else /* !POSIX_SIGNALS */ | 2255 | #else /* !POSIX_SIGNALS */ |
| 2275 | #ifdef SIGCHLD | 2256 | #ifdef SIGCHLD |
| 2276 | #ifdef BSD4_1 | ||
| 2277 | sigrelse (SIGCHLD); | ||
| 2278 | #else /* not BSD4_1 */ | ||
| 2279 | #if defined (BSD_SYSTEM) || defined (HPUX) | 2257 | #if defined (BSD_SYSTEM) || defined (HPUX) |
| 2280 | sigsetmask (SIGEMPTYMASK); | 2258 | sigsetmask (SIGEMPTYMASK); |
| 2281 | #else /* ordinary USG */ | 2259 | #else /* ordinary USG */ |
| @@ -2287,7 +2265,6 @@ create_process (process, new_argv, current_dir) | |||
| 2287 | kill (getpid (), SIGCHLD); | 2265 | kill (getpid (), SIGCHLD); |
| 2288 | #endif | 2266 | #endif |
| 2289 | #endif /* ordinary USG */ | 2267 | #endif /* ordinary USG */ |
| 2290 | #endif /* not BSD4_1 */ | ||
| 2291 | #endif /* SIGCHLD */ | 2268 | #endif /* SIGCHLD */ |
| 2292 | #endif /* !POSIX_SIGNALS */ | 2269 | #endif /* !POSIX_SIGNALS */ |
| 2293 | 2270 | ||
| @@ -2700,19 +2677,6 @@ OPTION is not a supported option, return nil instead; otherwise return t. */) | |||
| 2700 | } | 2677 | } |
| 2701 | 2678 | ||
| 2702 | 2679 | ||
| 2703 | /* A version of request_sigio suitable for a record_unwind_protect. */ | ||
| 2704 | |||
| 2705 | #ifdef __ultrix__ | ||
| 2706 | static Lisp_Object | ||
| 2707 | unwind_request_sigio (dummy) | ||
| 2708 | Lisp_Object dummy; | ||
| 2709 | { | ||
| 2710 | if (interrupt_input) | ||
| 2711 | request_sigio (); | ||
| 2712 | return Qnil; | ||
| 2713 | } | ||
| 2714 | #endif | ||
| 2715 | |||
| 2716 | #ifdef HAVE_SERIAL | 2680 | #ifdef HAVE_SERIAL |
| 2717 | DEFUN ("serial-process-configure", | 2681 | DEFUN ("serial-process-configure", |
| 2718 | Fserial_process_configure, | 2682 | Fserial_process_configure, |
| @@ -3502,28 +3466,6 @@ usage: (make-network-process &rest ARGS) */) | |||
| 3502 | 3466 | ||
| 3503 | open_socket: | 3467 | open_socket: |
| 3504 | 3468 | ||
| 3505 | #ifdef __ultrix__ | ||
| 3506 | /* Previously this was compiled unconditionally, but that seems | ||
| 3507 | unnecessary on modern systems, and `unrequest_sigio' was a noop | ||
| 3508 | under X anyway. --lorentey */ | ||
| 3509 | /* Kernel bugs (on Ultrix at least) cause lossage (not just EINTR) | ||
| 3510 | when connect is interrupted. So let's not let it get interrupted. | ||
| 3511 | Note we do not turn off polling, because polling is only used | ||
| 3512 | when not interrupt_input, and thus not normally used on the systems | ||
| 3513 | which have this bug. On systems which use polling, there's no way | ||
| 3514 | to quit if polling is turned off. */ | ||
| 3515 | if (interrupt_input | ||
| 3516 | && !is_server && socktype == SOCK_STREAM) | ||
| 3517 | { | ||
| 3518 | /* Comment from KFS: The original open-network-stream code | ||
| 3519 | didn't unwind protect this, but it seems like the proper | ||
| 3520 | thing to do. In any case, I don't see how it could harm to | ||
| 3521 | do this -- and it makes cleanup (using unbind_to) easier. */ | ||
| 3522 | record_unwind_protect (unwind_request_sigio, Qnil); | ||
| 3523 | unrequest_sigio (); | ||
| 3524 | } | ||
| 3525 | #endif | ||
| 3526 | |||
| 3527 | /* Do this in case we never enter the for-loop below. */ | 3469 | /* Do this in case we never enter the for-loop below. */ |
| 3528 | count1 = SPECPDL_INDEX (); | 3470 | count1 = SPECPDL_INDEX (); |
| 3529 | s = -1; | 3471 | s = -1; |
| @@ -4651,16 +4593,6 @@ wait_reading_process_output (time_limit, microsecs, read_kbd, do_display, | |||
| 4651 | EMACS_SET_SECS_USECS (timeout, time_limit, microsecs); | 4593 | EMACS_SET_SECS_USECS (timeout, time_limit, microsecs); |
| 4652 | EMACS_ADD_TIME (end_time, end_time, timeout); | 4594 | EMACS_ADD_TIME (end_time, end_time, timeout); |
| 4653 | } | 4595 | } |
| 4654 | #ifdef POLL_INTERRUPTED_SYS_CALL | ||
| 4655 | /* AlainF 5-Jul-1996 | ||
| 4656 | HP-UX 10.10 seem to have problems with signals coming in | ||
| 4657 | Causes "poll: interrupted system call" messages when Emacs is run | ||
| 4658 | in an X window | ||
| 4659 | Turn off periodic alarms (in case they are in use), | ||
| 4660 | and then turn off any other atimers. */ | ||
| 4661 | stop_polling (); | ||
| 4662 | turn_on_atimers (0); | ||
| 4663 | #endif /* POLL_INTERRUPTED_SYS_CALL */ | ||
| 4664 | 4596 | ||
| 4665 | while (1) | 4597 | while (1) |
| 4666 | { | 4598 | { |
| @@ -4975,15 +4907,6 @@ wait_reading_process_output (time_limit, microsecs, read_kbd, do_display, | |||
| 4975 | { | 4907 | { |
| 4976 | if (xerrno == EINTR) | 4908 | if (xerrno == EINTR) |
| 4977 | no_avail = 1; | 4909 | no_avail = 1; |
| 4978 | #ifdef ultrix | ||
| 4979 | /* Ultrix select seems to return ENOMEM when it is | ||
| 4980 | interrupted. Treat it just like EINTR. Bleah. Note | ||
| 4981 | that we want to test for the "ultrix" CPP symbol, not | ||
| 4982 | "__ultrix__"; the latter is only defined under GCC, but | ||
| 4983 | not by DEC's bundled CC. -JimB */ | ||
| 4984 | else if (xerrno == ENOMEM) | ||
| 4985 | no_avail = 1; | ||
| 4986 | #endif | ||
| 4987 | else if (xerrno == EBADF) | 4910 | else if (xerrno == EBADF) |
| 4988 | { | 4911 | { |
| 4989 | #ifdef AIX | 4912 | #ifdef AIX |
| @@ -5295,14 +5218,6 @@ wait_reading_process_output (time_limit, microsecs, read_kbd, do_display, | |||
| 5295 | clear_input_pending (); | 5218 | clear_input_pending (); |
| 5296 | QUIT; | 5219 | QUIT; |
| 5297 | } | 5220 | } |
| 5298 | #ifdef POLL_INTERRUPTED_SYS_CALL | ||
| 5299 | /* AlainF 5-Jul-1996 | ||
| 5300 | HP-UX 10.10 seems to have problems with signals coming in | ||
| 5301 | Causes "poll: interrupted system call" messages when Emacs is run | ||
| 5302 | in an X window | ||
| 5303 | Turn periodic alarms back on */ | ||
| 5304 | start_polling (); | ||
| 5305 | #endif /* POLL_INTERRUPTED_SYS_CALL */ | ||
| 5306 | 5221 | ||
| 5307 | return got_some_input; | 5222 | return got_some_input; |
| 5308 | } | 5223 | } |
| @@ -5712,10 +5627,6 @@ SIGTYPE | |||
| 5712 | send_process_trap () | 5627 | send_process_trap () |
| 5713 | { | 5628 | { |
| 5714 | SIGNAL_THREAD_CHECK (SIGPIPE); | 5629 | SIGNAL_THREAD_CHECK (SIGPIPE); |
| 5715 | #ifdef BSD4_1 | ||
| 5716 | sigrelse (SIGPIPE); | ||
| 5717 | sigrelse (SIGALRM); | ||
| 5718 | #endif /* BSD4_1 */ | ||
| 5719 | sigunblock (sigmask (SIGPIPE)); | 5630 | sigunblock (sigmask (SIGPIPE)); |
| 5720 | longjmp (send_process_frame, 1); | 5631 | longjmp (send_process_frame, 1); |
| 5721 | } | 5632 | } |
| @@ -6784,11 +6695,6 @@ sigchld_handler (signo) | |||
| 6784 | 6695 | ||
| 6785 | SIGNAL_THREAD_CHECK (signo); | 6696 | SIGNAL_THREAD_CHECK (signo); |
| 6786 | 6697 | ||
| 6787 | #ifdef BSD4_1 | ||
| 6788 | extern int sigheld; | ||
| 6789 | sigheld |= sigbit (SIGCHLD); | ||
| 6790 | #endif | ||
| 6791 | |||
| 6792 | while (1) | 6698 | while (1) |
| 6793 | { | 6699 | { |
| 6794 | pid_t pid; | 6700 | pid_t pid; |
| @@ -6817,10 +6723,6 @@ sigchld_handler (signo) | |||
| 6817 | #if defined (USG) && !defined (POSIX_SIGNALS) | 6723 | #if defined (USG) && !defined (POSIX_SIGNALS) |
| 6818 | signal (signo, sigchld_handler); /* WARNING - must come after wait3() */ | 6724 | signal (signo, sigchld_handler); /* WARNING - must come after wait3() */ |
| 6819 | #endif | 6725 | #endif |
| 6820 | #ifdef BSD4_1 | ||
| 6821 | sigheld &= ~sigbit (SIGCHLD); | ||
| 6822 | sigrelse (SIGCHLD); | ||
| 6823 | #endif | ||
| 6824 | errno = old_errno; | 6726 | errno = old_errno; |
| 6825 | return; | 6727 | return; |
| 6826 | } | 6728 | } |
diff --git a/src/s/386bsd.h b/src/s/386bsd.h deleted file mode 100644 index 706fbf23acb..00000000000 --- a/src/s/386bsd.h +++ /dev/null | |||
| @@ -1,27 +0,0 @@ | |||
| 1 | /* s/ file for 386bsd system. */ | ||
| 2 | |||
| 3 | /* Get most of the stuff from bsd4.3 */ | ||
| 4 | #include "bsd4-3.h" | ||
| 5 | |||
| 6 | #undef LIB_STANDARD | ||
| 7 | #define LIB_STANDARD -lc $(GNULIB_VAR) | ||
| 8 | |||
| 9 | /* The following should be set to /netbsd if you are running netbsd > 0.8 | ||
| 10 | Or just link /netbsd -> /386bsd */ | ||
| 11 | #undef KERNEL_FILE | ||
| 12 | #define KERNEL_FILE "/386bsd" | ||
| 13 | |||
| 14 | #define PENDING_OUTPUT_COUNT(FILE) ((FILE)->_p - (FILE)->_bf._base) | ||
| 15 | |||
| 16 | /* Need to use GNU make, as system make has problems */ | ||
| 17 | #define MAKE_COMMAND gmake | ||
| 18 | #define LIBS_DEBUG | ||
| 19 | |||
| 20 | /* For mem-limits.h. */ | ||
| 21 | #define BSD4_2 | ||
| 22 | |||
| 23 | /* This affects a declaration in xrdb.c. */ | ||
| 24 | #define DECLARE_GETPWUID_WITH_UID_T | ||
| 25 | |||
| 26 | /* arch-tag: 8a114892-0863-4285-a4cb-3d66ba2d8e7b | ||
| 27 | (do not change this comment) */ | ||
diff --git a/src/s/aix3-1.h b/src/s/aix3-1.h deleted file mode 100644 index bcc4b10dc7a..00000000000 --- a/src/s/aix3-1.h +++ /dev/null | |||
| @@ -1,210 +0,0 @@ | |||
| 1 | /* Definitions file for GNU Emacs running on IBM AIX version 3.1 | ||
| 2 | Copyright (C) 1985, 1986, 1990, 1999, 2001, 2002, 2003, 2004, | ||
| 3 | 2005, 2006, 2007, 2008 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 3 of the License, or | ||
| 10 | (at your option) 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 GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | |||
| 21 | /* | ||
| 22 | * Define symbols to identify the version of Unix this is. | ||
| 23 | * Define all the symbols that apply correctly. | ||
| 24 | */ | ||
| 25 | |||
| 26 | #define USG /* System III, System V, etc */ | ||
| 27 | #define USG5 | ||
| 28 | |||
| 29 | /* Specify IBM AIX version of system */ | ||
| 30 | |||
| 31 | #ifndef AIX | ||
| 32 | #define AIX | ||
| 33 | #endif | ||
| 34 | |||
| 35 | /* turn off c prototypes */ | ||
| 36 | #ifndef _NO_PROTO | ||
| 37 | #define _NO_PROTO | ||
| 38 | #endif | ||
| 39 | |||
| 40 | /* This symbol should be defined on AIX Version 3 ??????? */ | ||
| 41 | #ifndef _AIX | ||
| 42 | #define _AIX | ||
| 43 | #endif | ||
| 44 | |||
| 45 | /* Specify "_BSD" to invoke Berkeley compatibility in header files */ | ||
| 46 | /*#ifndef _BSD | ||
| 47 | #define _BSD | ||
| 48 | #endif | ||
| 49 | */ | ||
| 50 | |||
| 51 | /* SYSTEM_TYPE should indicate the kind of system you are using. | ||
| 52 | It sets the Lisp variable system-type. */ | ||
| 53 | |||
| 54 | #define SYSTEM_TYPE "aix" | ||
| 55 | |||
| 56 | |||
| 57 | /* nomultiplejobs should be defined if your system's shell | ||
| 58 | does not have "job control" (the ability to stop a program, | ||
| 59 | run some other program, then continue the first one). */ | ||
| 60 | |||
| 61 | /* #define NOMULTIPLEJOBS */ | ||
| 62 | |||
| 63 | /* Default is to set interrupt_input to 0: don't do input buffering within Emacs */ | ||
| 64 | |||
| 65 | /* #define INTERRUPT_INPUT */ | ||
| 66 | |||
| 67 | /* In AIX, you allocate a pty by opening /dev/ptc to get the master side. | ||
| 68 | To get the name of the slave side, you just ttyname() the master side. */ | ||
| 69 | |||
| 70 | #define PTY_ITERATION for (c = 0; !c ; c++) | ||
| 71 | #define PTY_NAME_SPRINTF strcpy (pty_name, "/dev/ptc"); | ||
| 72 | #define PTY_TTY_NAME_SPRINTF strcpy (pty_name, ttyname (fd)); | ||
| 73 | |||
| 74 | /* | ||
| 75 | * Define HAVE_TERMIO if the system provides sysV-style ioctls | ||
| 76 | * for terminal control. | ||
| 77 | */ | ||
| 78 | |||
| 79 | #define HAVE_TERMIOS | ||
| 80 | |||
| 81 | /* | ||
| 82 | * Define HAVE_PTYS if the system supports pty devices. | ||
| 83 | */ | ||
| 84 | |||
| 85 | #define HAVE_PTYS | ||
| 86 | |||
| 87 | /* Define HAVE_SOCKETS if system supports 4.2-compatible sockets. */ | ||
| 88 | |||
| 89 | #define HAVE_SOCKETS | ||
| 90 | |||
| 91 | /* | ||
| 92 | * Define NONSYSTEM_DIR_LIBRARY to make Emacs emulate | ||
| 93 | * The 4.2 opendir, etc., library functions. | ||
| 94 | */ | ||
| 95 | |||
| 96 | /* #define NONSYSTEM_DIR_LIBRARY */ | ||
| 97 | |||
| 98 | /* | ||
| 99 | * Define SYSV_SYSTEM_DIR to use the V.3 getdents/readir | ||
| 100 | * library functions. Almost, but not quite the same as | ||
| 101 | * the 4.2 functions | ||
| 102 | */ | ||
| 103 | |||
| 104 | #define SYSV_SYSTEM_DIR | ||
| 105 | |||
| 106 | /* Define this symbol if your system has the functions bcopy, etc. */ | ||
| 107 | |||
| 108 | #define BSTRING | ||
| 109 | |||
| 110 | /* subprocesses should be defined if you want to | ||
| 111 | have code for asynchronous subprocesses | ||
| 112 | (as used in M-x compile and M-x shell). | ||
| 113 | This is supposed to work now on system V release 2. */ | ||
| 114 | |||
| 115 | #define subprocesses | ||
| 116 | |||
| 117 | /* If your system uses COFF (Common Object File Format) then define the | ||
| 118 | preprocessor symbol "COFF". */ | ||
| 119 | |||
| 120 | /* #define COFF */ | ||
| 121 | |||
| 122 | /* define MAIL_USE_FLOCK if the mailer uses flock | ||
| 123 | to interlock access to /usr/spool/mail/$USER. | ||
| 124 | The alternative is that a lock file named | ||
| 125 | /usr/spool/mail/$USER.lock. */ | ||
| 126 | |||
| 127 | /* #define MAIL_USE_FLOCK */ | ||
| 128 | |||
| 129 | /* Define CLASH_DETECTION if you want lock files to be written | ||
| 130 | so that Emacs can tell instantly when you try to modify | ||
| 131 | a file that someone else has modified in his Emacs. */ | ||
| 132 | |||
| 133 | /* #define CLASH_DETECTION */ | ||
| 134 | |||
| 135 | /* The file containing the kernel's symbol table is called /unix. */ | ||
| 136 | |||
| 137 | #define KERNEL_FILE "/unix" | ||
| 138 | |||
| 139 | /* The symbol in the kernel where the load average is found | ||
| 140 | is named avenrun. */ | ||
| 141 | |||
| 142 | #define LDAV_SYMBOL "avenrun" | ||
| 143 | |||
| 144 | /* Special itemss needed to make Emacs run on this system. */ | ||
| 145 | |||
| 146 | /* | ||
| 147 | * Make the sigsetmask function go away. Don't know what the | ||
| 148 | * ramifications of this are, but doesn't seem possible to | ||
| 149 | * emulate it properly anyway at this point. | ||
| 150 | */ | ||
| 151 | |||
| 152 | #define sigsetmask(mask) /* Null expansion */ | ||
| 153 | |||
| 154 | /* setjmp and longjmp can safely replace _setjmp and _longjmp, | ||
| 155 | but they will run slower. */ | ||
| 156 | |||
| 157 | #define _setjmp setjmp | ||
| 158 | #define _longjmp longjmp | ||
| 159 | |||
| 160 | /* On USG systems these have different names */ | ||
| 161 | |||
| 162 | #define index strchr | ||
| 163 | #define rindex strrchr | ||
| 164 | |||
| 165 | /* USG systems tend to put everything declared static | ||
| 166 | into the initialized data area, which becomes pure after dumping Emacs. | ||
| 167 | Foil this. Emacs carefully avoids static vars inside functions. */ | ||
| 168 | |||
| 169 | #undef static | ||
| 170 | |||
| 171 | /* Compiler bug bites on many systems when default ADDR_CORRECT is used. */ | ||
| 172 | |||
| 173 | /* #define ADDR_CORRECT(x) (x) */ | ||
| 174 | |||
| 175 | #ifndef __GNUC__ | ||
| 176 | #define LINKER cc | ||
| 177 | #endif | ||
| 178 | |||
| 179 | /* Prevent -lg from being used for debugging. Not needed. */ | ||
| 180 | |||
| 181 | #define LIBS_DEBUG | ||
| 182 | |||
| 183 | /* No need to specify -lc when linking. */ | ||
| 184 | |||
| 185 | #define LIB_STANDARD | ||
| 186 | |||
| 187 | /* Use terminfo instead of termcap. */ | ||
| 188 | |||
| 189 | #define TERMINFO | ||
| 190 | |||
| 191 | /* The following definition seems to be needed in AIX version 3.1.6.8. | ||
| 192 | It may not have been needed in certain earlier versions. */ | ||
| 193 | #define HAVE_TCATTR | ||
| 194 | |||
| 195 | #define SYSTEM_MALLOC | ||
| 196 | |||
| 197 | /* Include unistd.h, even though we don't define POSIX. */ | ||
| 198 | #define NEED_UNISTD_H | ||
| 199 | |||
| 200 | /* AIX doesn't define this. */ | ||
| 201 | #define unix 1 | ||
| 202 | |||
| 203 | /* AIX 3.1 has the HFT features. */ | ||
| 204 | #define AIXHFT | ||
| 205 | |||
| 206 | /* For unexaix.c. */ | ||
| 207 | #define ALIGN_DATA_RELOC | ||
| 208 | |||
| 209 | /* arch-tag: bfff798c-542d-4290-91f2-267394c85b7b | ||
| 210 | (do not change this comment) */ | ||
diff --git a/src/s/aix3-2-5.h b/src/s/aix3-2-5.h deleted file mode 100644 index 6c8458cc8a4..00000000000 --- a/src/s/aix3-2-5.h +++ /dev/null | |||
| @@ -1,33 +0,0 @@ | |||
| 1 | /* s- file for building Emacs on AIX 3.2.5. */ | ||
| 2 | |||
| 3 | #include "aix3-2.h" | ||
| 4 | |||
| 5 | /* For AIX, it turns out compiling emacs under AIX 3.2.4 REQUIRES "cc -g" | ||
| 6 | because "cc -O" crashes. Under AIX 3.2.5, "cc -O" is required because | ||
| 7 | "cc -g" crashes. Go figure. --floppy@merlin.mit.edu */ | ||
| 8 | /* The above isn't generally true. If it occurs with some compiler | ||
| 9 | release, seek a fixed version, be it XLC or GCC. The XLC version | ||
| 10 | isn't tied to the OS version on AIX any more than elsewhere. XLC | ||
| 11 | (the IBM compiler) can use -g with -O. (-O3 is also a possibility | ||
| 12 | for the optimization level.) -- fx, after David Edelsohn. */ | ||
| 13 | #undef C_DEBUG_SWITCH | ||
| 14 | #define C_DEBUG_SWITCH -g -O | ||
| 15 | |||
| 16 | /* Perry Smith <pedz@ddivt1.austin.ibm.com> says these are correct. */ | ||
| 17 | #define SIGNALS_VIA_CHARACTERS | ||
| 18 | #define MAIL_USE_LOCKF | ||
| 19 | #define CLASH_DETECTION | ||
| 20 | |||
| 21 | /* Perry Smith <pedz@ddivt1.austin.ibm.com> says these are correct. */ | ||
| 22 | #define POSIX_SIGNALS | ||
| 23 | #undef sigmask | ||
| 24 | #undef sigsetmask | ||
| 25 | #undef _setjmp | ||
| 26 | #undef _longjmp | ||
| 27 | |||
| 28 | /* Bill Woodward <wpwood@austin.ibm.com> says: | ||
| 29 | libIM *must* precede libXm, to avoid getting aixLoadIM error messages. */ | ||
| 30 | #define LIB_MOTIF -lIM -lXm | ||
| 31 | |||
| 32 | /* arch-tag: 692b3acb-5383-4cfb-93f6-378b5c48c75e | ||
| 33 | (do not change this comment) */ | ||
diff --git a/src/s/aix3-2.h b/src/s/aix3-2.h deleted file mode 100644 index 6d6c734c07f..00000000000 --- a/src/s/aix3-2.h +++ /dev/null | |||
| @@ -1,73 +0,0 @@ | |||
| 1 | /* s- file for building Emacs on AIX 3.2. | ||
| 2 | |||
| 3 | Copyright (C) 1999, 2001, 2002, 2003, 2004, 2005, 2006, 2007, | ||
| 4 | 2008 Free Software Foundation, Inc. | ||
| 5 | |||
| 6 | This file is part of GNU Emacs. | ||
| 7 | |||
| 8 | GNU Emacs is free software: you can redistribute it and/or modify | ||
| 9 | it under the terms of the GNU General Public License as published by | ||
| 10 | the Free Software Foundation, either version 3 of the License, or | ||
| 11 | (at your option) any later version. | ||
| 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 | ||
| 19 | along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | ||
| 20 | |||
| 21 | |||
| 22 | #include "aix3-1.h" | ||
| 23 | |||
| 24 | #define AIX3_2 | ||
| 25 | |||
| 26 | /* No need to define this--the header files indicate X11R4, | ||
| 27 | and that's supposedly what 3.2 will come with. */ | ||
| 28 | #undef SPECIFY_X11R4 | ||
| 29 | |||
| 30 | #ifndef __GNUC__ | ||
| 31 | /* Some programs in src produce warnings saying certain subprograms | ||
| 32 | are to comples and need a MAXMEM value greater than 2000 for | ||
| 33 | additional optimization. --nils@exp-math.uni-essen.de */ | ||
| 34 | #define C_SWITCH_SYSTEM -ma -qmaxmem=4000 | ||
| 35 | #endif | ||
| 36 | |||
| 37 | /* Adrian Colley <Adrian.Colley@three.serpentine.com> says this is needed. */ | ||
| 38 | #ifndef NOT_C_CODE | ||
| 39 | #ifndef AIX4 | ||
| 40 | #pragma alloca | ||
| 41 | #endif | ||
| 42 | #endif | ||
| 43 | |||
| 44 | #undef rindex | ||
| 45 | #undef index | ||
| 46 | |||
| 47 | /* With this defined, a gcc-compiled Emacs crashed in realloc under AIX | ||
| 48 | 3.2, and a cc-compiled Emacs works with this undefined. | ||
| 49 | --karl@cs.umb.edu. */ | ||
| 50 | #undef SYSTEM_MALLOC | ||
| 51 | |||
| 52 | /* For AIX, it turns out compiling emacs under AIX 3.2.4 REQUIRES "cc -g" | ||
| 53 | because "cc -O" crashes. Under AIX 3.2.5, "cc -O" is required because | ||
| 54 | "cc -g" crashes. Go figure. --floppy@merlin.mit.edu */ | ||
| 55 | /* See comments about this in aix3-2-5.h. -- fx */ | ||
| 56 | #ifndef __GNUC__ | ||
| 57 | #define C_DEBUG_SWITCH -g -O | ||
| 58 | #endif | ||
| 59 | |||
| 60 | /* The character-composition stuff is broken in X11R5. | ||
| 61 | Even with XIMStatusNothing aliased to XIMStatusNone, | ||
| 62 | tranle@intellicorp.com (Minh Tran-Le) reports that enabling | ||
| 63 | the internationalization code causes the modifier keys C, M and Shift | ||
| 64 | to beep after a mouse click. */ | ||
| 65 | #define X11R5_INHIBIT_I18N | ||
| 66 | |||
| 67 | /* string.h defines rindex as a macro, at least with native cc, so we | ||
| 68 | lose declaring char * rindex without this. | ||
| 69 | It is just a guess which versions of AIX need this definition. */ | ||
| 70 | #undef HAVE_STRING_H | ||
| 71 | |||
| 72 | /* arch-tag: 0935754d-67e1-4697-978a-3e9976da05c3 | ||
| 73 | (do not change this comment) */ | ||
diff --git a/src/s/aix4-1.h b/src/s/aix4-1.h deleted file mode 100644 index 6b8361420a5..00000000000 --- a/src/s/aix4-1.h +++ /dev/null | |||
| @@ -1,65 +0,0 @@ | |||
| 1 | /* | ||
| 2 | Copyright (C) 1999, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 | ||
| 3 | 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 3 of the License, or | ||
| 10 | (at your option) 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 GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | |||
| 21 | #define AIX4_1 | ||
| 22 | |||
| 23 | #include "aix4.h" | ||
| 24 | |||
| 25 | /* olson@mcs.anl.gov says -li18n is needed by -lXm. */ | ||
| 26 | #undef LIB_MOTIF | ||
| 27 | #define LIB_MOTIF -lXm -li18n | ||
| 28 | |||
| 29 | #ifdef __GNUC__ | ||
| 30 | #undef _NO_PROTO | ||
| 31 | #endif | ||
| 32 | |||
| 33 | /* For AIX, it turns out compiling emacs under AIX 3.2.4 REQUIRES "cc -g" | ||
| 34 | because "cc -O" crashes. Under AIX 3.2.5, "cc -O" is required because | ||
| 35 | "cc -g" crashes. Go figure. --floppy@merlin.mit.edu. | ||
| 36 | 4.1 seems to need -g again. -- larry@vaquita.mitra.com. */ | ||
| 37 | /* David Edelsohn <dje@watson.ibm.com> says that this actually depends | ||
| 38 | on the version of XLC, which can't be predicted from the system version. | ||
| 39 | What a mess! */ | ||
| 40 | /* No more of a mess than other systems, GNU+GCC included. See | ||
| 41 | comments in aix3-2-5.h. -- fx */ | ||
| 42 | #if 0 | ||
| 43 | #ifndef __GNUC__ | ||
| 44 | #undef C_DEBUG_SWITCH | ||
| 45 | #undef C_OPTIMIZE_SWITCH | ||
| 46 | #define C_DEBUG_SWITCH -g | ||
| 47 | #endif | ||
| 48 | #endif | ||
| 49 | |||
| 50 | /* The X internationalization stuff is still broken in AIX 4.1, so | ||
| 51 | don't #undef X11R5_INHIBIT_I18N | ||
| 52 | It still causes shift, ctrl, and alt to resend the last character, | ||
| 53 | if it was a control character like tab, enter, backspace, or ESC. | ||
| 54 | Bill_Mann @ PraxisInt.com */ | ||
| 55 | /* #undef X11R5_INHIBIT_I18N */ | ||
| 56 | |||
| 57 | #ifndef HAVE_LIBXMU | ||
| 58 | #define LIBXMU | ||
| 59 | |||
| 60 | /* Unfortunately without libXmu we cannot support EditRes. */ | ||
| 61 | #define NO_EDITRES | ||
| 62 | #endif | ||
| 63 | |||
| 64 | /* arch-tag: 72d598e1-bc3e-48e0-bfd2-693917c3738e | ||
| 65 | (do not change this comment) */ | ||
diff --git a/src/s/aix4-2.h b/src/s/aix4-2.h index c23987d2d9b..2b31e2c8167 100644 --- a/src/s/aix4-2.h +++ b/src/s/aix4-2.h | |||
| @@ -1,6 +1,194 @@ | |||
| 1 | #include "aix4-1.h" | 1 | /* |
| 2 | Copyright (C) 1999, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 | ||
| 3 | Free Software Foundation, Inc. | ||
| 2 | 4 | ||
| 3 | #undef ALIGN_DATA_RELOC | 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 3 of the License, or | ||
| 10 | (at your option) 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 GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | /* | ||
| 21 | * Define symbols to identify the version of Unix this is. | ||
| 22 | * Define all the symbols that apply correctly. | ||
| 23 | */ | ||
| 24 | |||
| 25 | #define USG /* System III, System V, etc */ | ||
| 26 | #define USG5 | ||
| 27 | |||
| 28 | /* This symbol should be defined on AIX Version 3 ??????? */ | ||
| 29 | #ifndef _AIX | ||
| 30 | #define _AIX | ||
| 31 | #endif | ||
| 32 | |||
| 33 | /* SYSTEM_TYPE should indicate the kind of system you are using. | ||
| 34 | It sets the Lisp variable system-type. */ | ||
| 35 | |||
| 36 | #define SYSTEM_TYPE "aix" | ||
| 37 | |||
| 38 | /* In AIX, you allocate a pty by opening /dev/ptc to get the master side. | ||
| 39 | To get the name of the slave side, you just ttyname() the master side. */ | ||
| 40 | |||
| 41 | #define PTY_ITERATION for (c = 0; !c ; c++) | ||
| 42 | #define PTY_NAME_SPRINTF strcpy (pty_name, "/dev/ptc"); | ||
| 43 | #define PTY_TTY_NAME_SPRINTF strcpy (pty_name, ttyname (fd)); | ||
| 44 | |||
| 45 | /* | ||
| 46 | * Define HAVE_TERMIO if the system provides sysV-style ioctls | ||
| 47 | * for terminal control. | ||
| 48 | */ | ||
| 49 | |||
| 50 | #define HAVE_TERMIOS | ||
| 51 | |||
| 52 | /* | ||
| 53 | * Define HAVE_PTYS if the system supports pty devices. | ||
| 54 | */ | ||
| 55 | |||
| 56 | #define HAVE_PTYS | ||
| 57 | |||
| 58 | /* Define HAVE_SOCKETS if system supports 4.2-compatible sockets. */ | ||
| 59 | |||
| 60 | #define HAVE_SOCKETS | ||
| 61 | |||
| 62 | /* | ||
| 63 | * Define NONSYSTEM_DIR_LIBRARY to make Emacs emulate | ||
| 64 | * The 4.2 opendir, etc., library functions. | ||
| 65 | */ | ||
| 66 | |||
| 67 | /* #define NONSYSTEM_DIR_LIBRARY */ | ||
| 68 | |||
| 69 | /* | ||
| 70 | * Define SYSV_SYSTEM_DIR to use the V.3 getdents/readir | ||
| 71 | * library functions. Almost, but not quite the same as | ||
| 72 | * the 4.2 functions | ||
| 73 | */ | ||
| 74 | |||
| 75 | #define SYSV_SYSTEM_DIR | ||
| 76 | |||
| 77 | /* Define this symbol if your system has the functions bcopy, etc. */ | ||
| 78 | |||
| 79 | #define BSTRING | ||
| 80 | |||
| 81 | /* subprocesses should be defined if you want to | ||
| 82 | have code for asynchronous subprocesses | ||
| 83 | (as used in M-x compile and M-x shell). | ||
| 84 | This is supposed to work now on system V release 2. */ | ||
| 85 | |||
| 86 | #define subprocesses | ||
| 87 | |||
| 88 | /* The file containing the kernel's symbol table is called /unix. */ | ||
| 89 | |||
| 90 | #define KERNEL_FILE "/unix" | ||
| 91 | |||
| 92 | /* The symbol in the kernel where the load average is found | ||
| 93 | is named avenrun. */ | ||
| 94 | |||
| 95 | #define LDAV_SYMBOL "avenrun" | ||
| 96 | |||
| 97 | /* Special itemss needed to make Emacs run on this system. */ | ||
| 98 | |||
| 99 | |||
| 100 | |||
| 101 | /* USG systems tend to put everything declared static | ||
| 102 | into the initialized data area, which becomes pure after dumping Emacs. | ||
| 103 | Foil this. Emacs carefully avoids static vars inside functions. */ | ||
| 104 | |||
| 105 | #undef static | ||
| 106 | |||
| 107 | /* Compiler bug bites on many systems when default ADDR_CORRECT is used. */ | ||
| 108 | |||
| 109 | /* #define ADDR_CORRECT(x) (x) */ | ||
| 110 | |||
| 111 | #ifndef __GNUC__ | ||
| 112 | #define LINKER cc | ||
| 113 | #endif | ||
| 114 | |||
| 115 | /* Prevent -lg from being used for debugging. Not needed. */ | ||
| 116 | |||
| 117 | #define LIBS_DEBUG | ||
| 118 | |||
| 119 | /* No need to specify -lc when linking. */ | ||
| 120 | |||
| 121 | #define LIB_STANDARD | ||
| 122 | |||
| 123 | /* Use terminfo instead of termcap. */ | ||
| 124 | |||
| 125 | #define TERMINFO | ||
| 126 | |||
| 127 | /* The following definition seems to be needed in AIX version 3.1.6.8. | ||
| 128 | It may not have been needed in certain earlier versions. */ | ||
| 129 | #define HAVE_TCATTR | ||
| 130 | |||
| 131 | /* Include unistd.h, even though we don't define POSIX. */ | ||
| 132 | #define NEED_UNISTD_H | ||
| 133 | |||
| 134 | /* AIX doesn't define this. */ | ||
| 135 | #define unix 1 | ||
| 136 | |||
| 137 | #ifndef __GNUC__ | ||
| 138 | /* Some programs in src produce warnings saying certain subprograms | ||
| 139 | are to comples and need a MAXMEM value greater than 2000 for | ||
| 140 | additional optimization. --nils@exp-math.uni-essen.de */ | ||
| 141 | #define C_SWITCH_SYSTEM -ma -qmaxmem=4000 | ||
| 142 | #endif | ||
| 143 | |||
| 144 | /* The character-composition stuff is broken in X11R5. | ||
| 145 | Even with XIMStatusNothing aliased to XIMStatusNone, | ||
| 146 | tranle@intellicorp.com (Minh Tran-Le) reports that enabling | ||
| 147 | the internationalization code causes the modifier keys C, M and Shift | ||
| 148 | to beep after a mouse click. */ | ||
| 149 | #define X11R5_INHIBIT_I18N | ||
| 150 | |||
| 151 | /* string.h defines rindex as a macro, at least with native cc, so we | ||
| 152 | lose declaring char * rindex without this. | ||
| 153 | It is just a guess which versions of AIX need this definition. */ | ||
| 154 | #undef HAVE_STRING_H | ||
| 155 | |||
| 156 | /* For AIX, it turns out compiling emacs under AIX 3.2.4 REQUIRES "cc -g" | ||
| 157 | because "cc -O" crashes. Under AIX 3.2.5, "cc -O" is required because | ||
| 158 | "cc -g" crashes. Go figure. --floppy@merlin.mit.edu */ | ||
| 159 | /* The above isn't generally true. If it occurs with some compiler | ||
| 160 | release, seek a fixed version, be it XLC or GCC. The XLC version | ||
| 161 | isn't tied to the OS version on AIX any more than elsewhere. XLC | ||
| 162 | (the IBM compiler) can use -g with -O. (-O3 is also a possibility | ||
| 163 | for the optimization level.) -- fx, after David Edelsohn. */ | ||
| 164 | #define C_DEBUG_SWITCH -g -O | ||
| 165 | |||
| 166 | /* Perry Smith <pedz@ddivt1.austin.ibm.com> says these are correct. */ | ||
| 167 | #define SIGNALS_VIA_CHARACTERS | ||
| 168 | #define MAIL_USE_LOCKF | ||
| 169 | #define CLASH_DETECTION | ||
| 170 | |||
| 171 | /* Perry Smith <pedz@ddivt1.austin.ibm.com> says these are correct. */ | ||
| 172 | #define POSIX_SIGNALS | ||
| 173 | #undef sigmask | ||
| 174 | |||
| 175 | /* Dave Love <d.love@dl.ac.uk> reported this as needed on AIX 4.1. | ||
| 176 | It is just a guess which versions of AIX need this definition. */ | ||
| 177 | #define HAVE_WAIT_HEADER | ||
| 178 | |||
| 179 | /* Specify the type that the 3rd arg of `accept' points to. | ||
| 180 | It is just a guess which versions of AIX need this definition. */ | ||
| 181 | #define SOCKLEN_TYPE int | ||
| 182 | |||
| 183 | /* olson@mcs.anl.gov says -li18n is needed by -lXm. */ | ||
| 184 | #define LIB_MOTIF -lXm -li18n | ||
| 185 | |||
| 186 | #ifndef HAVE_LIBXMU | ||
| 187 | #define LIBXMU | ||
| 188 | |||
| 189 | /* Unfortunately without libXmu we cannot support EditRes. */ | ||
| 190 | #define NO_EDITRES | ||
| 191 | #endif | ||
| 4 | 192 | ||
| 5 | /* On AIX Emacs uses the gmalloc.c malloc implementation. But given | 193 | /* On AIX Emacs uses the gmalloc.c malloc implementation. But given |
| 6 | the way this system works, libc functions that return malloced | 194 | the way this system works, libc functions that return malloced |
| @@ -20,19 +208,5 @@ | |||
| 20 | */ | 208 | */ |
| 21 | #define BROKEN_GET_CURRENT_DIR_NAME 1 | 209 | #define BROKEN_GET_CURRENT_DIR_NAME 1 |
| 22 | 210 | ||
| 23 | /* aix3-1.h defined _NO_PROTO, probably to work around an AIX compiler | ||
| 24 | that did not handle prototypes. On (at least) AIX 5.2, this causes | ||
| 25 | the proper prototype to be thrown away for lseek64, so compiled | ||
| 26 | Lisp files do not load correctly and compilation fails. | ||
| 27 | |||
| 28 | The AIX compiler should have learned about function prototypes long | ||
| 29 | ago, so we can probably go ahead and undefine _NO_PROTO. However, | ||
| 30 | if someone can demonstrate that this problem still exists for AIX | ||
| 31 | 4, this should be moved into a new file (aix5.h). | ||
| 32 | */ | ||
| 33 | |||
| 34 | #undef _NO_PROTO | ||
| 35 | |||
| 36 | |||
| 37 | /* arch-tag: 38fe75ea-6aef-42bd-8449-bc34d921a562 | 211 | /* arch-tag: 38fe75ea-6aef-42bd-8449-bc34d921a562 |
| 38 | (do not change this comment) */ | 212 | (do not change this comment) */ |
diff --git a/src/s/aix4.h b/src/s/aix4.h deleted file mode 100644 index b2ed15f75ea..00000000000 --- a/src/s/aix4.h +++ /dev/null | |||
| @@ -1,17 +0,0 @@ | |||
| 1 | #define AIX4 | ||
| 2 | |||
| 3 | #include "aix3-2-5.h" | ||
| 4 | |||
| 5 | /* AIX 4 does not have HFT any more. */ | ||
| 6 | #undef AIXHFT | ||
| 7 | |||
| 8 | /* Dave Love <d.love@dl.ac.uk> reported this as needed on AIX 4.1. | ||
| 9 | It is just a guess which versions of AIX need this definition. */ | ||
| 10 | #define HAVE_WAIT_HEADER | ||
| 11 | |||
| 12 | /* Specify the type that the 3rd arg of `accept' points to. | ||
| 13 | It is just a guess which versions of AIX need this definition. */ | ||
| 14 | #define SOCKLEN_TYPE int | ||
| 15 | |||
| 16 | /* arch-tag: b9471dfc-ccdc-4980-a8a1-80c7627ec6b2 | ||
| 17 | (do not change this comment) */ | ||
diff --git a/src/s/bsd4-3.h b/src/s/bsd-common.h index 2a94916eb19..2a94916eb19 100644 --- a/src/s/bsd4-3.h +++ b/src/s/bsd-common.h | |||
diff --git a/src/s/bsd386.h b/src/s/bsd386.h deleted file mode 100644 index ee869ac62d0..00000000000 --- a/src/s/bsd386.h +++ /dev/null | |||
| @@ -1,67 +0,0 @@ | |||
| 1 | /* s/ file for bsd386 system. | ||
| 2 | |||
| 3 | Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, | ||
| 4 | 2008 Free Software Foundation, Inc. | ||
| 5 | |||
| 6 | This file is part of GNU Emacs. | ||
| 7 | |||
| 8 | GNU Emacs is free software: you can redistribute it and/or modify | ||
| 9 | it under the terms of the GNU General Public License as published by | ||
| 10 | the Free Software Foundation, either version 3 of the License, or | ||
| 11 | (at your option) any later version. | ||
| 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 | ||
| 19 | along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | ||
| 20 | |||
| 21 | |||
| 22 | #include "bsd4-3.h" | ||
| 23 | |||
| 24 | #ifndef __bsdi__ | ||
| 25 | #define __bsdi__ 1 | ||
| 26 | #endif | ||
| 27 | |||
| 28 | #define DECLARE_GETPWUID_WITH_UID_T | ||
| 29 | |||
| 30 | #define SIGNALS_VIA_CHARACTERS | ||
| 31 | |||
| 32 | #define PENDING_OUTPUT_COUNT(FILE) ((FILE)->_p - (FILE)->_bf._base) | ||
| 33 | #define A_TEXT_OFFSET(x) (sizeof (struct exec)) | ||
| 34 | #define A_TEXT_SEEK(hdr) (N_TXTOFF(hdr) + A_TEXT_OFFSET(hdr)) | ||
| 35 | |||
| 36 | #define LIBS_DEBUG | ||
| 37 | #define LIB_X11_LIB -L/usr/X11/lib -lX11 | ||
| 38 | #define LIBS_SYSTEM -lutil -lkvm -lcompat | ||
| 39 | |||
| 40 | #define HAVE_GETLOADAVG 1 | ||
| 41 | |||
| 42 | #undef BSD_PGRPS | ||
| 43 | |||
| 44 | /* System uses OXTABS instead of the expected TAB3. | ||
| 45 | (Copied from netbsd.h.) */ | ||
| 46 | #define TABDLY OXTABS | ||
| 47 | #define TAB3 OXTABS | ||
| 48 | |||
| 49 | #define SYSV_SYSTEM_DIR | ||
| 50 | |||
| 51 | #define HAVE_TERMIOS | ||
| 52 | #define NO_TERMIO | ||
| 53 | |||
| 54 | #define WAITTYPE int | ||
| 55 | /* get this since it won't be included if WAITTYPE is defined */ | ||
| 56 | #ifdef emacs | ||
| 57 | #include <sys/wait.h> | ||
| 58 | #endif | ||
| 59 | #define WRETCODE(w) WEXITSTATUS(w) | ||
| 60 | #ifndef WCOREDUMP | ||
| 61 | #define WCOREDUMP(w) ((w) & 0200) | ||
| 62 | #endif | ||
| 63 | |||
| 64 | #define GETPGRP_NO_ARG 1 | ||
| 65 | |||
| 66 | /* arch-tag: 867e3bb8-e9df-4763-9c82-8f4accb8209e | ||
| 67 | (do not change this comment) */ | ||
diff --git a/src/s/bsd4-1.h b/src/s/bsd4-1.h deleted file mode 100644 index 9a08b5ea9c7..00000000000 --- a/src/s/bsd4-1.h +++ /dev/null | |||
| @@ -1,131 +0,0 @@ | |||
| 1 | /* Definitions file for GNU Emacs running on bsd 4.1. | ||
| 2 | Copyright (C) 1985, 1986, 1999, 2001, 2002, 2003, 2004, 2005, 2006, | ||
| 3 | 2007, 2008 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 3 of the License, or | ||
| 10 | (at your option) 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 GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | |||
| 21 | /* | ||
| 22 | * Define symbols to identify the version of Unix this is. | ||
| 23 | * Define all the symbols that apply correctly. | ||
| 24 | */ | ||
| 25 | |||
| 26 | #define BSD4_1 | ||
| 27 | |||
| 28 | #define BSD_SYSTEM | ||
| 29 | |||
| 30 | /* SYSTEM_TYPE should indicate the kind of system you are using. | ||
| 31 | It sets the Lisp variable system-type. */ | ||
| 32 | |||
| 33 | #define SYSTEM_TYPE "berkeley-unix" | ||
| 34 | |||
| 35 | /* nomultiplejobs should be defined if your system's shell | ||
| 36 | does not have "job control" (the ability to stop a program, | ||
| 37 | run some other program, then continue the first one). */ | ||
| 38 | |||
| 39 | /* #define NOMULTIPLEJOBS */ | ||
| 40 | |||
| 41 | /* Default is to set interrupt_input to 1: do input buffering within Emacs */ | ||
| 42 | |||
| 43 | #define INTERRUPT_INPUT | ||
| 44 | |||
| 45 | /* First pty name is /dev/ptyp0. */ | ||
| 46 | |||
| 47 | #define FIRST_PTY_LETTER 'p' | ||
| 48 | |||
| 49 | /* | ||
| 50 | * Define HAVE_PTYS if the system supports pty devices. | ||
| 51 | */ | ||
| 52 | |||
| 53 | /* #define HAVE_PTYS */ | ||
| 54 | |||
| 55 | /* Define this macro if system defines a type `union wait'. */ | ||
| 56 | |||
| 57 | #define HAVE_UNION_WAIT | ||
| 58 | |||
| 59 | /* Define HAVE_SOCKETS if system supports 4.2-compatible sockets. */ | ||
| 60 | |||
| 61 | /* #define HAVE_SOCKETS */ | ||
| 62 | |||
| 63 | /* | ||
| 64 | * Define NONSYSTEM_DIR_LIBRARY to make Emacs emulate | ||
| 65 | * The 4.2 opendir, etc., library functions. | ||
| 66 | */ | ||
| 67 | |||
| 68 | #define NONSYSTEM_DIR_LIBRARY | ||
| 69 | |||
| 70 | /* Define this symbol if your system has the functions bcopy, etc. */ | ||
| 71 | |||
| 72 | /* #define BSTRING */ | ||
| 73 | |||
| 74 | /* subprocesses should be defined if you want to | ||
| 75 | have code for asynchronous subprocesses | ||
| 76 | (as used in M-x compile and M-x shell). | ||
| 77 | This is generally OS dependent, and not supported | ||
| 78 | under most USG systems. */ | ||
| 79 | |||
| 80 | #define subprocesses | ||
| 81 | |||
| 82 | /* If your system uses COFF (Common Object File Format) then define the | ||
| 83 | preprocessor symbol "COFF". */ | ||
| 84 | |||
| 85 | /* #define COFF */ | ||
| 86 | |||
| 87 | /* define MAIL_USE_FLOCK if the mailer uses flock | ||
| 88 | to interlock access to /usr/spool/mail/$USER. | ||
| 89 | The alternative is that a lock file named | ||
| 90 | /usr/spool/mail/$USER.lock. */ | ||
| 91 | |||
| 92 | /* #define MAIL_USE_FLOCK */ | ||
| 93 | |||
| 94 | /* Define CLASH_DETECTION if you want lock files to be written | ||
| 95 | so that Emacs can tell instantly when you try to modify | ||
| 96 | a file that someone else has modified in his Emacs. */ | ||
| 97 | |||
| 98 | #undef CLASH_DETECTION /* Might work; not tried yet. */ | ||
| 99 | |||
| 100 | /* The file containing the kernel's symbol table is called /vmunix. */ | ||
| 101 | |||
| 102 | #define KERNEL_FILE "/vmunix" | ||
| 103 | |||
| 104 | /* The symbol in the kernel where the load average is found | ||
| 105 | is named _avenrun. */ | ||
| 106 | |||
| 107 | #define LDAV_SYMBOL "_avenrun" | ||
| 108 | |||
| 109 | /* Special hacks needed to make Emacs run on this system. */ | ||
| 110 | |||
| 111 | /* Make the function `signal' act as in 4.2. */ | ||
| 112 | |||
| 113 | #define signal sigset | ||
| 114 | |||
| 115 | #define _longjmp longjmp | ||
| 116 | #define _setjmp setjmp | ||
| 117 | |||
| 118 | #define lstat stat | ||
| 119 | |||
| 120 | /* Names of flags for open. */ | ||
| 121 | #define O_RDONLY 0 | ||
| 122 | #define O_WRONLY 1 | ||
| 123 | #define O_RDWR 2 | ||
| 124 | #define O_EXCL 2000 | ||
| 125 | #define O_CREAT 1000 | ||
| 126 | |||
| 127 | /* Special library needed for linking for 4.1. */ | ||
| 128 | #define LIBS_SYSTEM -ljobs | ||
| 129 | |||
| 130 | /* arch-tag: de56716a-ed9b-4851-a5c5-c882efaf9931 | ||
| 131 | (do not change this comment) */ | ||
diff --git a/src/s/bsd4-2.h b/src/s/bsd4-2.h deleted file mode 100644 index 665e12a5352..00000000000 --- a/src/s/bsd4-2.h +++ /dev/null | |||
| @@ -1,122 +0,0 @@ | |||
| 1 | /* Definitions file for GNU Emacs running on bsd 4.2 | ||
| 2 | Copyright (C) 1985, 1986, 1994, 2001, 2002, 2003, 2004, 2005, 2006, | ||
| 3 | 2007, 2008 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 3 of the License, or | ||
| 10 | (at your option) 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 GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | |||
| 21 | /* | ||
| 22 | * Define symbols to identify the version of Unix this is. | ||
| 23 | * Define all the symbols that apply correctly. | ||
| 24 | */ | ||
| 25 | |||
| 26 | #ifndef BSD4_2 | ||
| 27 | #define BSD4_2 1 | ||
| 28 | #endif /* BSD4_2 */ | ||
| 29 | |||
| 30 | #ifndef BSD_SYSTEM | ||
| 31 | #define BSD_SYSTEM 42 | ||
| 32 | #endif /* BSD_SYSTEM */ | ||
| 33 | |||
| 34 | /* SYSTEM_TYPE should indicate the kind of system you are using. | ||
| 35 | It sets the Lisp variable system-type. */ | ||
| 36 | |||
| 37 | #define SYSTEM_TYPE "berkeley-unix" | ||
| 38 | |||
| 39 | /* nomultiplejobs should be defined if your system's shell | ||
| 40 | does not have "job control" (the ability to stop a program, | ||
| 41 | run some other program, then continue the first one). */ | ||
| 42 | |||
| 43 | /* #define NOMULTIPLEJOBS */ | ||
| 44 | |||
| 45 | /* Default is to set interrupt_input to 1: do input buffering within Emacs */ | ||
| 46 | |||
| 47 | #define INTERRUPT_INPUT | ||
| 48 | |||
| 49 | /* First pty name is /dev/ptyp0. */ | ||
| 50 | |||
| 51 | #define FIRST_PTY_LETTER 'p' | ||
| 52 | |||
| 53 | /* | ||
| 54 | * Define HAVE_PTYS if the system supports pty devices. | ||
| 55 | */ | ||
| 56 | |||
| 57 | #define HAVE_PTYS | ||
| 58 | |||
| 59 | /* Define this macro if system defines a type `union wait'. */ | ||
| 60 | |||
| 61 | #define HAVE_UNION_WAIT | ||
| 62 | |||
| 63 | /* Define HAVE_SOCKETS if system supports 4.2-compatible sockets. */ | ||
| 64 | |||
| 65 | #define HAVE_SOCKETS | ||
| 66 | |||
| 67 | /* | ||
| 68 | * Define NONSYSTEM_DIR_LIBRARY to make Emacs emulate | ||
| 69 | * The 4.2 opendir, etc., library functions. | ||
| 70 | */ | ||
| 71 | |||
| 72 | /* #define NONSYSTEM_DIR_LIBRARY */ | ||
| 73 | |||
| 74 | /* Define this symbol if your system has the functions bcopy, etc. */ | ||
| 75 | |||
| 76 | #define BSTRING | ||
| 77 | |||
| 78 | /* subprocesses should be defined if you want to | ||
| 79 | have code for asynchronous subprocesses | ||
| 80 | (as used in M-x compile and M-x shell). | ||
| 81 | This is generally OS dependent, and not supported | ||
| 82 | under most USG systems. */ | ||
| 83 | |||
| 84 | #define subprocesses | ||
| 85 | |||
| 86 | /* If your system uses COFF (Common Object File Format) then define the | ||
| 87 | preprocessor symbol "COFF". */ | ||
| 88 | |||
| 89 | /* #define COFF */ | ||
| 90 | |||
| 91 | /* define MAIL_USE_FLOCK if the mailer uses flock | ||
| 92 | to interlock access to /usr/spool/mail/$USER. | ||
| 93 | The alternative is that a lock file named | ||
| 94 | /usr/spool/mail/$USER.lock. */ | ||
| 95 | |||
| 96 | /* #define MAIL_USE_FLOCK */ | ||
| 97 | |||
| 98 | /* Define CLASH_DETECTION if you want lock files to be written | ||
| 99 | so that Emacs can tell instantly when you try to modify | ||
| 100 | a file that someone else has modified in his Emacs. */ | ||
| 101 | |||
| 102 | #define CLASH_DETECTION | ||
| 103 | |||
| 104 | /* The file containing the kernel's symbol table is called /vmunix. */ | ||
| 105 | |||
| 106 | #define KERNEL_FILE "/vmunix" | ||
| 107 | |||
| 108 | /* The symbol in the kernel where the load average is found | ||
| 109 | is named _avenrun. */ | ||
| 110 | |||
| 111 | #define LDAV_SYMBOL "_avenrun" | ||
| 112 | |||
| 113 | /* Send signals to subprocesses by "typing" special chars at them. */ | ||
| 114 | |||
| 115 | #define SIGNALS_VIA_CHARACTERS | ||
| 116 | |||
| 117 | /* Process groups work in the traditional BSD manner. */ | ||
| 118 | |||
| 119 | #define BSD_PGRPS | ||
| 120 | |||
| 121 | /* arch-tag: 38ca640f-549e-4726-a257-71048ab4c480 | ||
| 122 | (do not change this comment) */ | ||
diff --git a/src/s/bsdos2-1.h b/src/s/bsdos2-1.h deleted file mode 100644 index 244d58f5137..00000000000 --- a/src/s/bsdos2-1.h +++ /dev/null | |||
| @@ -1,9 +0,0 @@ | |||
| 1 | /* s/ file for BSDI BSD/OS 2.1 system. */ | ||
| 2 | |||
| 3 | #include "bsdos2.h" | ||
| 4 | |||
| 5 | #undef LIB_X11_LIB | ||
| 6 | #define LIB_X11_LIB -L/usr/X11/lib -lX11 -lipc | ||
| 7 | |||
| 8 | /* arch-tag: cf1ada4a-cdbf-452b-a264-ff84dd523e97 | ||
| 9 | (do not change this comment) */ | ||
diff --git a/src/s/bsdos2.h b/src/s/bsdos2.h deleted file mode 100644 index 9e1e82fd75a..00000000000 --- a/src/s/bsdos2.h +++ /dev/null | |||
| @@ -1,14 +0,0 @@ | |||
| 1 | /* s/ file for BSDI BSD/OS 2.0 system. */ | ||
| 2 | |||
| 3 | #include "bsd386.h" | ||
| 4 | |||
| 5 | #define TEXT_START 0x1020 /* for QMAGIC */ | ||
| 6 | #define START_FILES pre-crt0.o /usr/lib/crt0.o | ||
| 7 | #define HAVE_TERMIOS | ||
| 8 | #define NO_TERMIO | ||
| 9 | |||
| 10 | #undef KERNEL_FILE | ||
| 11 | #define KERNEL_FILE "/bsd" | ||
| 12 | |||
| 13 | /* arch-tag: 25ce1827-1511-4305-9058-24dd2118b5b4 | ||
| 14 | (do not change this comment) */ | ||
diff --git a/src/s/bsdos3.h b/src/s/bsdos3.h deleted file mode 100644 index 20a9704e14f..00000000000 --- a/src/s/bsdos3.h +++ /dev/null | |||
| @@ -1,9 +0,0 @@ | |||
| 1 | /* s/ file for BSDI BSD/OS 3.0 system. */ | ||
| 2 | |||
| 3 | #include "bsdos2.h" | ||
| 4 | |||
| 5 | #undef LIBS_SYSTEM | ||
| 6 | #define LIBS_SYSTEM -lkvm | ||
| 7 | |||
| 8 | /* arch-tag: 726766f3-5a62-48bf-8e21-3b21ec6abe6f | ||
| 9 | (do not change this comment) */ | ||
diff --git a/src/s/bsdos4.h b/src/s/bsdos4.h deleted file mode 100644 index 540e4a7d790..00000000000 --- a/src/s/bsdos4.h +++ /dev/null | |||
| @@ -1,26 +0,0 @@ | |||
| 1 | /* s/ file for BSDI BSD/OS 4.0 system. */ | ||
| 2 | |||
| 3 | #include "bsdos3.h" | ||
| 4 | |||
| 5 | /* BSD/OS 4.1 and later have ncurses */ | ||
| 6 | #ifdef HAVE_LIBNCURSES | ||
| 7 | #define TERMINFO | ||
| 8 | #define LIBS_TERMCAP -lncurses | ||
| 9 | #endif /* HAVE_LIBNCURSES */ | ||
| 10 | |||
| 11 | /* copied from freebsd.h */ | ||
| 12 | #ifdef __ELF__ | ||
| 13 | |||
| 14 | #define LD_SWITCH_SYSTEM | ||
| 15 | #undef START_FILES | ||
| 16 | #define START_FILES \ | ||
| 17 | pre-crt0.o /usr/lib/crt1.o /usr/lib/crti.o /usr/lib/crtbegin.o | ||
| 18 | #define UNEXEC unexelf.o | ||
| 19 | #define LIB_STANDARD -lgcc -lc -lgcc /usr/lib/crtend.o /usr/lib/crtn.o | ||
| 20 | #undef LIB_GCC | ||
| 21 | #define LIB_GCC | ||
| 22 | |||
| 23 | #endif /* not __ELF__ */ | ||
| 24 | |||
| 25 | /* arch-tag: 7659632a-a879-4153-bb8b-3765a1463ca1 | ||
| 26 | (do not change this comment) */ | ||
diff --git a/src/s/darwin.h b/src/s/darwin.h index d7f7cf2234f..aa509b75af5 100644 --- a/src/s/darwin.h +++ b/src/s/darwin.h | |||
| @@ -23,12 +23,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | |||
| 23 | * Define all the symbols that apply correctly. | 23 | * Define all the symbols that apply correctly. |
| 24 | */ | 24 | */ |
| 25 | 25 | ||
| 26 | /* #define UNIPLUS */ | ||
| 27 | /* #define USG5 */ | ||
| 28 | /* #define USG */ | ||
| 29 | /* #define HPUX */ | ||
| 30 | /* #define UMAX */ | ||
| 31 | /* #define BSD4_1 */ | ||
| 32 | #define BSD4_2 | 26 | #define BSD4_2 |
| 33 | /* BSD4_3 and BSD4_4 are already defined in sys/param.h */ | 27 | /* BSD4_3 and BSD4_4 are already defined in sys/param.h */ |
| 34 | /* #define BSD4_3 */ | 28 | /* #define BSD4_3 */ |
diff --git a/src/s/freebsd.h b/src/s/freebsd.h index 9a21b0931ee..843a34b6fe0 100644 --- a/src/s/freebsd.h +++ b/src/s/freebsd.h | |||
| @@ -40,19 +40,8 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | |||
| 40 | #define NO_SHARED_LIBS | 40 | #define NO_SHARED_LIBS |
| 41 | #endif | 41 | #endif |
| 42 | 42 | ||
| 43 | 43 | /* Get most of the stuff from bsd-common */ | |
| 44 | #if 0 /* This much, alone, seemed sufficient as of 19.23. | 44 | #include "bsd-common.h" |
| 45 | But it seems better to be independent of netbsd.h. */ | ||
| 46 | #include "netbsd.h" | ||
| 47 | |||
| 48 | #undef LIB_GCC | ||
| 49 | #define LIB_GCC -lgcc | ||
| 50 | #undef NEED_ERRNO | ||
| 51 | #endif /* 0 */ | ||
| 52 | |||
| 53 | |||
| 54 | /* Get most of the stuff from bsd4.3 */ | ||
| 55 | #include "bsd4-3.h" | ||
| 56 | 45 | ||
| 57 | /* For mem-limits.h. */ | 46 | /* For mem-limits.h. */ |
| 58 | #define BSD4_2 | 47 | #define BSD4_2 |
| @@ -161,7 +150,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | |||
| 161 | ioctl TIOCSCTTY. */ | 150 | ioctl TIOCSCTTY. */ |
| 162 | #define DONT_REOPEN_PTY | 151 | #define DONT_REOPEN_PTY |
| 163 | 152 | ||
| 164 | /* CLASH_DETECTION is defined in bsd4-3.h. | 153 | /* CLASH_DETECTION is defined in bsd-common.h. |
| 165 | In FreeBSD 2.1.5 (and other 2.1.x), this results useless symbolic links | 154 | In FreeBSD 2.1.5 (and other 2.1.x), this results useless symbolic links |
| 166 | remaining in /tmp or other directories with +t bit. | 155 | remaining in /tmp or other directories with +t bit. |
| 167 | To avoid this problem, you could #undef it to use no file lock. */ | 156 | To avoid this problem, you could #undef it to use no file lock. */ |
diff --git a/src/s/gnu.h b/src/s/gnu.h index fbc3f944e66..b5a839ec98a 100644 --- a/src/s/gnu.h +++ b/src/s/gnu.h | |||
| @@ -18,8 +18,8 @@ You should have received a copy of the GNU General Public License | |||
| 18 | along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | 18 | along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ |
| 19 | 19 | ||
| 20 | 20 | ||
| 21 | /* Get most of the stuff from bsd4.3 */ | 21 | /* Get most of the stuff from bsd-common */ |
| 22 | #include "bsd4-3.h" | 22 | #include "bsd-common.h" |
| 23 | 23 | ||
| 24 | /* For mem-limits.h. */ | 24 | /* For mem-limits.h. */ |
| 25 | #define BSD4_2 | 25 | #define BSD4_2 |
diff --git a/src/s/hpux.h b/src/s/hpux.h deleted file mode 100644 index 785fff12623..00000000000 --- a/src/s/hpux.h +++ /dev/null | |||
| @@ -1,218 +0,0 @@ | |||
| 1 | /* Definitions file for GNU Emacs running on HPUX release 7.0. | ||
| 2 | Based on AT&T System V.2. | ||
| 3 | Copyright (C) 1985, 1986, 1999, 2001, 2002, 2003, 2004, 2005, 2006, | ||
| 4 | 2007, 2008 Free Software Foundation, Inc. | ||
| 5 | |||
| 6 | This file is part of GNU Emacs. | ||
| 7 | |||
| 8 | GNU Emacs is free software: you can redistribute it and/or modify | ||
| 9 | it under the terms of the GNU General Public License as published by | ||
| 10 | the Free Software Foundation, either version 3 of the License, or | ||
| 11 | (at your option) any later version. | ||
| 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 | ||
| 19 | along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | ||
| 20 | |||
| 21 | |||
| 22 | /* | ||
| 23 | * Define symbols to identify the version of Unix this is. | ||
| 24 | * Define all the symbols that apply correctly. | ||
| 25 | */ | ||
| 26 | |||
| 27 | #define USG /* System III, System V, etc */ | ||
| 28 | |||
| 29 | #define USG5 | ||
| 30 | |||
| 31 | #define HPUX | ||
| 32 | |||
| 33 | /* SYSTEM_TYPE should indicate the kind of system you are using. | ||
| 34 | It sets the Lisp variable system-type. */ | ||
| 35 | |||
| 36 | #define SYSTEM_TYPE "hpux" | ||
| 37 | |||
| 38 | /* `nomultiplejobs' should be defined if your system's shell | ||
| 39 | does not have "job control" (the ability to stop a program, | ||
| 40 | run some other program, then continue the first one). | ||
| 41 | |||
| 42 | On hpux this depends on the precise kind of machine in use, | ||
| 43 | so the m- file defines this symbol if appropriate. */ | ||
| 44 | |||
| 45 | /* Default is to set interrupt_input to 0: don't do input buffering within Emacs */ | ||
| 46 | |||
| 47 | /* #define INTERRUPT_INPUT */ | ||
| 48 | |||
| 49 | /* Letter to use in finding device name of first pty, | ||
| 50 | if system supports pty's. 'p' means it is /dev/ptym/ptyp0 */ | ||
| 51 | |||
| 52 | #define FIRST_PTY_LETTER 'p' | ||
| 53 | |||
| 54 | /* | ||
| 55 | * Define HAVE_TERMIO if the system provides sysV-style ioctls | ||
| 56 | * for terminal control. | ||
| 57 | */ | ||
| 58 | |||
| 59 | #define HAVE_TERMIO | ||
| 60 | |||
| 61 | /* | ||
| 62 | * Define HAVE_PTYS if the system supports pty devices. | ||
| 63 | */ | ||
| 64 | |||
| 65 | #define HAVE_PTYS | ||
| 66 | |||
| 67 | /* Define HAVE_SOCKETS if system supports 4.2-compatible sockets. */ | ||
| 68 | |||
| 69 | #define HAVE_SOCKETS | ||
| 70 | |||
| 71 | /* | ||
| 72 | * Define NONSYSTEM_DIR_LIBRARY to make Emacs emulate | ||
| 73 | * The 4.2 opendir, etc., library functions. | ||
| 74 | */ | ||
| 75 | |||
| 76 | /* #define NONSYSTEM_DIR_LIBRARY */ | ||
| 77 | |||
| 78 | /* Define this symbol if your system has the functions bcopy, etc. | ||
| 79 | * s800 and later versions of s300 (s200) kernels have equivalents | ||
| 80 | * of the BSTRING functions of BSD. If your s200 kernel doesn't have | ||
| 81 | * em comment out this section. | ||
| 82 | */ | ||
| 83 | |||
| 84 | #define BSTRING | ||
| 85 | |||
| 86 | /* subprocesses should be defined if you want to | ||
| 87 | have code for asynchronous subprocesses | ||
| 88 | (as used in M-x compile and M-x shell). | ||
| 89 | This is generally OS dependent, and not supported | ||
| 90 | under most USG systems. */ | ||
| 91 | |||
| 92 | #define subprocesses | ||
| 93 | |||
| 94 | /* If your system uses COFF (Common Object File Format) then define the | ||
| 95 | preprocessor symbol "COFF". */ | ||
| 96 | |||
| 97 | /* #define COFF */ | ||
| 98 | |||
| 99 | /* define MAIL_USE_FLOCK if the mailer uses flock | ||
| 100 | to interlock access to /usr/spool/mail/$USER. | ||
| 101 | The alternative is that a lock file named | ||
| 102 | /usr/spool/mail/$USER.lock. */ | ||
| 103 | |||
| 104 | /* #define MAIL_USE_FLOCK */ | ||
| 105 | |||
| 106 | /* Say we have the SYSV style of interprocess communication. */ | ||
| 107 | |||
| 108 | #define HAVE_SYSVIPC | ||
| 109 | |||
| 110 | /* Define CLASH_DETECTION if you want lock files to be written | ||
| 111 | so that Emacs can tell instantly when you try to modify | ||
| 112 | a file that someone else has modified in his Emacs. */ | ||
| 113 | |||
| 114 | #define CLASH_DETECTION | ||
| 115 | |||
| 116 | /* The file containing the kernel's symbol table is called /hp-ux. */ | ||
| 117 | |||
| 118 | #define KERNEL_FILE "/hp-ux" | ||
| 119 | |||
| 120 | /* The symbol in the kernel where the load average is found | ||
| 121 | depends on the cpu type, so we let the m- files define LDAV_SYMBOL. */ | ||
| 122 | |||
| 123 | /* Special hacks needed to make Emacs run on this system. */ | ||
| 124 | |||
| 125 | /* | ||
| 126 | * Make the sigsetmask function go away. Don't know what the | ||
| 127 | * ramifications of this are, but doesn't seem possible to | ||
| 128 | * emulate it properly anyway at this point. | ||
| 129 | */ | ||
| 130 | |||
| 131 | /* HPUX has sigsetmask */ | ||
| 132 | /* #define sigsetmask(mask) / * Null expansion * / */ | ||
| 133 | |||
| 134 | /* setjmp and longjmp can safely replace _setjmp and _longjmp, | ||
| 135 | but they will run slower. */ | ||
| 136 | |||
| 137 | /* HP-UX has _setjmp and _longjmp */ | ||
| 138 | /* | ||
| 139 | #define _setjmp setjmp | ||
| 140 | #define _longjmp longjmp | ||
| 141 | */ | ||
| 142 | |||
| 143 | /* Use the system provided termcap(3) library */ | ||
| 144 | #define TERMINFO | ||
| 145 | |||
| 146 | /* The 48-bit versions are more winning for Emacs; | ||
| 147 | the ordinary ones don't give even 32 bits. */ | ||
| 148 | #define random lrand48 | ||
| 149 | #define srandom srand48 | ||
| 150 | |||
| 151 | /* In hpux, the symbol SIGIO is defined, but the feature | ||
| 152 | doesn't work in the way Emacs needs it to. */ | ||
| 153 | |||
| 154 | #define BROKEN_SIGIO | ||
| 155 | |||
| 156 | /* USG systems tend to put everything declared static | ||
| 157 | into the initialized data area, which becomes pure after dumping Emacs. | ||
| 158 | Foil this. Emacs carefully avoids static vars inside functions. | ||
| 159 | http://lists.gnu.org/archive/html/emacs-devel/2007-09/msg00368.html | ||
| 160 | As of at least HPUX 11.11 (2000), it seems this workaround is no | ||
| 161 | longer needed. Try uncommenting the following if you have problems | ||
| 162 | on older versions. */ | ||
| 163 | |||
| 164 | /* This is unnecessary in HPUX versions 10.20, 11.0, 11.11, 11.23. */ | ||
| 165 | |||
| 166 | /* #define static */ | ||
| 167 | |||
| 168 | /* Define extra libraries to load. | ||
| 169 | This should have -lBSD, but that library is said to make | ||
| 170 | `signal' fail to work. */ | ||
| 171 | |||
| 172 | #ifdef HPUX_NET | ||
| 173 | #define LIBS_SYSTEM -ln | ||
| 174 | #else | ||
| 175 | #define LIBS_SYSTEM | ||
| 176 | #endif | ||
| 177 | |||
| 178 | /* Some additional system facilities exist. */ | ||
| 179 | |||
| 180 | #define HAVE_PERROR /* Delete this line for version 6. */ | ||
| 181 | |||
| 182 | /* The following maps shared exec file to demand loaded exec. | ||
| 183 | Don't do this as demand loaded exec is broken in hpux. */ | ||
| 184 | |||
| 185 | #if 0 | ||
| 186 | |||
| 187 | /* Adjust a header field for the executable file about to be dumped. */ | ||
| 188 | |||
| 189 | #define ADJUST_EXEC_HEADER \ | ||
| 190 | hdr.a_magic = ((ohdr.a_magic.file_type == OLDMAGIC.file_type) ? \ | ||
| 191 | NEWMAGIC : ohdr.a_magic); | ||
| 192 | |||
| 193 | #endif | ||
| 194 | |||
| 195 | /* Baud-rate values in tty status have nonstandard meanings. */ | ||
| 196 | |||
| 197 | #define BAUD_CONVERT \ | ||
| 198 | { 0, 50, 75, 110, 135, 150, 200, 300, 600, 900, 1200, \ | ||
| 199 | 1800, 2400, 3600, 4800, 7200, 9600, 19200, 38400 } | ||
| 200 | |||
| 201 | /* This is how to get the device name of the tty end of a pty. */ | ||
| 202 | #define PTY_TTY_NAME_SPRINTF \ | ||
| 203 | sprintf (pty_name, "/dev/pty/tty%c%x", c, i); | ||
| 204 | |||
| 205 | /* This is how to get the device name of the control end of a pty. */ | ||
| 206 | #define PTY_NAME_SPRINTF \ | ||
| 207 | sprintf (pty_name, "/dev/ptym/pty%c%x", c, i); | ||
| 208 | |||
| 209 | /* This triggers a conditional in xfaces.c. */ | ||
| 210 | #define XOS_NEEDS_TIME_H | ||
| 211 | |||
| 212 | #ifndef HPUX8 | ||
| 213 | /* It's possible that HPUX 7 has sys/wait.h but it does not work right. */ | ||
| 214 | #undef HAVE_SYS_WAIT_H | ||
| 215 | #endif | ||
| 216 | |||
| 217 | /* arch-tag: 75c1239f-fedb-4f64-8f86-7893e75699e8 | ||
| 218 | (do not change this comment) */ | ||
diff --git a/src/s/hpux10-20.h b/src/s/hpux10-20.h index a15b81a5e90..8ea24fc4dc8 100644 --- a/src/s/hpux10-20.h +++ b/src/s/hpux10-20.h | |||
| @@ -1,13 +1,270 @@ | |||
| 1 | #include "hpux10.h" | 1 | /* System description file for hpux version 10.20. |
| 2 | Copyright (C) 1999, 2001, 2002, 2003, 2004, 2005, 2006, 2007, | ||
| 3 | 2008 Free Software Foundation, Inc. | ||
| 2 | 4 | ||
| 3 | #define HPUX10_20 | 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 3 of the License, or | ||
| 10 | (at your option) 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 GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | |||
| 21 | #define RUN_TIME_REMAP | ||
| 22 | |||
| 23 | /* | ||
| 24 | * Define symbols to identify the version of Unix this is. | ||
| 25 | * Define all the symbols that apply correctly. | ||
| 26 | */ | ||
| 27 | |||
| 28 | #define USG /* System III, System V, etc */ | ||
| 29 | |||
| 30 | #define USG5 | ||
| 31 | |||
| 32 | #define HPUX | ||
| 33 | |||
| 34 | /* SYSTEM_TYPE should indicate the kind of system you are using. | ||
| 35 | It sets the Lisp variable system-type. */ | ||
| 36 | |||
| 37 | #define SYSTEM_TYPE "hpux" | ||
| 38 | |||
| 39 | /* `nomultiplejobs' should be defined if your system's shell | ||
| 40 | does not have "job control" (the ability to stop a program, | ||
| 41 | run some other program, then continue the first one). | ||
| 42 | |||
| 43 | On hpux this depends on the precise kind of machine in use, | ||
| 44 | so the m- file defines this symbol if appropriate. */ | ||
| 45 | |||
| 46 | /* Default is to set interrupt_input to 0: don't do input buffering within Emacs */ | ||
| 47 | |||
| 48 | /* #define INTERRUPT_INPUT */ | ||
| 49 | |||
| 50 | /* Letter to use in finding device name of first pty, | ||
| 51 | if system supports pty's. 'p' means it is /dev/ptym/ptyp0 */ | ||
| 52 | |||
| 53 | #define FIRST_PTY_LETTER 'p' | ||
| 54 | |||
| 55 | /* | ||
| 56 | * Define HAVE_TERMIO if the system provides sysV-style ioctls | ||
| 57 | * for terminal control. | ||
| 58 | */ | ||
| 59 | |||
| 60 | #define HAVE_TERMIO | ||
| 61 | |||
| 62 | /* | ||
| 63 | * Define HAVE_PTYS if the system supports pty devices. | ||
| 64 | */ | ||
| 65 | |||
| 66 | #define HAVE_PTYS | ||
| 67 | |||
| 68 | /* Define HAVE_SOCKETS if system supports 4.2-compatible sockets. */ | ||
| 69 | |||
| 70 | #define HAVE_SOCKETS | ||
| 71 | |||
| 72 | /* Define this symbol if your system has the functions bcopy, etc. | ||
| 73 | * s800 and later versions of s300 (s200) kernels have equivalents | ||
| 74 | * of the BSTRING functions of BSD. If your s200 kernel doesn't have | ||
| 75 | * em comment out this section. | ||
| 76 | */ | ||
| 77 | |||
| 78 | #define BSTRING | ||
| 79 | |||
| 80 | /* subprocesses should be defined if you want to | ||
| 81 | have code for asynchronous subprocesses | ||
| 82 | (as used in M-x compile and M-x shell). | ||
| 83 | This is generally OS dependent, and not supported | ||
| 84 | under most USG systems. */ | ||
| 85 | |||
| 86 | #define subprocesses | ||
| 87 | |||
| 88 | /* If your system uses COFF (Common Object File Format) then define the | ||
| 89 | preprocessor symbol "COFF". */ | ||
| 90 | |||
| 91 | /* #define COFF */ | ||
| 92 | |||
| 93 | /* define MAIL_USE_FLOCK if the mailer uses flock | ||
| 94 | to interlock access to /usr/spool/mail/$USER. | ||
| 95 | The alternative is that a lock file named | ||
| 96 | /usr/spool/mail/$USER.lock. */ | ||
| 97 | |||
| 98 | /* #define MAIL_USE_FLOCK */ | ||
| 99 | |||
| 100 | /* Say we have the SYSV style of interprocess communication. */ | ||
| 101 | |||
| 102 | #define HAVE_SYSVIPC | ||
| 103 | |||
| 104 | /* Define CLASH_DETECTION if you want lock files to be written | ||
| 105 | so that Emacs can tell instantly when you try to modify | ||
| 106 | a file that someone else has modified in his Emacs. */ | ||
| 107 | |||
| 108 | #define CLASH_DETECTION | ||
| 109 | |||
| 110 | /* The symbol in the kernel where the load average is found | ||
| 111 | depends on the cpu type, so we let the m- files define LDAV_SYMBOL. */ | ||
| 112 | |||
| 113 | /* Special hacks needed to make Emacs run on this system. */ | ||
| 114 | |||
| 115 | /* | ||
| 116 | * Make the sigsetmask function go away. Don't know what the | ||
| 117 | * ramifications of this are, but doesn't seem possible to | ||
| 118 | * emulate it properly anyway at this point. | ||
| 119 | */ | ||
| 120 | |||
| 121 | /* HPUX has sigsetmask */ | ||
| 122 | /* #define sigsetmask(mask) / * Null expansion * / */ | ||
| 123 | |||
| 124 | /* setjmp and longjmp can safely replace _setjmp and _longjmp, | ||
| 125 | but they will run slower. */ | ||
| 126 | |||
| 127 | /* HP-UX has _setjmp and _longjmp */ | ||
| 128 | /* | ||
| 129 | #define _setjmp setjmp | ||
| 130 | #define _longjmp longjmp | ||
| 131 | */ | ||
| 132 | |||
| 133 | /* Use the system provided termcap(3) library */ | ||
| 134 | #define TERMINFO | ||
| 135 | |||
| 136 | /* In hpux, the symbol SIGIO is defined, but the feature | ||
| 137 | doesn't work in the way Emacs needs it to. */ | ||
| 138 | |||
| 139 | #define BROKEN_SIGIO | ||
| 140 | |||
| 141 | /* USG systems tend to put everything declared static | ||
| 142 | into the initialized data area, which becomes pure after dumping Emacs. | ||
| 143 | Foil this. Emacs carefully avoids static vars inside functions. | ||
| 144 | http://lists.gnu.org/archive/html/emacs-devel/2007-09/msg00368.html | ||
| 145 | As of at least HPUX 11.11 (2000), it seems this workaround is no | ||
| 146 | longer needed. Try uncommenting the following if you have problems | ||
| 147 | on older versions. */ | ||
| 148 | |||
| 149 | /* This is unnecessary in HPUX versions 10.20, 11.0, 11.11, 11.23. */ | ||
| 150 | |||
| 151 | /* #define static */ | ||
| 152 | |||
| 153 | /* Some additional system facilities exist. */ | ||
| 154 | |||
| 155 | #define HAVE_PERROR /* Delete this line for version 6. */ | ||
| 156 | |||
| 157 | /* The following maps shared exec file to demand loaded exec. | ||
| 158 | Don't do this as demand loaded exec is broken in hpux. */ | ||
| 159 | |||
| 160 | /* Baud-rate values in tty status have nonstandard meanings. */ | ||
| 161 | |||
| 162 | #define BAUD_CONVERT \ | ||
| 163 | { 0, 50, 75, 110, 135, 150, 200, 300, 600, 900, 1200, \ | ||
| 164 | 1800, 2400, 3600, 4800, 7200, 9600, 19200, 38400 } | ||
| 165 | |||
| 166 | /* This is how to get the device name of the tty end of a pty. */ | ||
| 167 | #define PTY_TTY_NAME_SPRINTF \ | ||
| 168 | sprintf (pty_name, "/dev/pty/tty%c%x", c, i); | ||
| 169 | |||
| 170 | /* This is how to get the device name of the control end of a pty. */ | ||
| 171 | #define PTY_NAME_SPRINTF \ | ||
| 172 | sprintf (pty_name, "/dev/ptym/pty%c%x", c, i); | ||
| 173 | |||
| 174 | /* This triggers a conditional in xfaces.c. */ | ||
| 175 | #define XOS_NEEDS_TIME_H | ||
| 176 | |||
| 177 | /* Don't use shared libraries. unexec doesn't handle them. | ||
| 178 | Note GCC automatically passes -a archive to ld, and it has its own | ||
| 179 | conflicting -a. */ | ||
| 180 | #ifdef __GNUC__ | ||
| 181 | |||
| 182 | #define LD_SWITCH_SYSTEM_TEMACS | ||
| 183 | |||
| 184 | #else /* not __GNUC__ */ | ||
| 185 | /* Note, -a only works for hpux ld, not cc. And "cc LD_SWITCH_SYSTEM" | ||
| 186 | is used in configure's $ac_link to do various autoconf checks. | ||
| 187 | Since we only need -a when unexec'ing, only pass in -a to | ||
| 188 | "ld temacs" (ghazi@caip.rutgers.edu 7/10/97). */ | ||
| 189 | #if (defined(hp9000s700) || defined(__hp9000s700)) | ||
| 190 | #define LD_SWITCH_SYSTEM_TEMACS -L/lib/pa1.1 | ||
| 191 | #else /* not (defined(hp9000s700) || defined(__hp9000s700)) */ | ||
| 192 | #define LD_SWITCH_SYSTEM_TEMACS | ||
| 193 | #endif /* not (defined(hp9000s700) || defined(__hp9000s700)) */ | ||
| 194 | #endif /* not __GNUC__ */ | ||
| 195 | |||
| 196 | /* Some hpux 8 machines seem to have TIOCGWINSZ, | ||
| 197 | and none have sioctl.h, so might as well define this. */ | ||
| 198 | #define NO_SIOCTL_H | ||
| 199 | |||
| 200 | #ifndef HAVE_LIBXMU | ||
| 201 | /* HP-UX doesn't supply Xmu. */ | ||
| 202 | #define LIBXMU | ||
| 203 | |||
| 204 | #endif | ||
| 205 | |||
| 206 | /* Assar Westerlund <assar@sics.se> says this is necessary for | ||
| 207 | HP-UX 10.20, and that it works for HP-UX 0 as well. */ | ||
| 208 | #define NO_EDITRES | ||
| 209 | |||
| 210 | /* Tested in getloadavg.c. */ | ||
| 211 | #define HAVE_PSTAT_GETDYNAMIC | ||
| 212 | |||
| 213 | /* Eric Backus <ericb@lsid.hp.com> says, HP-UX 9.x on HP 700 machines | ||
| 214 | has a broken `rint' in some library versions including math library | ||
| 215 | version number A.09.05. | ||
| 216 | |||
| 217 | You can fix the math library by installing patch number PHSS_4630. | ||
| 218 | But we can fix it more reliably for Emacs like this. */ | ||
| 219 | #undef HAVE_RINT | ||
| 220 | |||
| 221 | /* We have to go this route, rather than hpux9's approach of renaming the | ||
| 222 | functions via macros. The system's stdlib.h has fully prototyped | ||
| 223 | declarations, which yields a conflicting definition of srand48; it | ||
| 224 | tries to redeclare what was once srandom to be srand48. So we go | ||
| 225 | with HAVE_LRAND48 being defined. */ | ||
| 226 | #undef srandom | ||
| 227 | #undef random | ||
| 228 | #undef HAVE_RANDOM | ||
| 229 | |||
| 230 | #define FORCE_ALLOCA_H | ||
| 231 | |||
| 232 | /* AlainF 20-Jul-1996 says this is right. */ | ||
| 233 | #define KERNEL_FILE "/stand/vmunix" | ||
| 234 | |||
| 235 | #ifdef HPUX_NET | ||
| 236 | #define LIBS_SYSTEM -ln -l:libdld.sl | ||
| 237 | #else | ||
| 238 | #define LIBS_SYSTEM -l:libdld.sl | ||
| 239 | #endif | ||
| 240 | |||
| 241 | /* Rainer Malzbender <rainer@displaytech.com> says definining | ||
| 242 | HAVE_XRMSETDATABASE allows Emacs to compile on HP-UX 10.20 | ||
| 243 | using GCC. */ | ||
| 244 | |||
| 245 | #ifndef HAVE_XRMSETDATABASE | ||
| 246 | #define HAVE_XRMSETDATABASE | ||
| 247 | #endif | ||
| 248 | |||
| 249 | /* Make sure we get select from libc rather than from libcurses | ||
| 250 | because libcurses on HPUX 10.10 has a broken version of select. | ||
| 251 | We used to use -lc -lcurses, but this may be cleaner. */ | ||
| 252 | #define LIBS_TERMCAP -ltermcap | ||
| 253 | |||
| 254 | /* However, HPUX 10 puts Xaw and Xmu in a strange place | ||
| 255 | (if you install them at all). So search that place. */ | ||
| 256 | #define C_SWITCH_X_SYSTEM -I/usr/include/X11R6 -I/usr/include/X11R5 -I/usr/include/Motif1.2 -I/usr/contrib/X11R6/include -I/usr/contrib/X11R5/include | ||
| 257 | #define LD_SWITCH_X_DEFAULT -L/usr/lib/X11R6 -L/usr/lib/X11R5 -L/usr/lib/Motif1.2 -L/usr/contrib/X11R5/lib | ||
| 258 | |||
| 259 | /* 2000-11-21: Temporarily disable Unix 98 large file support found by | ||
| 260 | configure. It fails on HPUX 11, at least, because it enables | ||
| 261 | header sections which lose when `static' is defined away, as it is | ||
| 262 | on HP-UX. (You get duplicate symbol errors on linking). */ | ||
| 263 | |||
| 264 | #undef _FILE_OFFSET_BITS | ||
| 4 | 265 | ||
| 5 | /* otherwise sigunblock wont be defined */ | 266 | /* otherwise sigunblock wont be defined */ |
| 6 | #define POSIX_SIGNALS | 267 | #define POSIX_SIGNALS |
| 7 | 268 | ||
| 8 | /* Polling problems (interrupted system call) reported for HP-UX 10.10 | ||
| 9 | don't exist from 10.20 on (see process.c) */ | ||
| 10 | #undef POLL_INTERRUPTED_SYS_CALL | ||
| 11 | |||
| 12 | /* arch-tag: 8d8dcbf1-ca9b-48a1-94be-b750de18a5c6 | 269 | /* arch-tag: 8d8dcbf1-ca9b-48a1-94be-b750de18a5c6 |
| 13 | (do not change this comment) */ | 270 | (do not change this comment) */ |
diff --git a/src/s/hpux10.h b/src/s/hpux10.h deleted file mode 100644 index 646ef07d4eb..00000000000 --- a/src/s/hpux10.h +++ /dev/null | |||
| @@ -1,85 +0,0 @@ | |||
| 1 | /* System description file for hpux version 10. | ||
| 2 | Copyright (C) 1999, 2001, 2002, 2003, 2004, 2005, 2006, 2007, | ||
| 3 | 2008 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 3 of the License, or | ||
| 10 | (at your option) 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 GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | |||
| 21 | #include "hpux9shr.h" | ||
| 22 | |||
| 23 | #define HPUX10 | ||
| 24 | |||
| 25 | /* We have to go this route, rather than hpux9's approach of renaming the | ||
| 26 | functions via macros. The system's stdlib.h has fully prototyped | ||
| 27 | declarations, which yields a conflicting definition of srand48; it | ||
| 28 | tries to redeclare what was once srandom to be srand48. So we go | ||
| 29 | with HAVE_LRAND48 being defined. */ | ||
| 30 | #undef srandom | ||
| 31 | #undef random | ||
| 32 | #undef HAVE_RANDOM | ||
| 33 | |||
| 34 | #define FORCE_ALLOCA_H | ||
| 35 | |||
| 36 | /* AlainF 20-Jul-1996 says this is right. */ | ||
| 37 | #undef KERNEL_FILE | ||
| 38 | #define KERNEL_FILE "/stand/vmunix" | ||
| 39 | |||
| 40 | #ifdef LIBS_SYSTEM | ||
| 41 | #undef LIBS_SYSTEM | ||
| 42 | #endif | ||
| 43 | #ifdef HPUX_NET | ||
| 44 | #define LIBS_SYSTEM -ln -l:libdld.sl | ||
| 45 | #else | ||
| 46 | #define LIBS_SYSTEM -l:libdld.sl | ||
| 47 | #endif | ||
| 48 | |||
| 49 | /* Rainer Malzbender <rainer@displaytech.com> says definining | ||
| 50 | HAVE_XRMSETDATABASE allows Emacs to compile on HP-UX 10.20 | ||
| 51 | using GCC. */ | ||
| 52 | |||
| 53 | #ifndef HAVE_XRMSETDATABASE | ||
| 54 | #define HAVE_XRMSETDATABASE | ||
| 55 | #endif | ||
| 56 | |||
| 57 | /* Make sure we get select from libc rather than from libcurses | ||
| 58 | because libcurses on HPUX 10.10 has a broken version of select. | ||
| 59 | We used to use -lc -lcurses, but this may be cleaner. */ | ||
| 60 | #define LIBS_TERMCAP -ltermcap | ||
| 61 | |||
| 62 | #undef C_SWITCH_X_SYSTEM | ||
| 63 | #undef LD_SWITCH_X_DEFAULT | ||
| 64 | /* However, HPUX 10 puts Xaw and Xmu in a strange place | ||
| 65 | (if you install them at all). So search that place. */ | ||
| 66 | #define C_SWITCH_X_SYSTEM -I/usr/include/X11R6 -I/usr/include/X11R5 -I/usr/include/Motif1.2 -I/usr/contrib/X11R6/include -I/usr/contrib/X11R5/include | ||
| 67 | #define LD_SWITCH_X_DEFAULT -L/usr/lib/X11R6 -L/usr/lib/X11R5 -L/usr/lib/Motif1.2 -L/usr/contrib/X11R5/lib | ||
| 68 | |||
| 69 | /* 2000-11-21: Temporarily disable Unix 98 large file support found by | ||
| 70 | configure. It fails on HPUX 11, at least, because it enables | ||
| 71 | header sections which lose when `static' is defined away, as it is | ||
| 72 | on HP-UX. (You get duplicate symbol errors on linking). */ | ||
| 73 | |||
| 74 | #undef _FILE_OFFSET_BITS | ||
| 75 | |||
| 76 | /* Don't define _BSD */ | ||
| 77 | #undef C_SWITCH_SYSTEM | ||
| 78 | |||
| 79 | /* HP-UX 10.10 seem to have problems with signals coming in | ||
| 80 | Causes "poll: interrupted system call" messages when Emacs is run | ||
| 81 | in an X window (see process.c) */ | ||
| 82 | #define POLL_INTERRUPTED_SYS_CALL | ||
| 83 | |||
| 84 | /* arch-tag: 1b95d569-a3c1-4fb0-8f69-fef264c17c24 | ||
| 85 | (do not change this comment) */ | ||
diff --git a/src/s/hpux8.h b/src/s/hpux8.h deleted file mode 100644 index 9333038b077..00000000000 --- a/src/s/hpux8.h +++ /dev/null | |||
| @@ -1,96 +0,0 @@ | |||
| 1 | /* system description file for hpux version 8. | ||
| 2 | |||
| 3 | Copyright (C) 1999, 2001, 2002, 2003, 2004, 2005, 2006, 2007, | ||
| 4 | 2008 Free Software Foundation, Inc. | ||
| 5 | |||
| 6 | This file is part of GNU Emacs. | ||
| 7 | |||
| 8 | GNU Emacs is free software: you can redistribute it and/or modify | ||
| 9 | it under the terms of the GNU General Public License as published by | ||
| 10 | the Free Software Foundation, either version 3 of the License, or | ||
| 11 | (at your option) any later version. | ||
| 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 | ||
| 19 | along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | ||
| 20 | |||
| 21 | /* | ||
| 22 | Commentary: | ||
| 23 | |||
| 24 | This contains changes that were suggested "for the hp700". | ||
| 25 | They were not needed for the 800. | ||
| 26 | Our conjecture that they are needed for hpux version 8, | ||
| 27 | which is what runs on the 700. */ | ||
| 28 | |||
| 29 | #define HPUX8 | ||
| 30 | |||
| 31 | #include "hpux.h" | ||
| 32 | |||
| 33 | /* dob@inel.gov says HPUX 8.07 needs this. He was using X11R5, I think. */ | ||
| 34 | #define LIBX11_SYSTEM -lXext | ||
| 35 | |||
| 36 | #define LIB_X11_LIB -L/usr/lib/X11R5 -L/usr/lib/X11R4 -lX11 | ||
| 37 | #define C_SWITCH_X_SYSTEM -I/usr/include/X11R5 -I/usr/include/X11R4 | ||
| 38 | #define LD_SWITCH_X_DEFAULT -L/usr/lib/X11R5 -L/usr/lib/X11R4 | ||
| 39 | |||
| 40 | /* Don't use shared libraries. unexec doesn't handle them. | ||
| 41 | Note GCC automatically passes -a archive to ld, and it has its own | ||
| 42 | conflicting -a. */ | ||
| 43 | #ifdef __GNUC__ | ||
| 44 | /* No need to specify roundabout way of linking temacs. */ | ||
| 45 | #define ORDINARY_LINK | ||
| 46 | |||
| 47 | #ifdef HPUX_USE_SHLIBS | ||
| 48 | #define LD_SWITCH_SYSTEM_TEMACS | ||
| 49 | #else | ||
| 50 | #define LD_SWITCH_SYSTEM_TEMACS -Xlinker -a -Xlinker archive | ||
| 51 | #endif | ||
| 52 | |||
| 53 | #else /* not __GNUC__ */ | ||
| 54 | /* Note, -a only works for hpux ld, not cc. And "cc LD_SWITCH_SYSTEM" | ||
| 55 | is used in configure's $ac_link to do various autoconf checks. | ||
| 56 | Since we only need -a when unexec'ing, only pass in -a to | ||
| 57 | "ld temacs" (ghazi@caip.rutgers.edu 7/10/97). */ | ||
| 58 | #if (defined(hp9000s700) || defined(__hp9000s700)) | ||
| 59 | #ifdef HPUX_USE_SHLIBS | ||
| 60 | #define LD_SWITCH_SYSTEM_TEMACS -L/lib/pa1.1 | ||
| 61 | #else | ||
| 62 | #define LD_SWITCH_SYSTEM_TEMACS -a archive -L/lib/pa1.1 | ||
| 63 | #endif | ||
| 64 | #else /* not (defined(hp9000s700) || defined(__hp9000s700)) */ | ||
| 65 | #ifdef HPUX_USE_SHLIBS | ||
| 66 | #define LD_SWITCH_SYSTEM_TEMACS | ||
| 67 | #else | ||
| 68 | #define LD_SWITCH_SYSTEM_TEMACS -a archive | ||
| 69 | #endif | ||
| 70 | #endif /* not (defined(hp9000s700) || defined(__hp9000s700)) */ | ||
| 71 | #endif /* not __GNUC__ */ | ||
| 72 | |||
| 73 | /* Some hpux 8 machines seem to have TIOCGWINSZ, | ||
| 74 | and none have sioctl.h, so might as well define this. */ | ||
| 75 | #define NO_SIOCTL_H | ||
| 76 | |||
| 77 | #if 0 /* autoconf should be detecting the presence or absence of | ||
| 78 | random and srandom now. */ | ||
| 79 | /* If you use X11R4 you must define this. If you use | ||
| 80 | X11R5 you must comment this out */ | ||
| 81 | /* #define HAVE_RANDOM */ | ||
| 82 | #define random foo_random | ||
| 83 | #define srandom foo_srandom | ||
| 84 | #endif | ||
| 85 | |||
| 86 | #if 0 /* This seems to be spurious. */ | ||
| 87 | /* "X11R5" on hpux8 doesn't have this function, which is supposed to exist | ||
| 88 | in X11R5. Maybe things will work if we just don't call it. */ | ||
| 89 | #define NO_XRM_SET_DATABASE | ||
| 90 | #endif | ||
| 91 | |||
| 92 | /* Enable a special hack in XTread_socket. */ | ||
| 93 | #define X_IO_BUG | ||
| 94 | |||
| 95 | /* arch-tag: 25fafe5c-b26c-43ab-8144-1629d59207ee | ||
| 96 | (do not change this comment) */ | ||
diff --git a/src/s/hpux9.h b/src/s/hpux9.h deleted file mode 100644 index 9c915eb6cc2..00000000000 --- a/src/s/hpux9.h +++ /dev/null | |||
| @@ -1,94 +0,0 @@ | |||
| 1 | /* System description file for hpux version 9. | ||
| 2 | |||
| 3 | Copyright (C) 1999, 2001, 2002, 2003, 2004, 2005, 2006, 2007, | ||
| 4 | 2008 Free Software Foundation, Inc. | ||
| 5 | |||
| 6 | This file is part of GNU Emacs. | ||
| 7 | |||
| 8 | GNU Emacs is free software: you can redistribute it and/or modify | ||
| 9 | it under the terms of the GNU General Public License as published by | ||
| 10 | the Free Software Foundation, either version 3 of the License, or | ||
| 11 | (at your option) any later version. | ||
| 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 | ||
| 19 | along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | ||
| 20 | |||
| 21 | |||
| 22 | #include "hpux8.h" | ||
| 23 | |||
| 24 | #define HPUX9 | ||
| 25 | |||
| 26 | /* If Emacs doesn't seem to work when built to use GNU malloc, you | ||
| 27 | probably need to get the latest patches to the HP/UX compiler. | ||
| 28 | See `etc/MACHINES' for more information. */ | ||
| 29 | #if 0 | ||
| 30 | #define SYSTEM_MALLOC 1 | ||
| 31 | #undef GNU_MALLOC | ||
| 32 | #undef REL_ALLOC | ||
| 33 | #endif | ||
| 34 | |||
| 35 | #ifndef __GNUC__ | ||
| 36 | /* Make room for enough symbols, so dispnew.c does not fail. */ | ||
| 37 | #define C_SWITCH_SYSTEM -Wp,-H200000 -D_BSD | ||
| 38 | #else | ||
| 39 | #define C_SWITCH_SYSTEM -D_BSD | ||
| 40 | #endif | ||
| 41 | |||
| 42 | #if 0 /* These definitions run into a bug in hpux | ||
| 43 | whereby trying to disable the vdsusp character has no effect. | ||
| 44 | supposedly there is no particular need for this. */ | ||
| 45 | /* neal@ctd.comsat.com */ | ||
| 46 | #undef HAVE_TERMIO | ||
| 47 | #define HAVE_TERMIOS | ||
| 48 | #define NO_TERMIO | ||
| 49 | #endif | ||
| 50 | |||
| 51 | /* According to ngorelic@speclab.cr.usgs.gov, | ||
| 52 | references to the X11R4 directories in these variables | ||
| 53 | (inherited from hpux8.h) | ||
| 54 | cause the wrong libraries to be found, | ||
| 55 | and the options to specify the X11R5 directories are unnecessary | ||
| 56 | since the R5 files are found without them. */ | ||
| 57 | #undef LIB_X11_LIB | ||
| 58 | #undef C_SWITCH_X_SYSTEM | ||
| 59 | #undef LD_SWITCH_X_DEFAULT | ||
| 60 | /* However, HPUX 9 has Motif includes in a strange place. | ||
| 61 | So search that place. These definitions assume that X11R5 is being | ||
| 62 | used -- if X11R4 is used, "s/hpux9-x11r4.h" gets loaded instead. */ | ||
| 63 | /* horst@tkm.physik.uni-karlsruhe.de says that the /usr/contrib/... dirs | ||
| 64 | are needed to find the Xmu and Xaw libraries. */ | ||
| 65 | #define C_SWITCH_X_SYSTEM -I/usr/include/X11R5 -I/usr/contrib/X11R5/include -I/usr/include/Motif1.2 | ||
| 66 | #define LD_SWITCH_X_DEFAULT -L/usr/lib/X11R5 -L/usr/contrib/X11R5/lib -L/usr/lib/Motif1.2 | ||
| 67 | |||
| 68 | #ifndef HAVE_LIBXMU | ||
| 69 | /* HP-UX doesn't supply Xmu. */ | ||
| 70 | #define LIBXMU | ||
| 71 | |||
| 72 | #endif | ||
| 73 | |||
| 74 | /* Assar Westerlund <assar@sics.se> says this is necessary for | ||
| 75 | HP-UX 10.20, and that it works for HP-UX 0 as well. */ | ||
| 76 | #define NO_EDITRES | ||
| 77 | |||
| 78 | /* zoo@armadillo.com says we don't need -lXext in HPUX 9. */ | ||
| 79 | #undef LIBX11_SYSTEM | ||
| 80 | |||
| 81 | /* Tested in getloadavg.c. */ | ||
| 82 | #define HAVE_PSTAT_GETDYNAMIC | ||
| 83 | |||
| 84 | /* Eric Backus <ericb@lsid.hp.com> says, HP-UX 9.x on HP 700 machines | ||
| 85 | has a broken `rint' in some library versions including math library | ||
| 86 | version number A.09.05. | ||
| 87 | |||
| 88 | You can fix the math library by installing patch number PHSS_4630. | ||
| 89 | But we can fix it more reliably for Emacs like this. */ | ||
| 90 | #undef HAVE_RINT | ||
| 91 | |||
| 92 | |||
| 93 | /* arch-tag: 0a5e9f05-012c-4962-a222-a7a3a7fe0ab7 | ||
| 94 | (do not change this comment) */ | ||
diff --git a/src/s/hpux9shr.h b/src/s/hpux9shr.h deleted file mode 100644 index d273d2e7787..00000000000 --- a/src/s/hpux9shr.h +++ /dev/null | |||
| @@ -1,16 +0,0 @@ | |||
| 1 | #define ORDINARY_LINK | ||
| 2 | #define HPUX_USE_SHLIBS | ||
| 3 | #define RUN_TIME_REMAP | ||
| 4 | |||
| 5 | #include "hpux9.h" | ||
| 6 | |||
| 7 | #if 0 /* No longer needed, since in current GCC -g no longer does that. */ | ||
| 8 | /* We must turn off -g since it forces -static. */ | ||
| 9 | #ifdef __GNUC__ | ||
| 10 | #undef C_DEBUG_SWITCH | ||
| 11 | #define C_DEBUG_SWITCH | ||
| 12 | #endif | ||
| 13 | #endif | ||
| 14 | |||
| 15 | /* arch-tag: 1b259627-c5f6-4260-866f-781b06d72f6b | ||
| 16 | (do not change this comment) */ | ||
diff --git a/src/s/ms-w32.h b/src/s/ms-w32.h index 3e043c84fc8..f617490bef2 100644 --- a/src/s/ms-w32.h +++ b/src/s/ms-w32.h | |||
| @@ -22,16 +22,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | |||
| 22 | * Define all the symbols that apply correctly. | 22 | * Define all the symbols that apply correctly. |
| 23 | */ | 23 | */ |
| 24 | 24 | ||
| 25 | /* #define UNIPLUS */ | ||
| 26 | /* #define USG5 */ | ||
| 27 | /* #define USG */ | ||
| 28 | /* #define HPUX */ | ||
| 29 | /* #define UMAX */ | ||
| 30 | /* #define BSD4_1 */ | ||
| 31 | /* #define BSD4_2 */ | ||
| 32 | /* #define BSD4_3 */ | ||
| 33 | /* #define BSD_SYSTEM */ | ||
| 34 | /* #define VMS */ | ||
| 35 | #ifndef WINDOWSNT | 25 | #ifndef WINDOWSNT |
| 36 | #define WINDOWSNT | 26 | #define WINDOWSNT |
| 37 | #endif | 27 | #endif |
diff --git a/src/s/msdos.h b/src/s/msdos.h index 2f5280f1749..ea940e5383c 100644 --- a/src/s/msdos.h +++ b/src/s/msdos.h | |||
| @@ -26,16 +26,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | |||
| 26 | * Define all the symbols that apply correctly. | 26 | * Define all the symbols that apply correctly. |
| 27 | */ | 27 | */ |
| 28 | 28 | ||
| 29 | /* #define UNIPLUS */ | ||
| 30 | /* #define USG5 */ | ||
| 31 | /* #define USG */ | ||
| 32 | /* #define HPUX */ | ||
| 33 | /* #define UMAX */ | ||
| 34 | /* #define BSD4_1 */ | ||
| 35 | /* #define BSD4_2 */ | ||
| 36 | /* #define BSD4_3 */ | ||
| 37 | /* #define BSD_SYSTEM */ | ||
| 38 | /* #define VMS */ | ||
| 39 | #ifndef MSDOS | 29 | #ifndef MSDOS |
| 40 | #define MSDOS | 30 | #define MSDOS |
| 41 | #endif | 31 | #endif |
diff --git a/src/s/netbsd.h b/src/s/netbsd.h index a61a4e74366..0e9b0a8443d 100644 --- a/src/s/netbsd.h +++ b/src/s/netbsd.h | |||
| @@ -19,8 +19,8 @@ You should have received a copy of the GNU General Public License | |||
| 19 | along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | 19 | along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ |
| 20 | 20 | ||
| 21 | 21 | ||
| 22 | /* Get most of the stuff from bsd4.3 */ | 22 | /* Get most of the stuff from bsd-common */ |
| 23 | #include "bsd4-3.h" | 23 | #include "bsd-common.h" |
| 24 | 24 | ||
| 25 | #if defined (__alpha__) && !defined (__ELF__) | 25 | #if defined (__alpha__) && !defined (__ELF__) |
| 26 | #define NO_SHARED_LIBS | 26 | #define NO_SHARED_LIBS |
diff --git a/src/s/nextstep.h b/src/s/nextstep.h deleted file mode 100644 index 03b5d86cbb0..00000000000 --- a/src/s/nextstep.h +++ /dev/null | |||
| @@ -1,114 +0,0 @@ | |||
| 1 | /* Configuration file for the NeXTstep system. | ||
| 2 | Copyright (C) 1990, 1995, 2001, 2002, 2003, 2004, 2005, 2006, 2007, | ||
| 3 | 2008 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 3 of the License, or | ||
| 10 | (at your option) 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 GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | #include "bsd4-3.h" | ||
| 21 | |||
| 22 | /* SYSTEM_TYPE should indicate the kind of system you are using. | ||
| 23 | It sets the Lisp variable system-type. We'll need to undo the bsd one. */ | ||
| 24 | |||
| 25 | #undef SYSTEM_TYPE | ||
| 26 | #define SYSTEM_TYPE "next-mach" | ||
| 27 | |||
| 28 | #ifndef NeXT | ||
| 29 | #define NeXT | ||
| 30 | #endif | ||
| 31 | |||
| 32 | |||
| 33 | /* Data type of load average, as read out of kmem. */ | ||
| 34 | |||
| 35 | #define LOAD_AVE_TYPE long | ||
| 36 | |||
| 37 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 38 | |||
| 39 | #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE) | ||
| 40 | |||
| 41 | /* Defining KERNEL_FILE causes lossage because sys/file.h | ||
| 42 | stupidly gets confused by it. */ | ||
| 43 | #undef KERNEL_FILE | ||
| 44 | |||
| 45 | #define SYSTEM_MALLOC | ||
| 46 | |||
| 47 | #define environ _environ | ||
| 48 | |||
| 49 | /* This should be true for recent NeXT systems. At least since 3.2. */ | ||
| 50 | #define HAVE_MACH_MACH_H | ||
| 51 | |||
| 52 | #if 0 /* I think these are never used--let's see. -- rms. */ | ||
| 53 | /* Mask for address bits within a memory segment */ | ||
| 54 | |||
| 55 | #define SEGSIZ 0x20000 | ||
| 56 | #define SEGMENT_MASK (SEGSIZ - 1) | ||
| 57 | |||
| 58 | #define HAVE_UNIX_DOMAIN | ||
| 59 | |||
| 60 | /* Conflicts in process.c between ioctl.h & tty.h use of t_foo fields */ | ||
| 61 | |||
| 62 | #define NO_T_CHARS_DEFINES | ||
| 63 | |||
| 64 | /* This avoids a problem in Xos.h when using co-Xist 3.01. */ | ||
| 65 | #define X_NOT_POSIX | ||
| 66 | #endif /* 0 */ | ||
| 67 | |||
| 68 | /* Definitions for how to link. */ | ||
| 69 | |||
| 70 | /* Link this program just by running cc. */ | ||
| 71 | #define ORDINARY_LINK | ||
| 72 | |||
| 73 | #define LD_SWITCH_SYSTEM -X | ||
| 74 | |||
| 75 | /* Don't use -lc on the NeXT. */ | ||
| 76 | #ifdef NS_TARGET /* We use the dynamic libraries under Openstep for Mach 4.0 */ | ||
| 77 | #define LIB_STANDARD | ||
| 78 | #else | ||
| 79 | #define LIB_STANDARD -lsys_s | ||
| 80 | #endif | ||
| 81 | |||
| 82 | #define LIB_MATH -lm | ||
| 83 | |||
| 84 | #define START_FILES pre-crt0.o | ||
| 85 | |||
| 86 | #define LIB_X11_LIB -L/usr/lib/X11 -lX11 | ||
| 87 | |||
| 88 | /* We don't have a g library either, so override the -lg LIBS_DEBUG switch */ | ||
| 89 | |||
| 90 | #define LIBS_DEBUG | ||
| 91 | |||
| 92 | /* We don't have a libgcc.a, so we can't let LIB_GCC default to -lgcc */ | ||
| 93 | |||
| 94 | #define LIB_GCC | ||
| 95 | |||
| 96 | /* Definitions for how to dump. */ | ||
| 97 | |||
| 98 | #define UNEXEC unexnext.o | ||
| 99 | |||
| 100 | /* start_of_text isn't actually used, so make it compile without error. */ | ||
| 101 | #define TEXT_START 0 | ||
| 102 | /* This seems to be right for end_of_text, but it may not be used anyway. */ | ||
| 103 | #define TEXT_END get_etext () | ||
| 104 | /* This seems to be right for end_of_data, but it may not be used anyway. */ | ||
| 105 | #define DATA_END get_edata () | ||
| 106 | |||
| 107 | /* Don't include string.h--it causes trouble. */ | ||
| 108 | #undef HAVE_STRING_H | ||
| 109 | |||
| 110 | /* Tell emacs.c not to define abort. */ | ||
| 111 | #define NO_ABORT | ||
| 112 | |||
| 113 | /* arch-tag: 5cd6fed4-a0be-4402-9349-85a80bc01d57 | ||
| 114 | (do not change this comment) */ | ||
diff --git a/src/s/template.h b/src/s/template.h index 9745d8b6d66..b79e3370b75 100644 --- a/src/s/template.h +++ b/src/s/template.h | |||
| @@ -25,12 +25,9 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | |||
| 25 | * Define all the symbols that apply correctly. | 25 | * Define all the symbols that apply correctly. |
| 26 | */ | 26 | */ |
| 27 | 27 | ||
| 28 | /* #define UNIPLUS */ | ||
| 29 | /* #define USG5 */ | 28 | /* #define USG5 */ |
| 30 | /* #define USG */ | 29 | /* #define USG */ |
| 31 | /* #define HPUX */ | 30 | /* #define HPUX */ |
| 32 | /* #define UMAX */ | ||
| 33 | /* #define BSD4_1 */ | ||
| 34 | /* #define BSD4_2 */ | 31 | /* #define BSD4_2 */ |
| 35 | /* #define BSD4_3 */ | 32 | /* #define BSD4_3 */ |
| 36 | /* #define BSD_SYSTEM */ | 33 | /* #define BSD_SYSTEM */ |
diff --git a/src/s/ultrix4-3.h b/src/s/ultrix4-3.h deleted file mode 100644 index 2b4f379d3d1..00000000000 --- a/src/s/ultrix4-3.h +++ /dev/null | |||
| @@ -1,16 +0,0 @@ | |||
| 1 | #include "bsd4-3.h" | ||
| 2 | |||
| 3 | #define NEED_UNISTD_H | ||
| 4 | #define HAVE_TERMIOS | ||
| 5 | #define PREFER_VSUSP | ||
| 6 | |||
| 7 | /* Must set the line discipline to this, to make termio work. */ | ||
| 8 | #define SET_LINE_DISCIPLINE TERMIODISC | ||
| 9 | |||
| 10 | #ifndef NOT_C_CODE | ||
| 11 | /* The address of this is used, but Ultrix header files don't declare it. */ | ||
| 12 | extern double rint (); | ||
| 13 | #endif | ||
| 14 | |||
| 15 | /* arch-tag: 927a396a-d50f-494b-960b-533671184ce1 | ||
| 16 | (do not change this comment) */ | ||
diff --git a/src/s/usg5-0.h b/src/s/usg5-0.h deleted file mode 100644 index 941c48dc5df..00000000000 --- a/src/s/usg5-0.h +++ /dev/null | |||
| @@ -1,149 +0,0 @@ | |||
| 1 | /* Definitions file for GNU Emacs running on AT&T's System V.0 | ||
| 2 | Copyright (C) 1985, 1986, 1999, 2001, 2002, 2003, 2004, 2005, 2006, | ||
| 3 | 2007, 2008 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 3 of the License, or | ||
| 10 | (at your option) 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 GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | |||
| 21 | /* | ||
| 22 | * Define symbols to identify the version of Unix this is. | ||
| 23 | * Define all the symbols that apply correctly. | ||
| 24 | */ | ||
| 25 | |||
| 26 | #define USG /* System III, System V, etc */ | ||
| 27 | |||
| 28 | #define USG5 | ||
| 29 | #define USG5_0 | ||
| 30 | |||
| 31 | /* SYSTEM_TYPE should indicate the kind of system you are using. | ||
| 32 | It sets the Lisp variable system-type. */ | ||
| 33 | |||
| 34 | #define SYSTEM_TYPE "usg-unix-v" | ||
| 35 | |||
| 36 | /* nomultiplejobs should be defined if your system's shell | ||
| 37 | does not have "job control" (the ability to stop a program, | ||
| 38 | run some other program, then continue the first one). */ | ||
| 39 | |||
| 40 | #define NOMULTIPLEJOBS | ||
| 41 | |||
| 42 | /* Default is to set interrupt_input to 0: don't do input buffering within Emacs */ | ||
| 43 | |||
| 44 | /* #define INTERRUPT_INPUT */ | ||
| 45 | |||
| 46 | /* Letter to use in finding device name of first pty, | ||
| 47 | if system supports pty's. 'p' means it is /dev/ptyp0 */ | ||
| 48 | |||
| 49 | #define FIRST_PTY_LETTER 'p' | ||
| 50 | |||
| 51 | /* | ||
| 52 | * Define HAVE_TERMIO if the system provides sysV-style ioctls | ||
| 53 | * for terminal control. | ||
| 54 | */ | ||
| 55 | |||
| 56 | #define HAVE_TERMIO | ||
| 57 | |||
| 58 | /* | ||
| 59 | * Define HAVE_PTYS if the system supports pty devices. | ||
| 60 | */ | ||
| 61 | |||
| 62 | /* #define HAVE_PTYS */ | ||
| 63 | |||
| 64 | /* Define HAVE_SOCKETS if system supports 4.2-compatible sockets. */ | ||
| 65 | |||
| 66 | /* #define HAVE_SOCKETS */ | ||
| 67 | |||
| 68 | /* | ||
| 69 | * Define NONSYSTEM_DIR_LIBRARY to make Emacs emulate | ||
| 70 | * The 4.2 opendir, etc., library functions. | ||
| 71 | */ | ||
| 72 | |||
| 73 | #define NONSYSTEM_DIR_LIBRARY | ||
| 74 | |||
| 75 | /* Define this symbol if your system has the functions bcopy, etc. */ | ||
| 76 | |||
| 77 | /* #define BSTRING */ | ||
| 78 | |||
| 79 | /* subprocesses should be defined if you want to | ||
| 80 | have code for asynchronous subprocesses | ||
| 81 | (as used in M-x compile and M-x shell). | ||
| 82 | This is supposed to work now on system V release 2. */ | ||
| 83 | |||
| 84 | #define subprocesses | ||
| 85 | |||
| 86 | /* If your system uses COFF (Common Object File Format) then define the | ||
| 87 | preprocessor symbol "COFF". */ | ||
| 88 | |||
| 89 | #define COFF | ||
| 90 | |||
| 91 | /* define MAIL_USE_FLOCK if the mailer uses flock | ||
| 92 | to interlock access to /usr/spool/mail/$USER. | ||
| 93 | The alternative is that a lock file named | ||
| 94 | /usr/spool/mail/$USER.lock. */ | ||
| 95 | |||
| 96 | /* #define MAIL_USE_FLOCK */ | ||
| 97 | |||
| 98 | /* Define CLASH_DETECTION if you want lock files to be written | ||
| 99 | so that Emacs can tell instantly when you try to modify | ||
| 100 | a file that someone else has modified in his Emacs. */ | ||
| 101 | |||
| 102 | /* #define CLASH_DETECTION */ | ||
| 103 | |||
| 104 | /* The file containing the kernel's symbol table is called /unix. */ | ||
| 105 | |||
| 106 | #define KERNEL_FILE "/unix" | ||
| 107 | |||
| 108 | /* The symbol in the kernel where the load average is found | ||
| 109 | is named avenrun. */ | ||
| 110 | |||
| 111 | #define LDAV_SYMBOL "avenrun" | ||
| 112 | |||
| 113 | /* Special hacks needed to make Emacs run on this system. */ | ||
| 114 | |||
| 115 | /* | ||
| 116 | * Make the sigsetmask function go away. Don't know what the | ||
| 117 | * ramifications of this are, but doesn't seem possible to | ||
| 118 | * emulate it properly anyway at this point. | ||
| 119 | */ | ||
| 120 | |||
| 121 | #define sigsetmask(mask) /* Null expansion */ | ||
| 122 | |||
| 123 | /* setjmp and longjmp can safely replace _setjmp and _longjmp, | ||
| 124 | but they will run slower. */ | ||
| 125 | |||
| 126 | #define _setjmp setjmp | ||
| 127 | #define _longjmp longjmp | ||
| 128 | |||
| 129 | /* On USG systems these have different names */ | ||
| 130 | |||
| 131 | #define index strchr | ||
| 132 | #define rindex strrchr | ||
| 133 | |||
| 134 | /* USG systems tend to put everything declared static | ||
| 135 | into the initialized data area, which becomes pure after dumping Emacs. | ||
| 136 | Foil this. Emacs carefully avoids static vars inside functions. */ | ||
| 137 | |||
| 138 | #define static | ||
| 139 | |||
| 140 | /* Compiler bug bites on many systems when default ADDR_CORRECT is used. */ | ||
| 141 | |||
| 142 | #define ADDR_CORRECT(x) (x) | ||
| 143 | |||
| 144 | /* Prevent -lg from being used for debugging. Not implemented? */ | ||
| 145 | |||
| 146 | #define LIBS_DEBUG | ||
| 147 | |||
| 148 | /* arch-tag: a18bdba9-506d-40ed-9877-49fc27ce8cac | ||
| 149 | (do not change this comment) */ | ||
diff --git a/src/s/usg5-2-2.h b/src/s/usg5-2-2.h deleted file mode 100644 index ae57e0f9eb3..00000000000 --- a/src/s/usg5-2-2.h +++ /dev/null | |||
| @@ -1,152 +0,0 @@ | |||
| 1 | /* Definitions file for GNU Emacs running on AT&T's System V Release 2.2 | ||
| 2 | Copyright (C) 1985, 1986, 1999, 2001, 2002, 2003, 2004, 2005, 2006, | ||
| 3 | 2007, 2008 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 3 of the License, or | ||
| 10 | (at your option) 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 GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | |||
| 21 | /* | ||
| 22 | * Define symbols to identify the version of Unix this is. | ||
| 23 | * Define all the symbols that apply correctly. | ||
| 24 | */ | ||
| 25 | |||
| 26 | #define USG /* System III, System V, etc */ | ||
| 27 | |||
| 28 | #define USG5 | ||
| 29 | |||
| 30 | /* SYSTEM_TYPE should indicate the kind of system you are using. | ||
| 31 | It sets the Lisp variable system-type. */ | ||
| 32 | |||
| 33 | #define SYSTEM_TYPE "usg-unix-v" | ||
| 34 | |||
| 35 | /* nomultiplejobs should be defined if your system's shell | ||
| 36 | does not have "job control" (the ability to stop a program, | ||
| 37 | run some other program, then continue the first one). */ | ||
| 38 | |||
| 39 | #define NOMULTIPLEJOBS | ||
| 40 | |||
| 41 | /* Default is to set interrupt_input to 0: don't do input buffering within Emacs */ | ||
| 42 | |||
| 43 | /* #define INTERRUPT_INPUT */ | ||
| 44 | |||
| 45 | /* Letter to use in finding device name of first pty, | ||
| 46 | if system supports pty's. 'p' means it is /dev/ptyp0 */ | ||
| 47 | |||
| 48 | #define FIRST_PTY_LETTER 'p' | ||
| 49 | |||
| 50 | /* | ||
| 51 | * Define HAVE_TERMIO if the system provides sysV-style ioctls | ||
| 52 | * for terminal control. | ||
| 53 | */ | ||
| 54 | |||
| 55 | #define HAVE_TERMIO | ||
| 56 | |||
| 57 | /* | ||
| 58 | * Define HAVE_PTYS if the system supports pty devices. | ||
| 59 | */ | ||
| 60 | |||
| 61 | /* #define HAVE_PTYS */ | ||
| 62 | |||
| 63 | /* Define HAVE_SOCKETS if system supports 4.2-compatible sockets. */ | ||
| 64 | |||
| 65 | /* #define HAVE_SOCKETS */ | ||
| 66 | |||
| 67 | /* | ||
| 68 | * Define NONSYSTEM_DIR_LIBRARY to make Emacs emulate | ||
| 69 | * The 4.2 opendir, etc., library functions. | ||
| 70 | */ | ||
| 71 | |||
| 72 | #define NONSYSTEM_DIR_LIBRARY | ||
| 73 | |||
| 74 | /* Define this symbol if your system has the functions bcopy, etc. */ | ||
| 75 | |||
| 76 | /* #define BSTRING */ | ||
| 77 | |||
| 78 | /* subprocesses should be defined if you want to | ||
| 79 | have code for asynchronous subprocesses | ||
| 80 | (as used in M-x compile and M-x shell). | ||
| 81 | This is supposed to work now on system V release 2. */ | ||
| 82 | |||
| 83 | #define subprocesses | ||
| 84 | |||
| 85 | /* If your system uses COFF (Common Object File Format) then define the | ||
| 86 | preprocessor symbol "COFF". */ | ||
| 87 | |||
| 88 | #define COFF | ||
| 89 | |||
| 90 | /* define MAIL_USE_FLOCK if the mailer uses flock | ||
| 91 | to interlock access to /usr/spool/mail/$USER. | ||
| 92 | The alternative is that a lock file named | ||
| 93 | /usr/spool/mail/$USER.lock. */ | ||
| 94 | |||
| 95 | /* #define MAIL_USE_FLOCK */ | ||
| 96 | |||
| 97 | /* Define CLASH_DETECTION if you want lock files to be written | ||
| 98 | so that Emacs can tell instantly when you try to modify | ||
| 99 | a file that someone else has modified in his Emacs. */ | ||
| 100 | |||
| 101 | /* #define CLASH_DETECTION */ | ||
| 102 | |||
| 103 | /* The file containing the kernel's symbol table is called /unix. */ | ||
| 104 | |||
| 105 | #define KERNEL_FILE "/unix" | ||
| 106 | |||
| 107 | /* The symbol in the kernel where the load average is found | ||
| 108 | is named avenrun. */ | ||
| 109 | |||
| 110 | #define LDAV_SYMBOL "avenrun" | ||
| 111 | |||
| 112 | /* Special hacks needed to make Emacs run on this system. */ | ||
| 113 | |||
| 114 | /* | ||
| 115 | * Make the sigsetmask function go away. Don't know what the | ||
| 116 | * ramifications of this are, but doesn't seem possible to | ||
| 117 | * emulate it properly anyway at this point. | ||
| 118 | */ | ||
| 119 | |||
| 120 | #define sigsetmask(mask) /* Null expansion */ | ||
| 121 | |||
| 122 | /* setjmp and longjmp can safely replace _setjmp and _longjmp, | ||
| 123 | but they will run slower. */ | ||
| 124 | |||
| 125 | #define _setjmp setjmp | ||
| 126 | #define _longjmp longjmp | ||
| 127 | |||
| 128 | /* On USG systems these have different names */ | ||
| 129 | |||
| 130 | #define index strchr | ||
| 131 | #define rindex strrchr | ||
| 132 | |||
| 133 | /* USG systems tend to put everything declared static | ||
| 134 | into the initialized data area, which becomes pure after dumping Emacs. | ||
| 135 | Foil this. Emacs carefully avoids static vars inside functions. */ | ||
| 136 | |||
| 137 | #define static | ||
| 138 | |||
| 139 | /* Compiler bug bites on many systems when default ADDR_CORRECT is used. */ | ||
| 140 | |||
| 141 | #define ADDR_CORRECT(x) (x) | ||
| 142 | |||
| 143 | /* Prevent -lg from being used for debugging. Not implemented? */ | ||
| 144 | |||
| 145 | #define LIBS_DEBUG | ||
| 146 | |||
| 147 | /* Use terminfo instead of termcap. */ | ||
| 148 | |||
| 149 | #define TERMINFO | ||
| 150 | |||
| 151 | /* arch-tag: 56923f22-9e2b-4814-b922-88c87657ff6b | ||
| 152 | (do not change this comment) */ | ||
diff --git a/src/s/usg5-2.h b/src/s/usg5-2.h deleted file mode 100644 index fe1a873d78a..00000000000 --- a/src/s/usg5-2.h +++ /dev/null | |||
| @@ -1,152 +0,0 @@ | |||
| 1 | /* Definitions file for GNU Emacs running on AT&T's System V Release 2.0 | ||
| 2 | Copyright (C) 1985, 1986, 1999, 2001, 2002, 2003, 2004, 2005, 2006, | ||
| 3 | 2007, 2008 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 3 of the License, or | ||
| 10 | (at your option) 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 GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | |||
| 21 | /* | ||
| 22 | * Define symbols to identify the version of Unix this is. | ||
| 23 | * Define all the symbols that apply correctly. | ||
| 24 | */ | ||
| 25 | |||
| 26 | #define USG /* System III, System V, etc */ | ||
| 27 | |||
| 28 | #define USG5 | ||
| 29 | |||
| 30 | /* SYSTEM_TYPE should indicate the kind of system you are using. | ||
| 31 | It sets the Lisp variable system-type. */ | ||
| 32 | |||
| 33 | #define SYSTEM_TYPE "usg-unix-v" | ||
| 34 | |||
| 35 | /* nomultiplejobs should be defined if your system's shell | ||
| 36 | does not have "job control" (the ability to stop a program, | ||
| 37 | run some other program, then continue the first one). */ | ||
| 38 | |||
| 39 | #define NOMULTIPLEJOBS | ||
| 40 | |||
| 41 | /* Default is to set interrupt_input to 0: don't do input buffering within Emacs */ | ||
| 42 | |||
| 43 | /* #define INTERRUPT_INPUT */ | ||
| 44 | |||
| 45 | /* Letter to use in finding device name of first pty, | ||
| 46 | if system supports pty's. 'p' means it is /dev/ptyp0 */ | ||
| 47 | |||
| 48 | #define FIRST_PTY_LETTER 'p' | ||
| 49 | |||
| 50 | /* | ||
| 51 | * Define HAVE_TERMIO if the system provides sysV-style ioctls | ||
| 52 | * for terminal control. | ||
| 53 | */ | ||
| 54 | |||
| 55 | #define HAVE_TERMIO | ||
| 56 | |||
| 57 | /* | ||
| 58 | * Define HAVE_PTYS if the system supports pty devices. | ||
| 59 | */ | ||
| 60 | |||
| 61 | /* #define HAVE_PTYS */ | ||
| 62 | |||
| 63 | /* Define HAVE_SOCKETS if system supports 4.2-compatible sockets. */ | ||
| 64 | |||
| 65 | /* #define HAVE_SOCKETS */ | ||
| 66 | |||
| 67 | /* | ||
| 68 | * Define NONSYSTEM_DIR_LIBRARY to make Emacs emulate | ||
| 69 | * The 4.2 opendir, etc., library functions. | ||
| 70 | */ | ||
| 71 | |||
| 72 | #define NONSYSTEM_DIR_LIBRARY | ||
| 73 | |||
| 74 | /* Define this symbol if your system has the functions bcopy, etc. */ | ||
| 75 | |||
| 76 | /* #define BSTRING */ | ||
| 77 | |||
| 78 | /* subprocesses should be defined if you want to | ||
| 79 | have code for asynchronous subprocesses | ||
| 80 | (as used in M-x compile and M-x shell). | ||
| 81 | This is supposed to work now on system V release 2. */ | ||
| 82 | |||
| 83 | #define subprocesses | ||
| 84 | |||
| 85 | /* If your system uses COFF (Common Object File Format) then define the | ||
| 86 | preprocessor symbol "COFF". */ | ||
| 87 | |||
| 88 | #define COFF | ||
| 89 | |||
| 90 | /* define MAIL_USE_FLOCK if the mailer uses flock | ||
| 91 | to interlock access to /usr/spool/mail/$USER. | ||
| 92 | The alternative is that a lock file named | ||
| 93 | /usr/spool/mail/$USER.lock. */ | ||
| 94 | |||
| 95 | /* #define MAIL_USE_FLOCK */ | ||
| 96 | |||
| 97 | /* Define CLASH_DETECTION if you want lock files to be written | ||
| 98 | so that Emacs can tell instantly when you try to modify | ||
| 99 | a file that someone else has modified in his Emacs. */ | ||
| 100 | |||
| 101 | /* #define CLASH_DETECTION */ | ||
| 102 | |||
| 103 | /* The file containing the kernel's symbol table is called /unix. */ | ||
| 104 | |||
| 105 | #define KERNEL_FILE "/unix" | ||
| 106 | |||
| 107 | /* The symbol in the kernel where the load average is found | ||
| 108 | is named avenrun. */ | ||
| 109 | |||
| 110 | #define LDAV_SYMBOL "avenrun" | ||
| 111 | |||
| 112 | /* Special hacks needed to make Emacs run on this system. */ | ||
| 113 | |||
| 114 | /* | ||
| 115 | * Make the sigsetmask function go away. Don't know what the | ||
| 116 | * ramifications of this are, but doesn't seem possible to | ||
| 117 | * emulate it properly anyway at this point. | ||
| 118 | */ | ||
| 119 | |||
| 120 | #define sigsetmask(mask) /* Null expansion */ | ||
| 121 | |||
| 122 | /* setjmp and longjmp can safely replace _setjmp and _longjmp, | ||
| 123 | but they will run slower. */ | ||
| 124 | |||
| 125 | #define _setjmp setjmp | ||
| 126 | #define _longjmp longjmp | ||
| 127 | |||
| 128 | /* On USG systems these have different names */ | ||
| 129 | |||
| 130 | #define index strchr | ||
| 131 | #define rindex strrchr | ||
| 132 | |||
| 133 | /* USG systems tend to put everything declared static | ||
| 134 | into the initialized data area, which becomes pure after dumping Emacs. | ||
| 135 | Foil this. Emacs carefully avoids static vars inside functions. */ | ||
| 136 | |||
| 137 | #define static | ||
| 138 | |||
| 139 | /* Compiler bug bites on many systems when default ADDR_CORRECT is used. */ | ||
| 140 | |||
| 141 | #define ADDR_CORRECT(x) (x) | ||
| 142 | |||
| 143 | /* Prevent -lg from being used for debugging. Not implemented? */ | ||
| 144 | |||
| 145 | #define LIBS_DEBUG | ||
| 146 | |||
| 147 | /* Use terminfo instead of termcap. */ | ||
| 148 | |||
| 149 | #define TERMINFO | ||
| 150 | |||
| 151 | /* arch-tag: cfd9500f-0284-4a88-8f07-3f56b42db13b | ||
| 152 | (do not change this comment) */ | ||
diff --git a/src/s/usg5-3.h b/src/s/usg5-3.h deleted file mode 100644 index 3a03f421fda..00000000000 --- a/src/s/usg5-3.h +++ /dev/null | |||
| @@ -1,202 +0,0 @@ | |||
| 1 | /* Definitions file for GNU Emacs running on AT&T's System V Release 3 | ||
| 2 | Copyright (C) 1987, 1999, 2001, 2002, 2003, 2004, 2005, 2006, | ||
| 3 | 2007, 2008 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 3 of the License, or | ||
| 10 | (at your option) 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 GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | ||
| 19 | |||
| 20 | |||
| 21 | /* | ||
| 22 | * Define symbols to identify the version of Unix this is. | ||
| 23 | * Define all the symbols that apply correctly. | ||
| 24 | */ | ||
| 25 | |||
| 26 | #define USG /* System III, System V, etc */ | ||
| 27 | |||
| 28 | #define USG5 | ||
| 29 | |||
| 30 | #define USG5_3 | ||
| 31 | |||
| 32 | /* SYSTEM_TYPE should indicate the kind of system you are using. | ||
| 33 | It sets the Lisp variable system-type. */ | ||
| 34 | |||
| 35 | #define SYSTEM_TYPE "usg-unix-v" | ||
| 36 | |||
| 37 | /* nomultiplejobs should be defined if your system's shell | ||
| 38 | does not have "job control" (the ability to stop a program, | ||
| 39 | run some other program, then continue the first one). */ | ||
| 40 | |||
| 41 | #define NOMULTIPLEJOBS | ||
| 42 | |||
| 43 | /* Default is to set interrupt_input to 0: don't do input buffering within Emacs */ | ||
| 44 | |||
| 45 | /* #define INTERRUPT_INPUT */ | ||
| 46 | |||
| 47 | /* Letter to use in finding device name of first pty, | ||
| 48 | if system supports pty's. 'p' means it is /dev/ptyp0 */ | ||
| 49 | |||
| 50 | #define FIRST_PTY_LETTER 'p' | ||
| 51 | |||
| 52 | /* | ||
| 53 | * Define HAVE_TERMIO if the system provides sysV-style ioctls | ||
| 54 | * for terminal control. | ||
| 55 | */ | ||
| 56 | |||
| 57 | #define HAVE_TERMIO | ||
| 58 | |||
| 59 | /* | ||
| 60 | * Define HAVE_PTYS if the system supports pty devices. | ||
| 61 | */ | ||
| 62 | |||
| 63 | /* Some versions of V.3 have this, but not all. | ||
| 64 | #define HAVE_PTYS | ||
| 65 | #define SYSV_PTYS */ | ||
| 66 | |||
| 67 | /* Define HAVE_SOCKETS if system supports 4.2-compatible sockets. */ | ||
| 68 | |||
| 69 | /* #define HAVE_SOCKETS */ | ||
| 70 | |||
| 71 | /* | ||
| 72 | * Define NONSYSTEM_DIR_LIBRARY to make Emacs emulate | ||
| 73 | * The 4.2 opendir, etc., library functions. | ||
| 74 | */ | ||
| 75 | |||
| 76 | /* #define NONSYSTEM_DIR_LIBRARY */ | ||
| 77 | |||
| 78 | /* | ||
| 79 | * Define SYSV_SYSTEM_DIR to use the V.3 getdents/readir | ||
| 80 | * library functions. Almost, but not quite the same as | ||
| 81 | * the 4.2 functions | ||
| 82 | */ | ||
| 83 | #define SYSV_SYSTEM_DIR | ||
| 84 | |||
| 85 | /* Define this symbol if your system has the functions bcopy, etc. */ | ||
| 86 | |||
| 87 | /* #define BSTRING */ | ||
| 88 | |||
| 89 | /* subprocesses should be defined if you want to | ||
| 90 | have code for asynchronous subprocesses | ||
| 91 | (as used in M-x compile and M-x shell). | ||
| 92 | This is supposed to work now on system V release 2. */ | ||
| 93 | |||
| 94 | #define subprocesses | ||
| 95 | |||
| 96 | /* If your system uses COFF (Common Object File Format) then define the | ||
| 97 | preprocessor symbol "COFF". */ | ||
| 98 | |||
| 99 | #define COFF | ||
| 100 | |||
| 101 | /* define MAIL_USE_FLOCK if the mailer uses flock | ||
| 102 | to interlock access to /usr/spool/mail/$USER. | ||
| 103 | The alternative is that a lock file named | ||
| 104 | /usr/spool/mail/$USER.lock. */ | ||
| 105 | |||
| 106 | /* #define MAIL_USE_FLOCK */ | ||
| 107 | |||
| 108 | /* Define CLASH_DETECTION if you want lock files to be written | ||
| 109 | so that Emacs can tell instantly when you try to modify | ||
| 110 | a file that someone else has modified in his Emacs. */ | ||
| 111 | |||
| 112 | /* #define CLASH_DETECTION */ | ||
| 113 | |||
| 114 | /* The file containing the kernel's symbol table is called /unix. */ | ||
| 115 | |||
| 116 | #define KERNEL_FILE "/unix" | ||
| 117 | |||
| 118 | /* The symbol in the kernel where the load average is found | ||
| 119 | is named avenrun. */ | ||
| 120 | |||
| 121 | #define LDAV_SYMBOL "avenrun" | ||
| 122 | |||
| 123 | /* Define this if system V IPC is available. */ | ||
| 124 | |||
| 125 | #define HAVE_SYSVIPC | ||
| 126 | |||
| 127 | /* Special hacks needed to make Emacs run on this system. */ | ||
| 128 | |||
| 129 | /* | ||
| 130 | * Make the sigsetmask function go away. Don't know what the | ||
| 131 | * ramifications of this are, but doesn't seem possible to | ||
| 132 | * emulate it properly anyway at this point. | ||
| 133 | */ | ||
| 134 | |||
| 135 | #define sigsetmask(mask) /* Null expansion */ | ||
| 136 | |||
| 137 | /* setjmp and longjmp can safely replace _setjmp and _longjmp, | ||
| 138 | but they will run slower. */ | ||
| 139 | |||
| 140 | #define _setjmp setjmp | ||
| 141 | #define _longjmp longjmp | ||
| 142 | |||
| 143 | /* On USG systems these have different names */ | ||
| 144 | #ifndef HAVE_INDEX | ||
| 145 | #define index strchr | ||
| 146 | #endif /* ! defined (HAVE_INDEX) */ | ||
| 147 | #ifndef HAVE_RINDEX | ||
| 148 | #define rindex strrchr | ||
| 149 | #endif /* ! defined (HAVE_RINDEX) */ | ||
| 150 | |||
| 151 | /* USG systems tend to put everything declared static | ||
| 152 | into the initialized data area, which becomes pure after dumping Emacs. | ||
| 153 | Foil this. Emacs carefully avoids static vars inside functions. */ | ||
| 154 | |||
| 155 | #define static | ||
| 156 | |||
| 157 | /* Compiler bug bites on many systems when default ADDR_CORRECT is used. */ | ||
| 158 | |||
| 159 | #define ADDR_CORRECT(x) (x) | ||
| 160 | |||
| 161 | /* Use terminfo instead of termcap. */ | ||
| 162 | |||
| 163 | #define TERMINFO | ||
| 164 | |||
| 165 | /* Some variants have TIOCGETC, but the structures to go with it | ||
| 166 | are not declared. */ | ||
| 167 | |||
| 168 | #define BROKEN_TIOCGETC | ||
| 169 | |||
| 170 | /* AT&T SVr3 X wants to be linked with shared libraries */ | ||
| 171 | |||
| 172 | #define LIB_X11_LIB -lX11_s | ||
| 173 | |||
| 174 | /* X needs to talk on the network, so search the network library. */ | ||
| 175 | |||
| 176 | #define LIBX11_SYSTEM -lpt -lnls -lnsl_s -lc_s | ||
| 177 | |||
| 178 | /* The docs for system V/386 suggest v.3 has sigpause, | ||
| 179 | so let's give it a try. */ | ||
| 180 | #define HAVE_SYSV_SIGPAUSE | ||
| 181 | |||
| 182 | /* Some variants have TIOCGWINSZ, but the structures to go with it | ||
| 183 | are not declared. */ | ||
| 184 | |||
| 185 | #define BROKEN_TIOCGWINSZ | ||
| 186 | |||
| 187 | /* If we're using the System V X port, BSD bstring functions will be handy */ | ||
| 188 | |||
| 189 | #ifdef HAVE_X_WINDOWS | ||
| 190 | #define BSTRING | ||
| 191 | #endif /* HAVE_X_WINDOWS */ | ||
| 192 | |||
| 193 | /* Enable support for shared libraries in unexec. */ | ||
| 194 | |||
| 195 | #define USG_SHARED_LIBRARIES | ||
| 196 | |||
| 197 | /* On USG systems signal handlers return void */ | ||
| 198 | |||
| 199 | #define SIGTYPE void | ||
| 200 | |||
| 201 | /* arch-tag: 2bca65fd-f015-44b9-a2aa-9f8170ce89ca | ||
| 202 | (do not change this comment) */ | ||
diff --git a/src/s/usg5-4-3.h b/src/s/usg5-4-3.h deleted file mode 100644 index 8d05e8b3fa6..00000000000 --- a/src/s/usg5-4-3.h +++ /dev/null | |||
| @@ -1,11 +0,0 @@ | |||
| 1 | /* s/ file for System V release 4.3. */ | ||
| 2 | |||
| 3 | #include "usg5-4-2.h" | ||
| 4 | |||
| 5 | /* Bill_Mann@PraxisInt.com: without this switch emacs generates this error | ||
| 6 | on start up for an i486-ncr-sysv4.3 (running the X toolkit): | ||
| 7 | _XipOpenIM() Unable to find Atom _XIM_INPUTMETHOD */ | ||
| 8 | #define X11R5_INHIBIT_I18N | ||
| 9 | |||
| 10 | /* arch-tag: 03ac8b3a-c3d4-4441-a773-1c1d9f111f1a | ||
| 11 | (do not change this comment) */ | ||
diff --git a/src/s/usg5-4.h b/src/s/usg5-4.h index 2fa70435549..79cc10ac031 100644 --- a/src/s/usg5-4.h +++ b/src/s/usg5-4.h | |||
| @@ -24,34 +24,155 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | |||
| 24 | 24 | ||
| 25 | /* Use the SysVr3 file for at least base configuration. */ | 25 | /* Use the SysVr3 file for at least base configuration. */ |
| 26 | 26 | ||
| 27 | #include "usg5-3.h" | 27 | #define USG /* System III, System V, etc */ |
| 28 | 28 | ||
| 29 | #define USG5 | ||
| 29 | #define USG5_4 | 30 | #define USG5_4 |
| 30 | 31 | ||
| 31 | /* We do have multiple jobs. Handle ^Z. */ | 32 | /* SYSTEM_TYPE should indicate the kind of system you are using. |
| 33 | It sets the Lisp variable system-type. */ | ||
| 32 | 34 | ||
| 33 | #undef NOMULTIPLEJOBS | 35 | #define SYSTEM_TYPE "usg-unix-v" |
| 34 | 36 | ||
| 35 | /* Motif needs -lgen. */ | 37 | /* Default is to set interrupt_input to 0: don't do input buffering within Emacs */ |
| 36 | #define LIBS_SYSTEM -lsocket -lnsl -lelf -lgen | ||
| 37 | #define ORDINARY_LINK | ||
| 38 | 38 | ||
| 39 | #if 0 | 39 | /* #define INTERRUPT_INPUT */ |
| 40 | #ifdef ORDINARY_LINK | 40 | |
| 41 | #define LIB_STANDARD -lc /usr/ucblib/libucb.a | 41 | /* |
| 42 | #else | 42 | * Define HAVE_TERMIO if the system provides sysV-style ioctls |
| 43 | #define START_FILES pre-crt0.o /usr/ccs/lib/crt1.o /usr/ccs/lib/crti.o /usr/ccs/lib/values-Xt.o | 43 | * for terminal control. |
| 44 | #define LIB_STANDARD -lc /usr/ucblib/libucb.a /usr/ccs/lib/crtn.o | 44 | */ |
| 45 | #endif | 45 | |
| 46 | #else | 46 | #define HAVE_TERMIO |
| 47 | |||
| 48 | /* | ||
| 49 | * Define HAVE_PTYS if the system supports pty devices. | ||
| 50 | */ | ||
| 51 | |||
| 52 | /* Some versions of V.3 have this, but not all. | ||
| 53 | #define HAVE_PTYS | ||
| 54 | #define SYSV_PTYS */ | ||
| 55 | |||
| 56 | /* Define HAVE_SOCKETS if system supports 4.2-compatible sockets. */ | ||
| 57 | |||
| 58 | /* #define HAVE_SOCKETS */ | ||
| 59 | |||
| 60 | /* | ||
| 61 | * Define NONSYSTEM_DIR_LIBRARY to make Emacs emulate | ||
| 62 | * The 4.2 opendir, etc., library functions. | ||
| 63 | */ | ||
| 64 | |||
| 65 | /* #define NONSYSTEM_DIR_LIBRARY */ | ||
| 66 | |||
| 67 | /* | ||
| 68 | * Define SYSV_SYSTEM_DIR to use the V.3 getdents/readir | ||
| 69 | * library functions. Almost, but not quite the same as | ||
| 70 | * the 4.2 functions | ||
| 71 | */ | ||
| 72 | #define SYSV_SYSTEM_DIR | ||
| 73 | |||
| 74 | /* Define this symbol if your system has the functions bcopy, etc. */ | ||
| 75 | |||
| 76 | /* #define BSTRING */ | ||
| 77 | |||
| 78 | /* subprocesses should be defined if you want to | ||
| 79 | have code for asynchronous subprocesses | ||
| 80 | (as used in M-x compile and M-x shell). | ||
| 81 | This is supposed to work now on system V release 2. */ | ||
| 82 | |||
| 83 | #define subprocesses | ||
| 84 | |||
| 85 | /* If your system uses COFF (Common Object File Format) then define the | ||
| 86 | preprocessor symbol "COFF". */ | ||
| 87 | |||
| 88 | #define COFF | ||
| 89 | |||
| 90 | /* define MAIL_USE_FLOCK if the mailer uses flock | ||
| 91 | to interlock access to /usr/spool/mail/$USER. | ||
| 92 | The alternative is that a lock file named | ||
| 93 | /usr/spool/mail/$USER.lock. */ | ||
| 94 | |||
| 95 | /* #define MAIL_USE_FLOCK */ | ||
| 96 | |||
| 97 | /* Define CLASH_DETECTION if you want lock files to be written | ||
| 98 | so that Emacs can tell instantly when you try to modify | ||
| 99 | a file that someone else has modified in his Emacs. */ | ||
| 100 | |||
| 101 | /* #define CLASH_DETECTION */ | ||
| 102 | |||
| 103 | /* The file containing the kernel's symbol table is called /unix. */ | ||
| 104 | |||
| 105 | #define KERNEL_FILE "/unix" | ||
| 106 | |||
| 107 | /* The symbol in the kernel where the load average is found | ||
| 108 | is named avenrun. */ | ||
| 109 | |||
| 110 | #define LDAV_SYMBOL "avenrun" | ||
| 111 | |||
| 112 | /* Define this if system V IPC is available. */ | ||
| 113 | |||
| 114 | #define HAVE_SYSVIPC | ||
| 115 | |||
| 116 | /* Special hacks needed to make Emacs run on this system. */ | ||
| 117 | |||
| 118 | /* | ||
| 119 | * Make the sigsetmask function go away. Don't know what the | ||
| 120 | * ramifications of this are, but doesn't seem possible to | ||
| 121 | * emulate it properly anyway at this point. | ||
| 122 | */ | ||
| 123 | |||
| 124 | #define sigsetmask(mask) /* Null expansion */ | ||
| 125 | |||
| 126 | /* setjmp and longjmp can safely replace _setjmp and _longjmp, | ||
| 127 | but they will run slower. */ | ||
| 128 | |||
| 129 | #define _setjmp setjmp | ||
| 130 | #define _longjmp longjmp | ||
| 131 | |||
| 132 | /* On USG systems these have different names */ | ||
| 133 | #ifndef HAVE_INDEX | ||
| 134 | #define index strchr | ||
| 135 | #endif /* ! defined (HAVE_INDEX) */ | ||
| 136 | #ifndef HAVE_RINDEX | ||
| 137 | #define rindex strrchr | ||
| 138 | #endif /* ! defined (HAVE_RINDEX) */ | ||
| 139 | |||
| 140 | /* USG systems tend to put everything declared static | ||
| 141 | into the initialized data area, which becomes pure after dumping Emacs. | ||
| 142 | Foil this. Emacs carefully avoids static vars inside functions. */ | ||
| 143 | |||
| 144 | #define static | ||
| 145 | |||
| 146 | /* Compiler bug bites on many systems when default ADDR_CORRECT is used. */ | ||
| 147 | |||
| 148 | #define ADDR_CORRECT(x) (x) | ||
| 149 | |||
| 150 | /* Use terminfo instead of termcap. */ | ||
| 151 | |||
| 152 | #define TERMINFO | ||
| 153 | |||
| 154 | |||
| 155 | /* The docs for system V/386 suggest v.3 has sigpause, | ||
| 156 | so let's give it a try. */ | ||
| 157 | #define HAVE_SYSV_SIGPAUSE | ||
| 158 | |||
| 159 | |||
| 160 | /* If we're using the System V X port, BSD bstring functions will be handy */ | ||
| 161 | |||
| 162 | #ifdef HAVE_X_WINDOWS | ||
| 163 | #define BSTRING | ||
| 164 | #endif /* HAVE_X_WINDOWS */ | ||
| 165 | |||
| 166 | /* Enable support for shared libraries in unexec. */ | ||
| 167 | |||
| 168 | #define USG_SHARED_LIBRARIES | ||
| 169 | |||
| 170 | /* On USG systems signal handlers return void */ | ||
| 171 | |||
| 172 | #define SIGTYPE void | ||
| 47 | 173 | ||
| 48 | #ifdef ORDINARY_LINK | ||
| 49 | #define LIB_STANDARD | ||
| 50 | #else | ||
| 51 | #define START_FILES pre-crt0.o /usr/ccs/lib/crt1.o /usr/ccs/lib/crti.o /usr/ccs/lib/values-Xt.o | 174 | #define START_FILES pre-crt0.o /usr/ccs/lib/crt1.o /usr/ccs/lib/crti.o /usr/ccs/lib/values-Xt.o |
| 52 | #define LIB_STANDARD -lc /usr/ccs/lib/crtn.o | 175 | #define LIB_STANDARD -lc /usr/ccs/lib/crtn.o |
| 53 | #endif | ||
| 54 | #endif | ||
| 55 | 176 | ||
| 56 | /* there are no -lg libraries on this system, and no libPW */ | 177 | /* there are no -lg libraries on this system, and no libPW */ |
| 57 | 178 | ||
| @@ -109,8 +230,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | |||
| 109 | 230 | ||
| 110 | #define HAVE_PTYS | 231 | #define HAVE_PTYS |
| 111 | #define HAVE_TERMIOS | 232 | #define HAVE_TERMIOS |
| 112 | #undef BROKEN_TIOCGWINSZ | ||
| 113 | #undef BROKEN_TIOCGETC | ||
| 114 | 233 | ||
| 115 | /* It is possible to receive SIGCHLD when there are no children | 234 | /* It is possible to receive SIGCHLD when there are no children |
| 116 | waiting, because a previous waitsys(2) cleaned up the carcass of child | 235 | waiting, because a previous waitsys(2) cleaned up the carcass of child |
| @@ -132,7 +251,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | |||
| 132 | /* This change means that we don't loop through allocate_pty too many | 251 | /* This change means that we don't loop through allocate_pty too many |
| 133 | times in the (rare) event of a failure. */ | 252 | times in the (rare) event of a failure. */ |
| 134 | 253 | ||
| 135 | #undef FIRST_PTY_LETTER | ||
| 136 | #define FIRST_PTY_LETTER 'z' | 254 | #define FIRST_PTY_LETTER 'z' |
| 137 | 255 | ||
| 138 | /* This sets the name of the master side of the PTY. */ | 256 | /* This sets the name of the master side of the PTY. */ |
| @@ -170,16 +288,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | |||
| 170 | if (ioctl (xforkin, I_PUSH, "ttcompat") == -1) \ | 288 | if (ioctl (xforkin, I_PUSH, "ttcompat") == -1) \ |
| 171 | fatal ("ioctl I_PUSH ttcompat", errno); | 289 | fatal ("ioctl I_PUSH ttcompat", errno); |
| 172 | 290 | ||
| 173 | /* Undo the SVr3 X11 library definition */ | ||
| 174 | #undef LIB_X11_LIB | ||
| 175 | |||
| 176 | /* The definition of this in s-usg5-3.h is not needed in 5.4. */ | ||
| 177 | /* liblnsl_s should never be used. The _s suffix implies a shared | ||
| 178 | library, as opposed to a DLL. Share libraries were used in SVR3, and are | ||
| 179 | available only in order to allow SVR3 binaries to run. They should not be | ||
| 180 | linked in to new binaries. -- caraway!pinkas@caraway.intel.com. */ | ||
| 181 | #undef LIBX11_SYSTEM | ||
| 182 | |||
| 183 | /* Tell x11term.c and keyboard.c we have the system V streams feature. */ | 291 | /* Tell x11term.c and keyboard.c we have the system V streams feature. */ |
| 184 | #define SYSV_STREAMS | 292 | #define SYSV_STREAMS |
| 185 | 293 | ||
| @@ -189,7 +297,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | |||
| 189 | 297 | ||
| 190 | /* Markus Weiand <weiand@khof.com> says this is needed for Motif on | 298 | /* Markus Weiand <weiand@khof.com> says this is needed for Motif on |
| 191 | SINIX. */ | 299 | SINIX. */ |
| 192 | #undef LIBS_SYSTEM | ||
| 193 | #define LIBS_SYSTEM -lgen | 300 | #define LIBS_SYSTEM -lgen |
| 194 | 301 | ||
| 195 | /* arch-tag: 1a0ed909-5faa-434b-b7c3-9d86c63d53a6 | 302 | /* arch-tag: 1a0ed909-5faa-434b-b7c3-9d86c63d53a6 |
diff --git a/src/s/ux4800.h b/src/s/ux4800.h deleted file mode 100644 index 1c8729f416b..00000000000 --- a/src/s/ux4800.h +++ /dev/null | |||
| @@ -1,20 +0,0 @@ | |||
| 1 | /* Definitions file for GNU Emacs running on NEC's UX/4800 (SVR4.2MP) */ | ||
| 2 | #include "usg5-4-2.h" | ||
| 3 | #undef LIB_MOTIF | ||
| 4 | #ifndef nec_ews | ||
| 5 | #define nec_ews | ||
| 6 | #endif | ||
| 7 | #ifndef nec_ews_svr4 | ||
| 8 | #define nec_ews_svr4 | ||
| 9 | #endif | ||
| 10 | #define XOS_NEEDS_TIME_H | ||
| 11 | #define HAVE_CLOCK | ||
| 12 | #ifdef __STDC__ | ||
| 13 | #define MKDIR_PROTOTYPE int mkdir(char *dpath, mode_t dmode) | ||
| 14 | #endif | ||
| 15 | #ifndef __GNUC__ | ||
| 16 | #define C_DEBUG_SWITCH -O -KOlimit=3000 -ZXNd=5000 | ||
| 17 | #endif | ||
| 18 | |||
| 19 | /* arch-tag: e42eeb13-028a-490b-8427-0b57010f2ab9 | ||
| 20 | (do not change this comment) */ | ||
diff --git a/src/s/uxpds.h b/src/s/uxpds.h deleted file mode 100644 index c3ddf1039c1..00000000000 --- a/src/s/uxpds.h +++ /dev/null | |||
| @@ -1,11 +0,0 @@ | |||
| 1 | /* Handle uxpds */ | ||
| 2 | |||
| 3 | #include "usg5-4-2.h" | ||
| 4 | |||
| 5 | /* This triggers a conditional in xfaces.c. */ | ||
| 6 | #define XOS_NEEDS_TIME_H | ||
| 7 | |||
| 8 | #define FSCALE 256 | ||
| 9 | |||
| 10 | /* arch-tag: c02db2a6-c725-4a6b-adee-66e0303df2a8 | ||
| 11 | (do not change this comment) */ | ||
diff --git a/src/s/uxpv.h b/src/s/uxpv.h deleted file mode 100644 index 95715455984..00000000000 --- a/src/s/uxpv.h +++ /dev/null | |||
| @@ -1,14 +0,0 @@ | |||
| 1 | /* System description file for Fujitsu UXP/V | ||
| 2 | This file describes the parameters that system description files | ||
| 3 | should define or not. */ | ||
| 4 | |||
| 5 | #include "usg5-4-2.h" | ||
| 6 | |||
| 7 | /* SYSTEM_TYPE should indicate the kind of system you are using. | ||
| 8 | It sets the Lisp variable system-type. */ | ||
| 9 | |||
| 10 | #undef SYSTEM_TYPE | ||
| 11 | #define SYSTEM_TYPE "uxpv" | ||
| 12 | |||
| 13 | /* arch-tag: 3f00cfe7-f44c-45ce-a2fe-2b17fc411a1e | ||
| 14 | (do not change this comment) */ | ||
diff --git a/src/sysdep.c b/src/sysdep.c index bac8a638182..c2a7d1a0815 100644 --- a/src/sysdep.c +++ b/src/sysdep.c | |||
| @@ -206,10 +206,6 @@ struct utimbuf { | |||
| 206 | #define LPASS8 0 | 206 | #define LPASS8 0 |
| 207 | #endif | 207 | #endif |
| 208 | 208 | ||
| 209 | #ifdef BSD4_1 | ||
| 210 | #define LNOFLSH 0100000 | ||
| 211 | #endif | ||
| 212 | |||
| 213 | static int baud_convert[] = | 209 | static int baud_convert[] = |
| 214 | #ifdef BAUD_CONVERT | 210 | #ifdef BAUD_CONVERT |
| 215 | BAUD_CONVERT; | 211 | BAUD_CONVERT; |
| @@ -235,11 +231,6 @@ int emacs_ospeed; | |||
| 235 | 231 | ||
| 236 | void croak P_ ((char *)) NO_RETURN; | 232 | void croak P_ ((char *)) NO_RETURN; |
| 237 | 233 | ||
| 238 | #ifdef AIXHFT | ||
| 239 | void hft_init P_ ((struct tty_display_info *)); | ||
| 240 | void hft_reset P_ ((struct tty_display_info *)); | ||
| 241 | #endif | ||
| 242 | |||
| 243 | /* Temporary used by `sigblock' when defined in terms of signprocmask. */ | 234 | /* Temporary used by `sigblock' when defined in terms of signprocmask. */ |
| 244 | 235 | ||
| 245 | SIGMASKTYPE sigprocmask_set; | 236 | SIGMASKTYPE sigprocmask_set; |
| @@ -483,7 +474,7 @@ wait_for_termination (pid) | |||
| 483 | status = SYS$FORCEX (&pid, 0, 0); | 474 | status = SYS$FORCEX (&pid, 0, 0); |
| 484 | break; | 475 | break; |
| 485 | #else /* not VMS */ | 476 | #else /* not VMS */ |
| 486 | #if defined (BSD_SYSTEM) || (defined (HPUX) && !defined (HPUX_5)) | 477 | #if defined (BSD_SYSTEM) || defined (HPUX) |
| 487 | /* Note that kill returns -1 even if the process is just a zombie now. | 478 | /* Note that kill returns -1 even if the process is just a zombie now. |
| 488 | But inevitably a SIGCHLD interrupt should be generated | 479 | But inevitably a SIGCHLD interrupt should be generated |
| 489 | and child_sig will do wait3 and make the process go away. */ | 480 | and child_sig will do wait3 and make the process go away. */ |
| @@ -542,16 +533,9 @@ wait_for_termination (pid) | |||
| 542 | #if __DJGPP__ > 1 | 533 | #if __DJGPP__ > 1 |
| 543 | break; | 534 | break; |
| 544 | #else /* not __DJGPP__ > 1 */ | 535 | #else /* not __DJGPP__ > 1 */ |
| 545 | #ifndef BSD4_1 | ||
| 546 | if (kill (pid, 0) < 0) | 536 | if (kill (pid, 0) < 0) |
| 547 | break; | 537 | break; |
| 548 | wait (0); | 538 | wait (0); |
| 549 | #else /* BSD4_1 */ | ||
| 550 | int status; | ||
| 551 | status = wait (0); | ||
| 552 | if (status == pid || status == -1) | ||
| 553 | break; | ||
| 554 | #endif /* BSD4_1 */ | ||
| 555 | #endif /* not __DJGPP__ > 1*/ | 539 | #endif /* not __DJGPP__ > 1*/ |
| 556 | #endif /* not subprocesses */ | 540 | #endif /* not subprocesses */ |
| 557 | } | 541 | } |
| @@ -695,10 +679,6 @@ child_setup_tty (out) | |||
| 695 | 679 | ||
| 696 | EMACS_SET_TTY (out, &s, 0); | 680 | EMACS_SET_TTY (out, &s, 0); |
| 697 | 681 | ||
| 698 | #ifdef BSD4_1 | ||
| 699 | if (interrupt_input) | ||
| 700 | reset_sigio (0); | ||
| 701 | #endif /* BSD4_1 */ | ||
| 702 | #endif /* not DOS_NT */ | 682 | #endif /* not DOS_NT */ |
| 703 | } | 683 | } |
| 704 | #endif /* not VMS */ | 684 | #endif /* not VMS */ |
| @@ -1267,12 +1247,6 @@ emacs_set_tty (fd, settings, flushp) | |||
| 1267 | 1247 | ||
| 1268 | 1248 | ||
| 1269 | 1249 | ||
| 1270 | #ifdef BSD4_1 | ||
| 1271 | /* BSD 4.1 needs to keep track of the lmode bits in order to start | ||
| 1272 | sigio. */ | ||
| 1273 | int lmode; | ||
| 1274 | #endif | ||
| 1275 | |||
| 1276 | #ifdef F_SETOWN | 1250 | #ifdef F_SETOWN |
| 1277 | int old_fcntl_owner[MAXDESC]; | 1251 | int old_fcntl_owner[MAXDESC]; |
| 1278 | #endif /* F_SETOWN */ | 1252 | #endif /* F_SETOWN */ |
| @@ -1281,15 +1255,11 @@ int old_fcntl_owner[MAXDESC]; | |||
| 1281 | but if so, this does no harm, | 1255 | but if so, this does no harm, |
| 1282 | and using the same name avoids wasting the other one's space. */ | 1256 | and using the same name avoids wasting the other one's space. */ |
| 1283 | 1257 | ||
| 1284 | #ifdef nec_ews_svr4 | ||
| 1285 | extern char *_sobuf ; | ||
| 1286 | #else | ||
| 1287 | #if defined (USG) || defined (DGUX) | 1258 | #if defined (USG) || defined (DGUX) |
| 1288 | unsigned char _sobuf[BUFSIZ+8]; | 1259 | unsigned char _sobuf[BUFSIZ+8]; |
| 1289 | #else | 1260 | #else |
| 1290 | char _sobuf[BUFSIZ]; | 1261 | char _sobuf[BUFSIZ]; |
| 1291 | #endif | 1262 | #endif |
| 1292 | #endif | ||
| 1293 | 1263 | ||
| 1294 | #ifdef HAVE_LTCHARS | 1264 | #ifdef HAVE_LTCHARS |
| 1295 | static struct ltchars new_ltchars = {-1,-1,-1,-1,-1,-1}; | 1265 | static struct ltchars new_ltchars = {-1,-1,-1,-1,-1,-1}; |
| @@ -1495,11 +1465,6 @@ init_sys_modes (tty_out) | |||
| 1495 | } | 1465 | } |
| 1496 | #endif /* mips or HAVE_TCATTR */ | 1466 | #endif /* mips or HAVE_TCATTR */ |
| 1497 | 1467 | ||
| 1498 | #ifdef SET_LINE_DISCIPLINE | ||
| 1499 | /* Need to explicitly request TERMIODISC line discipline or | ||
| 1500 | Ultrix's termios does not work correctly. */ | ||
| 1501 | tty.main.c_line = SET_LINE_DISCIPLINE; | ||
| 1502 | #endif | ||
| 1503 | #ifdef AIX | 1468 | #ifdef AIX |
| 1504 | #ifndef IBMR2AIX | 1469 | #ifndef IBMR2AIX |
| 1505 | /* AIX enhanced edit loses NULs, so disable it. */ | 1470 | /* AIX enhanced edit loses NULs, so disable it. */ |
| @@ -1566,16 +1531,7 @@ init_sys_modes (tty_out) | |||
| 1566 | } | 1531 | } |
| 1567 | 1532 | ||
| 1568 | tty.lmode = LDECCTQ | LLITOUT | LPASS8 | LNOFLSH | tty_out->old_tty.lmode; | 1533 | tty.lmode = LDECCTQ | LLITOUT | LPASS8 | LNOFLSH | tty_out->old_tty.lmode; |
| 1569 | #ifdef ultrix | ||
| 1570 | /* Under Ultrix 4.2a, leaving this out doesn't seem to hurt | ||
| 1571 | anything, and leaving it in breaks the meta key. Go figure. */ | ||
| 1572 | tty.lmode &= ~LLITOUT; | ||
| 1573 | #endif | ||
| 1574 | 1534 | ||
| 1575 | #ifdef BSD4_1 | ||
| 1576 | lmode = tty.lmode; | ||
| 1577 | #endif | ||
| 1578 | |||
| 1579 | #endif /* HAVE_TCHARS */ | 1535 | #endif /* HAVE_TCHARS */ |
| 1580 | #endif /* not HAVE_TERMIO */ | 1536 | #endif /* not HAVE_TERMIO */ |
| 1581 | 1537 | ||
| @@ -1600,26 +1556,12 @@ init_sys_modes (tty_out) | |||
| 1600 | if (!tty_out->flow_control) ioctl (fileno (tty_out->input), TIOCSTART, 0); | 1556 | if (!tty_out->flow_control) ioctl (fileno (tty_out->input), TIOCSTART, 0); |
| 1601 | #endif | 1557 | #endif |
| 1602 | 1558 | ||
| 1603 | #if defined (HAVE_TERMIOS) || defined (HPUX9) | 1559 | #if defined (HAVE_TERMIOS) || defined (HPUX) |
| 1604 | #ifdef TCOON | 1560 | #ifdef TCOON |
| 1605 | if (!tty_out->flow_control) tcflow (fileno (tty_out->input), TCOON); | 1561 | if (!tty_out->flow_control) tcflow (fileno (tty_out->input), TCOON); |
| 1606 | #endif | 1562 | #endif |
| 1607 | #endif | 1563 | #endif |
| 1608 | 1564 | ||
| 1609 | #ifdef AIXHFT | ||
| 1610 | hft_init (tty_out); | ||
| 1611 | #ifdef IBMR2AIX | ||
| 1612 | { | ||
| 1613 | /* IBM's HFT device usually thinks a ^J should be LF/CR. We need it | ||
| 1614 | to be only LF. This is the way that is done. */ | ||
| 1615 | struct termio tty; | ||
| 1616 | |||
| 1617 | if (ioctl (1, HFTGETID, &tty) != -1) | ||
| 1618 | write (1, "\033[20l", 5); | ||
| 1619 | } | ||
| 1620 | #endif | ||
| 1621 | #endif /* AIXHFT */ | ||
| 1622 | |||
| 1623 | #ifdef VMS | 1565 | #ifdef VMS |
| 1624 | /* Appears to do nothing when in PASTHRU mode. | 1566 | /* Appears to do nothing when in PASTHRU mode. |
| 1625 | SYS$QIOW (0, fileno (tty_out->input), IO$_SETMODE|IO$M_OUTBAND, 0, 0, 0, | 1567 | SYS$QIOW (0, fileno (tty_out->input), IO$_SETMODE|IO$M_OUTBAND, 0, 0, 0, |
| @@ -1649,11 +1591,6 @@ init_sys_modes (tty_out) | |||
| 1649 | #endif /* F_GETOWN */ | 1591 | #endif /* F_GETOWN */ |
| 1650 | #endif /* F_SETFL */ | 1592 | #endif /* F_SETFL */ |
| 1651 | 1593 | ||
| 1652 | #ifdef BSD4_1 | ||
| 1653 | if (interrupt_input) | ||
| 1654 | init_sigio (fileno (tty_out->input)); | ||
| 1655 | #endif | ||
| 1656 | |||
| 1657 | #ifdef VMS /* VMS sometimes has this symbol but lacks setvbuf. */ | 1594 | #ifdef VMS /* VMS sometimes has this symbol but lacks setvbuf. */ |
| 1658 | #undef _IOFBF | 1595 | #undef _IOFBF |
| 1659 | #endif | 1596 | #endif |
| @@ -1868,26 +1805,13 @@ reset_sys_modes (tty_out) | |||
| 1868 | cmgoto (tty_out, FrameRows (tty_out) - 1, 0); | 1805 | cmgoto (tty_out, FrameRows (tty_out) - 1, 0); |
| 1869 | fflush (tty_out->output); | 1806 | fflush (tty_out->output); |
| 1870 | 1807 | ||
| 1871 | #if defined (IBMR2AIX) && defined (AIXHFT) | ||
| 1872 | { | ||
| 1873 | /* HFT devices normally use ^J as a LF/CR. We forced it to | ||
| 1874 | do the LF only. Now, we need to reset it. */ | ||
| 1875 | struct termio tty; | ||
| 1876 | |||
| 1877 | if (ioctl (1, HFTGETID, &tty) != -1) | ||
| 1878 | write (1, "\033[20h", 5); | ||
| 1879 | } | ||
| 1880 | #endif | ||
| 1881 | |||
| 1882 | if (tty_out->terminal->reset_terminal_modes_hook) | 1808 | if (tty_out->terminal->reset_terminal_modes_hook) |
| 1883 | tty_out->terminal->reset_terminal_modes_hook (tty_out->terminal); | 1809 | tty_out->terminal->reset_terminal_modes_hook (tty_out->terminal); |
| 1884 | 1810 | ||
| 1885 | #ifdef BSD_SYSTEM | 1811 | #ifdef BSD_SYSTEM |
| 1886 | #ifndef BSD4_1 | ||
| 1887 | /* Avoid possible loss of output when changing terminal modes. */ | 1812 | /* Avoid possible loss of output when changing terminal modes. */ |
| 1888 | fsync (fileno (tty_out->output)); | 1813 | fsync (fileno (tty_out->output)); |
| 1889 | #endif | 1814 | #endif |
| 1890 | #endif | ||
| 1891 | 1815 | ||
| 1892 | #ifdef F_SETFL | 1816 | #ifdef F_SETFL |
| 1893 | #ifdef F_SETOWN /* F_SETFL does not imply existence of F_SETOWN */ | 1817 | #ifdef F_SETOWN /* F_SETFL does not imply existence of F_SETOWN */ |
| @@ -1903,10 +1827,6 @@ reset_sys_modes (tty_out) | |||
| 1903 | fcntl (fileno (tty_out->input), F_GETFL, 0) & ~O_NDELAY); | 1827 | fcntl (fileno (tty_out->input), F_GETFL, 0) & ~O_NDELAY); |
| 1904 | #endif | 1828 | #endif |
| 1905 | #endif /* F_SETFL */ | 1829 | #endif /* F_SETFL */ |
| 1906 | #ifdef BSD4_1 | ||
| 1907 | if (interrupt_input) | ||
| 1908 | reset_sigio (fileno (tty_out->input)); | ||
| 1909 | #endif /* BSD4_1 */ | ||
| 1910 | 1830 | ||
| 1911 | if (tty_out->old_tty) | 1831 | if (tty_out->old_tty) |
| 1912 | while (EMACS_SET_TTY (fileno (tty_out->input), | 1832 | while (EMACS_SET_TTY (fileno (tty_out->input), |
| @@ -1917,17 +1837,6 @@ reset_sys_modes (tty_out) | |||
| 1917 | dos_ttcooked (); | 1837 | dos_ttcooked (); |
| 1918 | #endif | 1838 | #endif |
| 1919 | 1839 | ||
| 1920 | #ifdef SET_LINE_DISCIPLINE | ||
| 1921 | /* Ultrix's termios *ignores* any line discipline except TERMIODISC. | ||
| 1922 | A different old line discipline is therefore not restored, yet. | ||
| 1923 | Restore the old line discipline by hand. */ | ||
| 1924 | ioctl (0, TIOCSETD, &tty_out->old_tty.main.c_line); | ||
| 1925 | #endif | ||
| 1926 | |||
| 1927 | #ifdef AIXHFT | ||
| 1928 | hft_reset (); | ||
| 1929 | #endif | ||
| 1930 | |||
| 1931 | #ifdef BSD_PGRPS | 1840 | #ifdef BSD_PGRPS |
| 1932 | widen_foreground_group (fileno (tty_out->input)); | 1841 | widen_foreground_group (fileno (tty_out->input)); |
| 1933 | #endif | 1842 | #endif |
| @@ -2318,20 +2227,14 @@ start_of_data () | |||
| 2318 | /* init_system_name sets up the string for the Lisp function | 2227 | /* init_system_name sets up the string for the Lisp function |
| 2319 | system-name to return. */ | 2228 | system-name to return. */ |
| 2320 | 2229 | ||
| 2321 | #ifdef BSD4_1 | ||
| 2322 | #include <whoami.h> | ||
| 2323 | #endif | ||
| 2324 | |||
| 2325 | extern Lisp_Object Vsystem_name; | 2230 | extern Lisp_Object Vsystem_name; |
| 2326 | 2231 | ||
| 2327 | #ifndef BSD4_1 | ||
| 2328 | #ifndef VMS | 2232 | #ifndef VMS |
| 2329 | #ifdef HAVE_SOCKETS | 2233 | #ifdef HAVE_SOCKETS |
| 2330 | #include <sys/socket.h> | 2234 | #include <sys/socket.h> |
| 2331 | #include <netdb.h> | 2235 | #include <netdb.h> |
| 2332 | #endif /* HAVE_SOCKETS */ | 2236 | #endif /* HAVE_SOCKETS */ |
| 2333 | #endif /* not VMS */ | 2237 | #endif /* not VMS */ |
| 2334 | #endif /* not BSD4_1 */ | ||
| 2335 | 2238 | ||
| 2336 | #ifdef TRY_AGAIN | 2239 | #ifdef TRY_AGAIN |
| 2337 | #ifndef HAVE_H_ERRNO | 2240 | #ifndef HAVE_H_ERRNO |
| @@ -2342,9 +2245,6 @@ extern int h_errno; | |||
| 2342 | void | 2245 | void |
| 2343 | init_system_name () | 2246 | init_system_name () |
| 2344 | { | 2247 | { |
| 2345 | #ifdef BSD4_1 | ||
| 2346 | Vsystem_name = build_string (sysname); | ||
| 2347 | #else | ||
| 2348 | #ifdef VMS | 2248 | #ifdef VMS |
| 2349 | char *sp, *end; | 2249 | char *sp, *end; |
| 2350 | if ((sp = egetenv ("SYS$NODE")) == 0) | 2250 | if ((sp = egetenv ("SYS$NODE")) == 0) |
| @@ -2525,7 +2425,6 @@ init_system_name () | |||
| 2525 | Vsystem_name = build_string (hostname); | 2425 | Vsystem_name = build_string (hostname); |
| 2526 | #endif /* HAVE_GETHOSTNAME */ | 2426 | #endif /* HAVE_GETHOSTNAME */ |
| 2527 | #endif /* VMS */ | 2427 | #endif /* VMS */ |
| 2528 | #endif /* BSD4_1 */ | ||
| 2529 | { | 2428 | { |
| 2530 | unsigned char *p; | 2429 | unsigned char *p; |
| 2531 | for (p = SDATA (Vsystem_name); *p; p++) | 2430 | for (p = SDATA (Vsystem_name); *p; p++) |
| @@ -2567,11 +2466,7 @@ SIGTYPE | |||
| 2567 | select_alarm () | 2466 | select_alarm () |
| 2568 | { | 2467 | { |
| 2569 | select_alarmed = 1; | 2468 | select_alarmed = 1; |
| 2570 | #ifdef BSD4_1 | ||
| 2571 | sigrelse (SIGALRM); | ||
| 2572 | #else /* not BSD4_1 */ | ||
| 2573 | signal (SIGALRM, SIG_IGN); | 2469 | signal (SIGALRM, SIG_IGN); |
| 2574 | #endif /* not BSD4_1 */ | ||
| 2575 | SIGNAL_THREAD_CHECK (SIGALRM); | 2470 | SIGNAL_THREAD_CHECK (SIGALRM); |
| 2576 | if (read_alarm_should_throw) | 2471 | if (read_alarm_should_throw) |
| 2577 | longjmp (read_alarm_throw, 1); | 2472 | longjmp (read_alarm_throw, 1); |
| @@ -2782,93 +2677,6 @@ read_input_waiting () | |||
| 2782 | #endif /* not VMS */ | 2677 | #endif /* not VMS */ |
| 2783 | #endif /* not MSDOS */ | 2678 | #endif /* not MSDOS */ |
| 2784 | 2679 | ||
| 2785 | #ifdef BSD4_1 | ||
| 2786 | void | ||
| 2787 | init_sigio (fd) | ||
| 2788 | int fd; | ||
| 2789 | { | ||
| 2790 | if (noninteractive) | ||
| 2791 | return; | ||
| 2792 | lmode = LINTRUP | lmode; | ||
| 2793 | ioctl (fd, TIOCLSET, &lmode); | ||
| 2794 | } | ||
| 2795 | |||
| 2796 | void | ||
| 2797 | reset_sigio (fd) | ||
| 2798 | int fd; | ||
| 2799 | { | ||
| 2800 | if (noninteractive) | ||
| 2801 | return; | ||
| 2802 | lmode = ~LINTRUP & lmode; | ||
| 2803 | ioctl (fd, TIOCLSET, &lmode); | ||
| 2804 | } | ||
| 2805 | |||
| 2806 | void | ||
| 2807 | request_sigio () | ||
| 2808 | { | ||
| 2809 | if (noninteractive) | ||
| 2810 | return; | ||
| 2811 | sigrelse (SIGTINT); | ||
| 2812 | |||
| 2813 | interrupts_deferred = 0; | ||
| 2814 | } | ||
| 2815 | |||
| 2816 | void | ||
| 2817 | unrequest_sigio () | ||
| 2818 | { | ||
| 2819 | if (noninteractive) | ||
| 2820 | return; | ||
| 2821 | sighold (SIGTINT); | ||
| 2822 | |||
| 2823 | interrupts_deferred = 1; | ||
| 2824 | } | ||
| 2825 | |||
| 2826 | /* still inside #ifdef BSD4_1 */ | ||
| 2827 | #ifdef subprocesses | ||
| 2828 | |||
| 2829 | int sigheld; /* Mask of held signals */ | ||
| 2830 | |||
| 2831 | void | ||
| 2832 | sigholdx (signum) | ||
| 2833 | int signum; | ||
| 2834 | { | ||
| 2835 | sigheld |= sigbit (signum); | ||
| 2836 | sighold (signum); | ||
| 2837 | } | ||
| 2838 | |||
| 2839 | void | ||
| 2840 | sigisheld (signum) | ||
| 2841 | int signum; | ||
| 2842 | { | ||
| 2843 | sigheld |= sigbit (signum); | ||
| 2844 | } | ||
| 2845 | |||
| 2846 | void | ||
| 2847 | sigunhold (signum) | ||
| 2848 | int signum; | ||
| 2849 | { | ||
| 2850 | sigheld &= ~sigbit (signum); | ||
| 2851 | sigrelse (signum); | ||
| 2852 | } | ||
| 2853 | |||
| 2854 | void | ||
| 2855 | sigfree () /* Free all held signals */ | ||
| 2856 | { | ||
| 2857 | int i; | ||
| 2858 | for (i = 0; i < NSIG; i++) | ||
| 2859 | if (sigheld & sigbit (i)) | ||
| 2860 | sigrelse (i); | ||
| 2861 | sigheld = 0; | ||
| 2862 | } | ||
| 2863 | |||
| 2864 | int | ||
| 2865 | sigbit (i) | ||
| 2866 | { | ||
| 2867 | return 1 << (i - 1); | ||
| 2868 | } | ||
| 2869 | #endif /* subprocesses */ | ||
| 2870 | #endif /* BSD4_1 */ | ||
| 2871 | |||
| 2872 | /* POSIX signals support - DJB */ | 2680 | /* POSIX signals support - DJB */ |
| 2873 | /* Anyone with POSIX signals should have ANSI C declarations */ | 2681 | /* Anyone with POSIX signals should have ANSI C declarations */ |
| 2874 | 2682 | ||
| @@ -3327,11 +3135,6 @@ emacs_open (path, oflag, mode) | |||
| 3327 | { | 3135 | { |
| 3328 | register int rtnval; | 3136 | register int rtnval; |
| 3329 | 3137 | ||
| 3330 | #ifdef BSD4_1 | ||
| 3331 | if (oflag & O_CREAT) | ||
| 3332 | return creat (path, mode); | ||
| 3333 | #endif | ||
| 3334 | |||
| 3335 | while ((rtnval = open (path, oflag, mode)) == -1 | 3138 | while ((rtnval = open (path, oflag, mode)) == -1 |
| 3336 | && (errno == EINTR)) | 3139 | && (errno == EINTR)) |
| 3337 | QUIT; | 3140 | QUIT; |
| @@ -5189,100 +4992,6 @@ srandom (seed) | |||
| 5189 | } | 4992 | } |
| 5190 | #endif /* VMS */ | 4993 | #endif /* VMS */ |
| 5191 | 4994 | ||
| 5192 | #ifdef AIXHFT | ||
| 5193 | |||
| 5194 | /* Called from init_sys_modes. */ | ||
| 5195 | void | ||
| 5196 | hft_init (struct tty_display_info *tty_out) | ||
| 5197 | { | ||
| 5198 | int junk; | ||
| 5199 | |||
| 5200 | /* If we're not on an HFT we shouldn't do any of this. We determine | ||
| 5201 | if we are on an HFT by trying to get an HFT error code. If this | ||
| 5202 | call fails, we're not on an HFT. */ | ||
| 5203 | #ifdef IBMR2AIX | ||
| 5204 | if (ioctl (0, HFQERROR, &junk) < 0) | ||
| 5205 | return; | ||
| 5206 | #else /* not IBMR2AIX */ | ||
| 5207 | if (ioctl (0, HFQEIO, 0) < 0) | ||
| 5208 | return; | ||
| 5209 | #endif /* not IBMR2AIX */ | ||
| 5210 | |||
| 5211 | /* On AIX the default hft keyboard mapping uses backspace rather than delete | ||
| 5212 | as the rubout key's ASCII code. Here this is changed. The bug is that | ||
| 5213 | there's no way to determine the old mapping, so in reset_sys_modes | ||
| 5214 | we need to assume that the normal map had been present. Of course, this | ||
| 5215 | code also doesn't help if on a terminal emulator which doesn't understand | ||
| 5216 | HFT VTD's. */ | ||
| 5217 | { | ||
| 5218 | struct hfbuf buf; | ||
| 5219 | struct hfkeymap keymap; | ||
| 5220 | |||
| 5221 | buf.hf_bufp = (char *)&keymap; | ||
| 5222 | buf.hf_buflen = sizeof (keymap); | ||
| 5223 | keymap.hf_nkeys = 2; | ||
| 5224 | keymap.hfkey[0].hf_kpos = 15; | ||
| 5225 | keymap.hfkey[0].hf_kstate = HFMAPCHAR | HFSHFNONE; | ||
| 5226 | #ifdef IBMR2AIX | ||
| 5227 | keymap.hfkey[0].hf_keyidh = '<'; | ||
| 5228 | #else /* not IBMR2AIX */ | ||
| 5229 | keymap.hfkey[0].hf_page = '<'; | ||
| 5230 | #endif /* not IBMR2AIX */ | ||
| 5231 | keymap.hfkey[0].hf_char = 127; | ||
| 5232 | keymap.hfkey[1].hf_kpos = 15; | ||
| 5233 | keymap.hfkey[1].hf_kstate = HFMAPCHAR | HFSHFSHFT; | ||
| 5234 | #ifdef IBMR2AIX | ||
| 5235 | keymap.hfkey[1].hf_keyidh = '<'; | ||
| 5236 | #else /* not IBMR2AIX */ | ||
| 5237 | keymap.hfkey[1].hf_page = '<'; | ||
| 5238 | #endif /* not IBMR2AIX */ | ||
| 5239 | keymap.hfkey[1].hf_char = 127; | ||
| 5240 | hftctl (0, HFSKBD, &buf); | ||
| 5241 | } | ||
| 5242 | } | ||
| 5243 | |||
| 5244 | /* Reset the rubout key to backspace. */ | ||
| 5245 | |||
| 5246 | void | ||
| 5247 | hft_reset (struct tty_display_info *tty_out) | ||
| 5248 | { | ||
| 5249 | struct hfbuf buf; | ||
| 5250 | struct hfkeymap keymap; | ||
| 5251 | int junk; | ||
| 5252 | |||
| 5253 | #ifdef IBMR2AIX | ||
| 5254 | if (ioctl (0, HFQERROR, &junk) < 0) | ||
| 5255 | return; | ||
| 5256 | #else /* not IBMR2AIX */ | ||
| 5257 | if (ioctl (0, HFQEIO, 0) < 0) | ||
| 5258 | return; | ||
| 5259 | #endif /* not IBMR2AIX */ | ||
| 5260 | |||
| 5261 | buf.hf_bufp = (char *)&keymap; | ||
| 5262 | buf.hf_buflen = sizeof (keymap); | ||
| 5263 | keymap.hf_nkeys = 2; | ||
| 5264 | keymap.hfkey[0].hf_kpos = 15; | ||
| 5265 | keymap.hfkey[0].hf_kstate = HFMAPCHAR | HFSHFNONE; | ||
| 5266 | #ifdef IBMR2AIX | ||
| 5267 | keymap.hfkey[0].hf_keyidh = '<'; | ||
| 5268 | #else /* not IBMR2AIX */ | ||
| 5269 | keymap.hfkey[0].hf_page = '<'; | ||
| 5270 | #endif /* not IBMR2AIX */ | ||
| 5271 | keymap.hfkey[0].hf_char = 8; | ||
| 5272 | keymap.hfkey[1].hf_kpos = 15; | ||
| 5273 | keymap.hfkey[1].hf_kstate = HFMAPCHAR | HFSHFSHFT; | ||
| 5274 | #ifdef IBMR2AIX | ||
| 5275 | keymap.hfkey[1].hf_keyidh = '<'; | ||
| 5276 | #else /* not IBMR2AIX */ | ||
| 5277 | keymap.hfkey[1].hf_page = '<'; | ||
| 5278 | #endif /* not IBMR2AIX */ | ||
| 5279 | keymap.hfkey[1].hf_char = 8; | ||
| 5280 | hftctl (0, HFSKBD, &buf); | ||
| 5281 | } | ||
| 5282 | |||
| 5283 | #endif /* AIXHFT */ | ||
| 5284 | |||
| 5285 | |||
| 5286 | #ifndef BSTRING | 4995 | #ifndef BSTRING |
| 5287 | 4996 | ||
| 5288 | #ifndef bzero | 4997 | #ifndef bzero |
diff --git a/src/syssignal.h b/src/syssignal.h index 6aeb0ad768c..9451fa22f7e 100644 --- a/src/syssignal.h +++ b/src/syssignal.h | |||
| @@ -143,9 +143,7 @@ extern SIGMASKTYPE sigprocmask_set; | |||
| 143 | { SIGMASKTYPE omask = sigblock (SIGFULLMASK); sigsetmask (omask & ~SIG); } | 143 | { SIGMASKTYPE omask = sigblock (SIGFULLMASK); sigsetmask (omask & ~SIG); } |
| 144 | #endif | 144 | #endif |
| 145 | 145 | ||
| 146 | #ifndef BSD4_1 | ||
| 147 | #define sigfree() sigsetmask (SIGEMPTYMASK) | 146 | #define sigfree() sigsetmask (SIGEMPTYMASK) |
| 148 | #endif /* not BSD4_1 */ | ||
| 149 | 147 | ||
| 150 | #if defined (SIGINFO) && defined (BROKEN_SIGINFO) | 148 | #if defined (SIGINFO) && defined (BROKEN_SIGINFO) |
| 151 | #undef SIGINFO | 149 | #undef SIGINFO |
| @@ -180,11 +178,6 @@ extern SIGMASKTYPE sigprocmask_set; | |||
| 180 | # define NSIG NSIG_MINIMUM | 178 | # define NSIG NSIG_MINIMUM |
| 181 | #endif | 179 | #endif |
| 182 | 180 | ||
| 183 | #ifdef BSD4_1 | ||
| 184 | #define SIGIO SIGTINT | ||
| 185 | /* sigfree is in sysdep.c */ | ||
| 186 | #endif /* BSD4_1 */ | ||
| 187 | |||
| 188 | /* On bsd, [man says] kill does not accept a negative number to kill a pgrp. | 181 | /* On bsd, [man says] kill does not accept a negative number to kill a pgrp. |
| 189 | Must do that using the killpg call. */ | 182 | Must do that using the killpg call. */ |
| 190 | #ifdef BSD_SYSTEM | 183 | #ifdef BSD_SYSTEM |
diff --git a/src/systty.h b/src/systty.h index 4623a2ccebe..4d9bd792a3c 100644 --- a/src/systty.h +++ b/src/systty.h | |||
| @@ -93,19 +93,6 @@ static struct sensemode { | |||
| 93 | #include <termios.h> | 93 | #include <termios.h> |
| 94 | #endif | 94 | #endif |
| 95 | 95 | ||
| 96 | #ifdef AIXHFT | ||
| 97 | /* Get files for keyboard remapping */ | ||
| 98 | #define HFNKEYS 2 | ||
| 99 | #include <sys/hft.h> | ||
| 100 | #include <sys/devinfo.h> | ||
| 101 | #endif | ||
| 102 | |||
| 103 | /* Get rid of LLITOUT in 4.1, since it is said to stimulate kernel bugs. */ | ||
| 104 | #ifdef BSD4_1 | ||
| 105 | #undef LLITOUT | ||
| 106 | #define LLITOUT 0 | ||
| 107 | #endif /* 4.1 */ | ||
| 108 | |||
| 109 | #ifdef NEED_BSDTTY | 96 | #ifdef NEED_BSDTTY |
| 110 | #include <sys/bsdtty.h> | 97 | #include <sys/bsdtty.h> |
| 111 | #endif | 98 | #endif |
diff --git a/src/syswait.h b/src/syswait.h index 786cb622262..8079737343c 100644 --- a/src/syswait.h +++ b/src/syswait.h | |||
| @@ -91,11 +91,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | |||
| 91 | 91 | ||
| 92 | #else | 92 | #else |
| 93 | 93 | ||
| 94 | #ifdef BSD4_1 | ||
| 95 | #include <wait.h> | ||
| 96 | #else | ||
| 97 | #include <sys/wait.h> | 94 | #include <sys/wait.h> |
| 98 | #endif /* not BSD 4.1 */ | ||
| 99 | 95 | ||
| 100 | #define WAITTYPE union wait | 96 | #define WAITTYPE union wait |
| 101 | #define WRETCODE(w) w.w_retcode | 97 | #define WRETCODE(w) w.w_retcode |
diff --git a/src/term.c b/src/term.c index 533104dc040..f08b800163c 100644 --- a/src/term.c +++ b/src/term.c | |||
| @@ -3801,13 +3801,6 @@ to do `unset TERMCAP' (C-shell: `unsetenv TERMCAP') as well.", | |||
| 3801 | 3801 | ||
| 3802 | init_baud_rate (fileno (tty->input)); | 3802 | init_baud_rate (fileno (tty->input)); |
| 3803 | 3803 | ||
| 3804 | #ifdef AIXHFT | ||
| 3805 | /* The HFT system on AIX doesn't optimize for scrolling, so it's | ||
| 3806 | really ugly at times. */ | ||
| 3807 | terminal->line_ins_del_ok = 0; | ||
| 3808 | terminal->char_ins_del_ok = 0; | ||
| 3809 | #endif | ||
| 3810 | |||
| 3811 | /* Don't do this. I think termcap may still need the buffer. */ | 3804 | /* Don't do this. I think termcap may still need the buffer. */ |
| 3812 | /* xfree (buffer); */ | 3805 | /* xfree (buffer); */ |
| 3813 | 3806 | ||
diff --git a/src/unexec.c b/src/unexec.c index 93fc603ac30..6b46c00150e 100644 --- a/src/unexec.c +++ b/src/unexec.c | |||
| @@ -197,7 +197,7 @@ struct aouthdr | |||
| 197 | #include <sys/stat.h> | 197 | #include <sys/stat.h> |
| 198 | #include <errno.h> | 198 | #include <errno.h> |
| 199 | 199 | ||
| 200 | #include <sys/file.h> /* Must be after sys/types.h for USG and BSD4_1*/ | 200 | #include <sys/file.h> /* Must be after sys/types.h for USG*/ |
| 201 | 201 | ||
| 202 | #ifdef USG5 | 202 | #ifdef USG5 |
| 203 | #include <fcntl.h> | 203 | #include <fcntl.h> |
diff --git a/src/unexelf.c b/src/unexelf.c index db05c55fb8d..199352d4e6e 100644 --- a/src/unexelf.c +++ b/src/unexelf.c | |||
| @@ -433,9 +433,6 @@ extern void fatal (const char *msgid, ...); | |||
| 433 | #if __sgi | 433 | #if __sgi |
| 434 | #include <syms.h> /* for HDRR declaration */ | 434 | #include <syms.h> /* for HDRR declaration */ |
| 435 | #endif /* __sgi */ | 435 | #endif /* __sgi */ |
| 436 | #ifdef BROKEN_NOCOMBRELOC | ||
| 437 | #include <assert.h> | ||
| 438 | #endif | ||
| 439 | 436 | ||
| 440 | #ifndef MAP_ANON | 437 | #ifndef MAP_ANON |
| 441 | #ifdef MAP_ANONYMOUS | 438 | #ifdef MAP_ANONYMOUS |
| @@ -690,9 +687,6 @@ unexec (new_name, old_name, data_start, bss_start, entry_address) | |||
| 690 | int old_mdebug_index; | 687 | int old_mdebug_index; |
| 691 | struct stat stat_buf; | 688 | struct stat stat_buf; |
| 692 | int old_file_size; | 689 | int old_file_size; |
| 693 | #ifdef BROKEN_NOCOMBRELOC | ||
| 694 | int unreloc_sections[10], n_unreloc_sections; | ||
| 695 | #endif | ||
| 696 | 690 | ||
| 697 | /* Open the old file, allocate a buffer of the right size, and read | 691 | /* Open the old file, allocate a buffer of the right size, and read |
| 698 | in the file contents. */ | 692 | in the file contents. */ |
| @@ -982,23 +976,11 @@ unexec (new_name, old_name, data_start, bss_start, entry_address) | |||
| 982 | section just before .bss has less-strict alignment; this | 976 | section just before .bss has less-strict alignment; this |
| 983 | was observed between .symtab and .bss on Solaris 2.5.1 | 977 | was observed between .symtab and .bss on Solaris 2.5.1 |
| 984 | (sparc) with GCC snapshot 960602. */ | 978 | (sparc) with GCC snapshot 960602. */ |
| 985 | #ifdef SOLARIS_POWERPC | 979 | |
| 986 | /* On PPC Reference Platform running Solaris 2.5.1 | ||
| 987 | the plt section is also of type NOBI like the bss section. | ||
| 988 | (not really stored) and therefore sections after the bss | ||
| 989 | section start at the plt offset. The plt section is always | ||
| 990 | the one just before the bss section. | ||
| 991 | It would be better to put the new data section before | ||
| 992 | the .plt section, or use libelf instead. | ||
| 993 | Erik Deumens, deumens@qtp.ufl.edu. */ | ||
| 994 | if (NEW_SECTION_H (nn).sh_offset | ||
| 995 | >= OLD_SECTION_H (old_bss_index-1).sh_offset) | ||
| 996 | NEW_SECTION_H (nn).sh_offset += new_data2_size; | ||
| 997 | #else | ||
| 998 | if (NEW_SECTION_H (nn).sh_offset + NEW_SECTION_H (nn).sh_size | 980 | if (NEW_SECTION_H (nn).sh_offset + NEW_SECTION_H (nn).sh_size |
| 999 | > new_data2_offset) | 981 | > new_data2_offset) |
| 1000 | NEW_SECTION_H (nn).sh_offset += new_data2_size; | 982 | NEW_SECTION_H (nn).sh_offset += new_data2_size; |
| 1001 | #endif | 983 | |
| 1002 | /* Any section that was originally placed after the section | 984 | /* Any section that was originally placed after the section |
| 1003 | header table should now be off by the size of one section | 985 | header table should now be off by the size of one section |
| 1004 | header table entry. */ | 986 | header table entry. */ |
| @@ -1224,7 +1206,6 @@ unexec (new_name, old_name, data_start, bss_start, entry_address) | |||
| 1224 | 1206 | ||
| 1225 | /* This loop seeks out relocation sections for the data section, so | 1207 | /* This loop seeks out relocation sections for the data section, so |
| 1226 | that it can undo relocations performed by the runtime linker. */ | 1208 | that it can undo relocations performed by the runtime linker. */ |
| 1227 | #ifndef BROKEN_NOCOMBRELOC | ||
| 1228 | for (n = new_file_h->e_shnum - 1; n; n--) | 1209 | for (n = new_file_h->e_shnum - 1; n; n--) |
| 1229 | { | 1210 | { |
| 1230 | ElfW(Shdr) section = NEW_SECTION_H (n); | 1211 | ElfW(Shdr) section = NEW_SECTION_H (n); |
| @@ -1279,81 +1260,6 @@ unexec (new_name, old_name, data_start, bss_start, entry_address) | |||
| 1279 | break; | 1260 | break; |
| 1280 | } | 1261 | } |
| 1281 | } | 1262 | } |
| 1282 | #else /* BROKEN_NOCOMBRELOC */ | ||
| 1283 | for (n = 1, n_unreloc_sections = 0; n < new_file_h->e_shnum; n++) | ||
| 1284 | if (!strcmp (old_section_names + NEW_SECTION_H (n).sh_name, ".data") | ||
| 1285 | || !strcmp (old_section_names + NEW_SECTION_H (n).sh_name, ".sdata") | ||
| 1286 | || !strcmp (old_section_names + NEW_SECTION_H (n).sh_name, ".lit4") | ||
| 1287 | || !strcmp (old_section_names + NEW_SECTION_H (n).sh_name, ".lit8") | ||
| 1288 | #ifdef IRIX6_5 /* see above */ | ||
| 1289 | || !strcmp (old_section_names + NEW_SECTION_H (n).sh_name, ".got") | ||
| 1290 | #endif | ||
| 1291 | || !strcmp (old_section_names + NEW_SECTION_H (n).sh_name, ".sdata1") | ||
| 1292 | || !strcmp (old_section_names + NEW_SECTION_H (n).sh_name, ".data1")) | ||
| 1293 | { | ||
| 1294 | assert (n_unreloc_sections | ||
| 1295 | < (sizeof (unreloc_sections) / sizeof (unreloc_sections[0]))); | ||
| 1296 | unreloc_sections[n_unreloc_sections++] = n; | ||
| 1297 | #ifdef DEBUG | ||
| 1298 | fprintf (stderr, "section %d: %s\n", n, | ||
| 1299 | old_section_names + NEW_SECTION_H (n).sh_name); | ||
| 1300 | #endif | ||
| 1301 | } | ||
| 1302 | |||
| 1303 | for (n = new_file_h->e_shnum - 1; n; n--) | ||
| 1304 | { | ||
| 1305 | ElfW(Shdr) section = NEW_SECTION_H (n); | ||
| 1306 | caddr_t reloc, end; | ||
| 1307 | ElfW(Addr) addr, offset; | ||
| 1308 | int target; | ||
| 1309 | |||
| 1310 | switch (section.sh_type) | ||
| 1311 | { | ||
| 1312 | default: | ||
| 1313 | break; | ||
| 1314 | case SHT_REL: | ||
| 1315 | case SHT_RELA: | ||
| 1316 | /* This code handles two different size structs, but there should | ||
| 1317 | be no harm in that provided that r_offset is always the first | ||
| 1318 | member. */ | ||
| 1319 | for (reloc = old_base + section.sh_offset, | ||
| 1320 | end = reloc + section.sh_size; | ||
| 1321 | reloc < end; | ||
| 1322 | reloc += section.sh_entsize) | ||
| 1323 | { | ||
| 1324 | addr = ((ElfW(Rel) *) reloc)->r_offset; | ||
| 1325 | #ifdef __alpha__ | ||
| 1326 | /* The Alpha ELF binutils currently have a bug that | ||
| 1327 | sometimes results in relocs that contain all | ||
| 1328 | zeroes. Work around this for now... */ | ||
| 1329 | if (addr == 0) | ||
| 1330 | continue; | ||
| 1331 | #endif | ||
| 1332 | for (nn = 0; nn < n_unreloc_sections; nn++) | ||
| 1333 | { | ||
| 1334 | target = unreloc_sections[nn]; | ||
| 1335 | if (NEW_SECTION_H (target).sh_addr <= addr | ||
| 1336 | && addr < (NEW_SECTION_H (target).sh_addr + | ||
| 1337 | NEW_SECTION_H (target).sh_size)) | ||
| 1338 | { | ||
| 1339 | offset = (NEW_SECTION_H (target).sh_addr - | ||
| 1340 | NEW_SECTION_H (target).sh_offset); | ||
| 1341 | memcpy (new_base + addr - offset, | ||
| 1342 | old_base + addr - offset, | ||
| 1343 | sizeof (ElfW(Addr))); | ||
| 1344 | #ifdef DEBUG | ||
| 1345 | fprintf (stderr, "unrelocate: [%08lx] <= %08lx\n", | ||
| 1346 | (long) addr, | ||
| 1347 | (long) *((long *) (new_base + addr - offset))); | ||
| 1348 | #endif | ||
| 1349 | break; | ||
| 1350 | } | ||
| 1351 | } | ||
| 1352 | } | ||
| 1353 | break; | ||
| 1354 | } | ||
| 1355 | } | ||
| 1356 | #endif /* BROKEN_NOCOMBRELOC */ | ||
| 1357 | 1263 | ||
| 1358 | /* Write out new_file, and free the buffers. */ | 1264 | /* Write out new_file, and free the buffers. */ |
| 1359 | 1265 | ||
diff --git a/src/unexhp9k800.c b/src/unexhp9k800.c index 96eb985f857..cad2a5025ab 100644 --- a/src/unexhp9k800.c +++ b/src/unexhp9k800.c | |||
| @@ -59,9 +59,7 @@ | |||
| 59 | 59 | ||
| 60 | #include <a.out.h> | 60 | #include <a.out.h> |
| 61 | 61 | ||
| 62 | #ifdef HPUX_USE_SHLIBS | ||
| 63 | #include <dl.h> | 62 | #include <dl.h> |
| 64 | #endif | ||
| 65 | 63 | ||
| 66 | /* brk value to restore, stored as a global. | 64 | /* brk value to restore, stored as a global. |
| 67 | This is really used only if we used shared libraries. */ | 65 | This is really used only if we used shared libraries. */ |
diff --git a/src/unexnext.c b/src/unexnext.c deleted file mode 100644 index 3ed54a59db8..00000000000 --- a/src/unexnext.c +++ /dev/null | |||
| @@ -1,514 +0,0 @@ | |||
| 1 | /* Dump Emacs in macho format. | ||
| 2 | Copyright (C) 1990, 1993, 2001, 2002, 2003, 2004, | ||
| 3 | 2005, 2006, 2007, 2008 Free Software Foundation, Inc. | ||
| 4 | Written by Bradley Taylor (btaylor@next.com). | ||
| 5 | |||
| 6 | This file is part of GNU Emacs. | ||
| 7 | |||
| 8 | GNU Emacs is free software: you can redistribute it and/or modify | ||
| 9 | it under the terms of the GNU General Public License as published by | ||
| 10 | the Free Software Foundation, either version 3 of the License, or | ||
| 11 | (at your option) any later version. | ||
| 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 | ||
| 19 | along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | ||
| 20 | |||
| 21 | |||
| 22 | #undef __STRICT_BSD__ | ||
| 23 | |||
| 24 | #include <stdio.h> | ||
| 25 | #include <stdlib.h> | ||
| 26 | #include <stdarg.h> | ||
| 27 | #include <mach/mach.h> | ||
| 28 | #include <mach-o/loader.h> | ||
| 29 | #include <mach-o/reloc.h> | ||
| 30 | #include <sys/file.h> | ||
| 31 | #include <sys/stat.h> | ||
| 32 | #include <unistd.h> | ||
| 33 | /* Instead of unistd.h, this used to include libc.h. | ||
| 34 | "Nelson H. F. Beebe" <beebe@math.utah.edu> says that doesn't work | ||
| 35 | in system version 3.3. */ | ||
| 36 | |||
| 37 | |||
| 38 | int malloc_cookie; | ||
| 39 | |||
| 40 | /* | ||
| 41 | * Kludge: we don't expect any program data beyond VM_HIGHDATA | ||
| 42 | * What is really needed is a way to find out from malloc() which | ||
| 43 | * pages it vm_allocated and write only those out into the data segment. | ||
| 44 | * | ||
| 45 | * This kludge may break when we stop using fixed virtual address | ||
| 46 | * shared libraries. Actually, emacs will probably continue working, but be | ||
| 47 | * much larger on disk than it needs to be (because non-malloced data will | ||
| 48 | * be in the file). | ||
| 49 | */ | ||
| 50 | static const unsigned VM_HIGHDATA = 0x2000000; | ||
| 51 | |||
| 52 | typedef struct region_t { | ||
| 53 | vm_address_t address; | ||
| 54 | vm_size_t size; | ||
| 55 | vm_prot_t protection; | ||
| 56 | vm_prot_t max_protection; | ||
| 57 | vm_inherit_t inheritance; | ||
| 58 | boolean_t shared; | ||
| 59 | port_t object_name; | ||
| 60 | vm_offset_t offset; | ||
| 61 | } region_t; | ||
| 62 | |||
| 63 | |||
| 64 | static void | ||
| 65 | grow( | ||
| 66 | struct load_command ***the_commands, | ||
| 67 | unsigned *the_commands_len | ||
| 68 | ) | ||
| 69 | { | ||
| 70 | if (*the_commands == NULL) { | ||
| 71 | *the_commands_len = 1; | ||
| 72 | *the_commands = malloc(sizeof(*the_commands)); | ||
| 73 | } else { | ||
| 74 | (*the_commands_len)++; | ||
| 75 | *the_commands = realloc(*the_commands, | ||
| 76 | (*the_commands_len * | ||
| 77 | sizeof(**the_commands))); | ||
| 78 | } | ||
| 79 | } | ||
| 80 | |||
| 81 | |||
| 82 | static void | ||
| 83 | save_command( | ||
| 84 | struct load_command *command, | ||
| 85 | struct load_command ***the_commands, | ||
| 86 | unsigned *the_commands_len | ||
| 87 | ) | ||
| 88 | { | ||
| 89 | struct load_command **tmp; | ||
| 90 | |||
| 91 | grow(the_commands, the_commands_len); | ||
| 92 | tmp = &(*the_commands)[*the_commands_len - 1]; | ||
| 93 | *tmp = malloc(command->cmdsize); | ||
| 94 | bcopy(command, *tmp, command->cmdsize); | ||
| 95 | } | ||
| 96 | |||
| 97 | static void | ||
| 98 | fatal_unexec(char *format, ...) | ||
| 99 | { | ||
| 100 | va_list ap; | ||
| 101 | |||
| 102 | va_start(ap, format); | ||
| 103 | fprintf(stderr, "unexec: "); | ||
| 104 | vfprintf(stderr, format, ap); | ||
| 105 | fprintf(stderr, "\n"); | ||
| 106 | va_end(ap); | ||
| 107 | } | ||
| 108 | |||
| 109 | static int | ||
| 110 | read_macho( | ||
| 111 | int fd, | ||
| 112 | struct mach_header *the_header, | ||
| 113 | struct load_command ***the_commands, | ||
| 114 | unsigned *the_commands_len | ||
| 115 | ) | ||
| 116 | { | ||
| 117 | struct load_command command; | ||
| 118 | struct load_command *buf; | ||
| 119 | int i; | ||
| 120 | int size; | ||
| 121 | |||
| 122 | if (read(fd, the_header, sizeof(*the_header)) != sizeof(*the_header)) { | ||
| 123 | fatal_unexec("cannot read macho header"); | ||
| 124 | return (0); | ||
| 125 | } | ||
| 126 | for (i = 0; i < the_header->ncmds; i++) { | ||
| 127 | if (read(fd, &command, sizeof(struct load_command)) != | ||
| 128 | sizeof(struct load_command)) { | ||
| 129 | fatal_unexec("cannot read macho load command header"); | ||
| 130 | return (0); | ||
| 131 | } | ||
| 132 | size = command.cmdsize - sizeof(struct load_command); | ||
| 133 | if (size < 0) { | ||
| 134 | fatal_unexec("bogus load command size"); | ||
| 135 | return (0); | ||
| 136 | } | ||
| 137 | buf = malloc(command.cmdsize); | ||
| 138 | buf->cmd = command.cmd; | ||
| 139 | buf->cmdsize = command.cmdsize; | ||
| 140 | if (read(fd, ((char *)buf + | ||
| 141 | sizeof(struct load_command)), | ||
| 142 | size) != size) { | ||
| 143 | fatal_unexec("cannot read load command data"); | ||
| 144 | return (0); | ||
| 145 | } | ||
| 146 | save_command(buf, the_commands, the_commands_len); | ||
| 147 | } | ||
| 148 | return (1); | ||
| 149 | } | ||
| 150 | |||
| 151 | static int | ||
| 152 | filldatagap( | ||
| 153 | vm_address_t start_address, | ||
| 154 | vm_size_t *size, | ||
| 155 | vm_address_t end_address | ||
| 156 | ) | ||
| 157 | { | ||
| 158 | vm_address_t address; | ||
| 159 | vm_size_t gapsize; | ||
| 160 | |||
| 161 | address = (start_address + *size); | ||
| 162 | gapsize = end_address - address; | ||
| 163 | *size += gapsize; | ||
| 164 | if (vm_allocate(task_self(), &address, gapsize, | ||
| 165 | FALSE) != KERN_SUCCESS) { | ||
| 166 | fatal_unexec("cannot vm_allocate"); | ||
| 167 | return (0); | ||
| 168 | } | ||
| 169 | return (1); | ||
| 170 | } | ||
| 171 | |||
| 172 | static int | ||
| 173 | get_data_region( | ||
| 174 | vm_address_t *address, | ||
| 175 | vm_size_t *size | ||
| 176 | ) | ||
| 177 | { | ||
| 178 | region_t region; | ||
| 179 | kern_return_t ret; | ||
| 180 | struct section *sect; | ||
| 181 | |||
| 182 | sect = (struct section *) getsectbyname(SEG_DATA, SECT_DATA); | ||
| 183 | region.address = 0; | ||
| 184 | *address = 0; | ||
| 185 | for (;;) { | ||
| 186 | ret = vm_region(task_self(), | ||
| 187 | ®ion.address, | ||
| 188 | ®ion.size, | ||
| 189 | ®ion.protection, | ||
| 190 | ®ion.max_protection, | ||
| 191 | ®ion.inheritance, | ||
| 192 | ®ion.shared, | ||
| 193 | ®ion.object_name, | ||
| 194 | ®ion.offset); | ||
| 195 | if (ret != KERN_SUCCESS || region.address >= VM_HIGHDATA) { | ||
| 196 | break; | ||
| 197 | } | ||
| 198 | if (*address != 0) { | ||
| 199 | if (region.address > *address + *size) { | ||
| 200 | if (!filldatagap(*address, size, | ||
| 201 | region.address)) { | ||
| 202 | return (0); | ||
| 203 | } | ||
| 204 | } | ||
| 205 | *size += region.size; | ||
| 206 | } else { | ||
| 207 | if (region.address == sect->addr) { | ||
| 208 | *address = region.address; | ||
| 209 | *size = region.size; | ||
| 210 | } | ||
| 211 | } | ||
| 212 | region.address += region.size; | ||
| 213 | } | ||
| 214 | return (1); | ||
| 215 | } | ||
| 216 | |||
| 217 | static char * | ||
| 218 | my_malloc( | ||
| 219 | vm_size_t size | ||
| 220 | ) | ||
| 221 | { | ||
| 222 | vm_address_t address; | ||
| 223 | |||
| 224 | if (vm_allocate(task_self(), &address, size, TRUE) != KERN_SUCCESS) { | ||
| 225 | return (NULL); | ||
| 226 | } | ||
| 227 | return ((char *)address); | ||
| 228 | } | ||
| 229 | |||
| 230 | static void | ||
| 231 | my_free( | ||
| 232 | char *buf, | ||
| 233 | vm_size_t size | ||
| 234 | ) | ||
| 235 | { | ||
| 236 | vm_deallocate(task_self(), (vm_address_t)buf, size); | ||
| 237 | } | ||
| 238 | |||
| 239 | static int | ||
| 240 | unexec_doit( | ||
| 241 | int infd, | ||
| 242 | int outfd | ||
| 243 | ) | ||
| 244 | { | ||
| 245 | int i; | ||
| 246 | struct load_command **the_commands = NULL; | ||
| 247 | unsigned the_commands_len; | ||
| 248 | struct mach_header the_header; | ||
| 249 | int fgrowth = 0; | ||
| 250 | int fdatastart; | ||
| 251 | int fdatasize; | ||
| 252 | int size; | ||
| 253 | struct stat st; | ||
| 254 | char *buf; | ||
| 255 | vm_address_t data_address; | ||
| 256 | vm_size_t data_size; | ||
| 257 | vm_size_t vmaddr_growth = 0; | ||
| 258 | vm_size_t dataseg_vmaddr, dataseg_vmend; | ||
| 259 | |||
| 260 | struct segment_command *segment; | ||
| 261 | |||
| 262 | #ifdef NS_TARGET | ||
| 263 | unsigned long extreloff = 0; | ||
| 264 | unsigned long nextrel = 0; | ||
| 265 | struct dysymtab_command *dysymtab; | ||
| 266 | struct relocation_info reloc_info; | ||
| 267 | #endif | ||
| 268 | |||
| 269 | if (!read_macho(infd, &the_header, &the_commands, &the_commands_len)) { | ||
| 270 | return (0); | ||
| 271 | } | ||
| 272 | |||
| 273 | |||
| 274 | malloc_cookie = malloc_freezedry (); | ||
| 275 | if (!get_data_region(&data_address, &data_size)) { | ||
| 276 | return (0); | ||
| 277 | } | ||
| 278 | |||
| 279 | |||
| 280 | /* | ||
| 281 | * DO NOT USE MALLOC IN THIS SECTION | ||
| 282 | */ | ||
| 283 | { | ||
| 284 | /* | ||
| 285 | * Fix offsets | ||
| 286 | */ | ||
| 287 | for (i = 0; i < the_commands_len; i++) { | ||
| 288 | switch (the_commands[i]->cmd) { | ||
| 289 | case LC_SEGMENT: | ||
| 290 | segment = ((struct segment_command *) | ||
| 291 | the_commands[i]); | ||
| 292 | if (strcmp(segment->segname, SEG_DATA) == 0) { | ||
| 293 | fdatastart = segment->fileoff; | ||
| 294 | fdatasize = segment->filesize; | ||
| 295 | fgrowth = (data_size - | ||
| 296 | segment->filesize); | ||
| 297 | segment->vmsize = data_size; | ||
| 298 | segment->filesize = data_size; | ||
| 299 | dataseg_vmaddr = segment->vmaddr; | ||
| 300 | dataseg_vmend = segment->vmaddr + segment->vmsize; | ||
| 301 | vmaddr_growth = segment->vmaddr + segment->vmsize; | ||
| 302 | } else { | ||
| 303 | ((struct segment_command *)the_commands[i])->fileoff += fgrowth; | ||
| 304 | } | ||
| 305 | |||
| 306 | if( strcmp( segment->segname, SEG_LINKEDIT ) == 0 ) { | ||
| 307 | segment->vmaddr = vmaddr_growth; | ||
| 308 | } | ||
| 309 | |||
| 310 | break; | ||
| 311 | case LC_SYMTAB: | ||
| 312 | ((struct symtab_command *) | ||
| 313 | the_commands[i])->symoff += fgrowth; | ||
| 314 | ((struct symtab_command *) | ||
| 315 | the_commands[i])->stroff += fgrowth; | ||
| 316 | break; | ||
| 317 | case LC_SYMSEG: | ||
| 318 | ((struct symseg_command *) | ||
| 319 | the_commands[i])->offset += fgrowth; | ||
| 320 | break; | ||
| 321 | #ifdef NS_TARGET | ||
| 322 | case LC_DYSYMTAB: | ||
| 323 | dysymtab = ((struct dysymtab_command *)the_commands[i]); | ||
| 324 | extreloff = dysymtab->extreloff; | ||
| 325 | nextrel = dysymtab->nextrel; | ||
| 326 | dysymtab->indirectsymoff += fgrowth; | ||
| 327 | dysymtab->extreloff += fgrowth; | ||
| 328 | break; | ||
| 329 | #endif | ||
| 330 | default: | ||
| 331 | break; | ||
| 332 | } | ||
| 333 | } | ||
| 334 | |||
| 335 | /* | ||
| 336 | * Write header | ||
| 337 | */ | ||
| 338 | if (write(outfd, &the_header, | ||
| 339 | sizeof(the_header)) != sizeof(the_header)) { | ||
| 340 | fatal_unexec("cannot write output file"); | ||
| 341 | return (0); | ||
| 342 | } | ||
| 343 | |||
| 344 | /* | ||
| 345 | * Write commands | ||
| 346 | */ | ||
| 347 | for (i = 0; i < the_commands_len; i++) { | ||
| 348 | if (write(outfd, the_commands[i], | ||
| 349 | the_commands[i]->cmdsize) != | ||
| 350 | the_commands[i]->cmdsize) { | ||
| 351 | fatal_unexec("cannot write output file"); | ||
| 352 | return (0); | ||
| 353 | } | ||
| 354 | } | ||
| 355 | |||
| 356 | /* | ||
| 357 | * Write original text | ||
| 358 | */ | ||
| 359 | if (lseek(infd, the_header.sizeofcmds + sizeof(the_header), | ||
| 360 | L_SET) < 0) { | ||
| 361 | fatal_unexec("cannot seek input file"); | ||
| 362 | return (0); | ||
| 363 | } | ||
| 364 | size = fdatastart - (sizeof(the_header) + | ||
| 365 | the_header.sizeofcmds); | ||
| 366 | buf = my_malloc(size); | ||
| 367 | if (read(infd, buf, size) != size) { | ||
| 368 | my_free(buf, size); | ||
| 369 | fatal_unexec("cannot read input file"); | ||
| 370 | } | ||
| 371 | if (write(outfd, buf, size) != size) { | ||
| 372 | my_free(buf, size); | ||
| 373 | fatal_unexec("cannot write output file"); | ||
| 374 | return (0); | ||
| 375 | } | ||
| 376 | my_free(buf, size); | ||
| 377 | |||
| 378 | |||
| 379 | /* | ||
| 380 | * Write new data | ||
| 381 | */ | ||
| 382 | if (write(outfd, (char *)data_address, | ||
| 383 | data_size) != data_size) { | ||
| 384 | fatal_unexec("cannot write output file"); | ||
| 385 | return (0); | ||
| 386 | } | ||
| 387 | |||
| 388 | } | ||
| 389 | |||
| 390 | /* | ||
| 391 | * OKAY TO USE MALLOC NOW | ||
| 392 | */ | ||
| 393 | |||
| 394 | /* | ||
| 395 | * Write rest of file | ||
| 396 | */ | ||
| 397 | fstat(infd, &st); | ||
| 398 | if (lseek(infd, fdatasize, L_INCR) < 0) { | ||
| 399 | fatal_unexec("cannot seek input file"); | ||
| 400 | return (0); | ||
| 401 | } | ||
| 402 | size = st.st_size - lseek(infd, 0, L_INCR); | ||
| 403 | |||
| 404 | buf = malloc(size); | ||
| 405 | if (read(infd, buf, size) != size) { | ||
| 406 | free(buf); | ||
| 407 | fatal_unexec("cannot read input file"); | ||
| 408 | return (0); | ||
| 409 | } | ||
| 410 | if (write(outfd, buf, size) != size) { | ||
| 411 | free(buf); | ||
| 412 | fatal_unexec("cannot write output file"); | ||
| 413 | return (0); | ||
| 414 | } | ||
| 415 | free(buf); | ||
| 416 | |||
| 417 | #ifdef NS_TARGET | ||
| 418 | /* | ||
| 419 | * Fix up relocation entries in the data segment. | ||
| 420 | */ | ||
| 421 | |||
| 422 | if (lseek(infd, extreloff, L_SET) < 0) { | ||
| 423 | fatal_unexec("cannot seek input file"); | ||
| 424 | return (0); | ||
| 425 | } | ||
| 426 | |||
| 427 | for (i = 0; i < nextrel; i++) | ||
| 428 | { | ||
| 429 | long zeroval = 0; | ||
| 430 | |||
| 431 | if (read(infd, &reloc_info, sizeof (reloc_info)) != sizeof (reloc_info)) { | ||
| 432 | fatal_unexec("cannot read input file"); | ||
| 433 | return (0); | ||
| 434 | } | ||
| 435 | if (reloc_info.r_address >= dataseg_vmaddr && reloc_info.r_address < dataseg_vmend) | ||
| 436 | { | ||
| 437 | if (lseek (outfd, fdatastart + reloc_info.r_address - dataseg_vmaddr, L_SET) < 0 ) { | ||
| 438 | fatal_unexec("cannot seek input file"); | ||
| 439 | return (0); | ||
| 440 | } | ||
| 441 | switch (reloc_info.r_length) { | ||
| 442 | case 0: | ||
| 443 | if (write(outfd, &zeroval, 1) != 1) { | ||
| 444 | fatal_unexec("cannot write output file"); | ||
| 445 | return (0); | ||
| 446 | } | ||
| 447 | break; | ||
| 448 | case 1: | ||
| 449 | if (write(outfd, &zeroval, 2) != 2) { | ||
| 450 | fatal_unexec("cannot write output file"); | ||
| 451 | return (0); | ||
| 452 | } | ||
| 453 | break; | ||
| 454 | case 2: | ||
| 455 | if (write(outfd, &zeroval, 4) != 4) { | ||
| 456 | fatal_unexec("cannot write output file"); | ||
| 457 | return (0); | ||
| 458 | } | ||
| 459 | break; | ||
| 460 | } | ||
| 461 | } | ||
| 462 | } | ||
| 463 | #endif | ||
| 464 | |||
| 465 | return (1); | ||
| 466 | } | ||
| 467 | |||
| 468 | void | ||
| 469 | unexec( | ||
| 470 | char *outfile, | ||
| 471 | char *infile | ||
| 472 | ) | ||
| 473 | { | ||
| 474 | int infd; | ||
| 475 | int outfd; | ||
| 476 | char tmpbuf[L_tmpnam]; | ||
| 477 | char *tmpfile; | ||
| 478 | |||
| 479 | infd = open(infile, O_RDONLY, 0); | ||
| 480 | if (infd < 0) { | ||
| 481 | fatal_unexec("cannot open input file `%s'", infile); | ||
| 482 | exit(1); | ||
| 483 | } | ||
| 484 | |||
| 485 | tmpnam(tmpbuf); | ||
| 486 | tmpfile = rindex(tmpbuf, '/'); | ||
| 487 | if (tmpfile == NULL) { | ||
| 488 | tmpfile = tmpbuf; | ||
| 489 | } else { | ||
| 490 | tmpfile++; | ||
| 491 | } | ||
| 492 | outfd = open(tmpfile, O_WRONLY|O_TRUNC|O_CREAT, 0755); | ||
| 493 | if (outfd < 0) { | ||
| 494 | close(infd); | ||
| 495 | fatal_unexec("cannot open tmp file `%s'", tmpfile); | ||
| 496 | exit(1); | ||
| 497 | } | ||
| 498 | if (!unexec_doit(infd, outfd)) { | ||
| 499 | close(infd); | ||
| 500 | close(outfd); | ||
| 501 | unlink(tmpfile); | ||
| 502 | exit(1); | ||
| 503 | } | ||
| 504 | close(infd); | ||
| 505 | close(outfd); | ||
| 506 | if (rename(tmpfile, outfile) < 0) { | ||
| 507 | unlink(tmpfile); | ||
| 508 | fatal_unexec("cannot rename `%s' to `%s'", tmpfile, outfile); | ||
| 509 | exit(1); | ||
| 510 | } | ||
| 511 | } | ||
| 512 | |||
| 513 | /* arch-tag: 9796bdc3-c050-417a-b2f5-4cfd31032634 | ||
| 514 | (do not change this comment) */ | ||