diff -Nru emacs-19.31/ChangeLog emacs-19.31-linux/ChangeLog --- emacs-19.31/ChangeLog Sat May 25 21:30:21 1996 +++ emacs-19.31-linux/ChangeLog Sun May 26 13:39:37 1996 @@ -1,3 +1,7 @@ +Sun May 26 13:35:53 1996 Erlend Midttun * Version 19.31 released. diff -Nru emacs-19.31/config.guess emacs-19.31-linux/config.guess --- emacs-19.31/config.guess Sun May 26 02:17:34 1996 +++ emacs-19.31-linux/config.guess Sun May 26 12:51:55 1996 @@ -339,24 +339,24 @@ # first see if it will tell us. ld_help_string=`ld --help 2>&1` if echo "$ld_help_string" | grep >/dev/null 2>&1 "supported emulations: elf_i[345]86"; then - echo "${UNAME_MACHINE}-unknown-lignux" ; exit 0 + echo "${UNAME_MACHINE}-unknown-linux" ; exit 0 elif echo "$ld_help_string" | grep >/dev/null 2>&1 "supported emulations: i[345]86linux"; then - echo "${UNAME_MACHINE}-unknown-lignuxaout" ; exit 0 + echo "${UNAME_MACHINE}-unknown-linuxaout" ; exit 0 elif echo "$ld_help_string" | grep >/dev/null 2>&1 "supported emulations: i[345]86coff"; then - echo "${UNAME_MACHINE}-unknown-lignuxcoff" ; exit 0 + echo "${UNAME_MACHINE}-unknown-linuxcoff" ; exit 0 elif echo "$ld_help_string" | grep >/dev/null 2>&1 "supported emulations: m68kelf"; then - echo "${UNAME_MACHINE}-unknown-lignux" ; exit 0 + echo "${UNAME_MACHINE}-unknown-linux" ; exit 0 elif echo "$ld_help_string" | grep >/dev/null 2>&1 "supported emulations: m68klinux"; then - echo "${UNAME_MACHINE}-unknown-lignuxaout" ; exit 0 + echo "${UNAME_MACHINE}-unknown-linuxaout" ; exit 0 elif test "${UNAME_MACHINE}" = "alpha" ; then - echo alpha-unknown-lignux ; exit 0 + echo alpha-unknown-linux ; exit 0 elif test "${UNAME_MACHINE}" = "sparc" ; then - echo sparc-unknown-lignux ; exit 0 + echo sparc-unknown-linux ; exit 0 else - # Either a pre-BFD a.out linker (lignuxoldld) or one that does not give us - # useful --help. Gcc wants to distinguish between lignuxoldld and lignuxaout. + # Either a pre-BFD a.out linker (linuxoldld) or one that does not give us + # useful --help. Gcc wants to distinguish between linuxoldld and linuxaout. test ! -d /usr/lib/ldscripts/. \ - && echo "${UNAME_MACHINE}-unknown-lignuxoldld" && exit 0 + && echo "${UNAME_MACHINE}-unknown-linuxoldld" && exit 0 # Determine whether the default compiler is a.out or elf cat >dummy.c <&6 cat > conftest.$ac_ext < #ifndef __cplusplus @@ -260,15 +276,11 @@ 307, 310, 313, 316, 319, 322, 325, 328, 333, 360, 363 }; -#endif - - -#if YYDEBUG != 0 -static const char * const yytname[] = { "$","error","$undefined.","tAGO","tDAY", +static const char * const yytname[] = { "$","error","$illegal.","tAGO","tDAY", "tDAYZONE","tID","tMERIDIAN","tMINUTE_UNIT","tMONTH","tMONTH_UNIT","tSEC_UNIT", "tSNUMBER","tUNUMBER","tZONE","tDST","':'","','","'/'","spec","item","time", -"zone","day","date","rel","relunit","number","o_merid", NULL +"zone","day","date","rel","relunit","number","o_merid","" }; #endif @@ -334,14 +346,14 @@ 13, 47 }; /* -*-C-*- Note some compilers choke on comments on `#line' lines. */ -#line 3 "/usr/share/bison.simple" +#line 3 "/usr/lib/bison.simple" /* Skeleton output parser for bison, - Copyright (C) 1984, 1989, 1990 Free Software Foundation, Inc. + Copyright (C) 1984, 1989, 1990 Bob Corbett and Richard Stallman This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) + the Free Software Foundation; either version 1, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -353,10 +365,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ -/* As a special exception, when this file is copied by Bison into a - Bison output file, you may use that output file without restriction. - This special exception was added by the Free Software Foundation - in version 1.24 of Bison. */ #ifndef alloca #ifdef __GNUC__ @@ -430,18 +438,10 @@ #ifdef YYPURE #ifdef YYLSP_NEEDED -#ifdef YYLEX_PARAM -#define YYLEX yylex(&yylval, &yylloc, YYLEX_PARAM) -#else #define YYLEX yylex(&yylval, &yylloc) -#endif -#else /* not YYLSP_NEEDED */ -#ifdef YYLEX_PARAM -#define YYLEX yylex(&yylval, YYLEX_PARAM) #else #define YYLEX yylex(&yylval) #endif -#endif /* not YYLSP_NEEDED */ #endif /* If nonreentrant, generate the variables here */ @@ -489,14 +489,14 @@ #endif #if __GNUC__ > 1 /* GNU C and GNU C++ define this. */ -#define __yy_memcpy(FROM,TO,COUNT) __builtin_memcpy(TO,FROM,COUNT) +#define __yy_bcopy(FROM,TO,COUNT) __builtin_memcpy(TO,FROM,COUNT) #else /* not GNU C or C++ */ #ifndef __cplusplus /* This is the most reliable way to avoid incompatibilities in available built-in functions on various systems. */ static void -__yy_memcpy (from, to, count) +__yy_bcopy (from, to, count) char *from; char *to; int count; @@ -514,7 +514,7 @@ /* This is the most reliable way to avoid incompatibilities in available built-in functions on various systems. */ static void -__yy_memcpy (char *from, char *to, int count) +__yy_bcopy (char *from, char *to, int count) { register char *f = from; register char *t = to; @@ -527,24 +527,9 @@ #endif #endif -#line 192 "/usr/share/bison.simple" - -/* The user can define YYPARSE_PARAM as the name of an argument to be passed - into yyparse. The argument should have type void *. - It should actually point to an object. - Grammar actions can access the variable by casting it - to the proper pointer type. */ - -#ifdef YYPARSE_PARAM -#define YYPARSE_PARAM_DECL void *YYPARSE_PARAM; -#else -#define YYPARSE_PARAM -#define YYPARSE_PARAM_DECL -#endif - +#line 184 "/usr/lib/bison.simple" int -yyparse(YYPARSE_PARAM) - YYPARSE_PARAM_DECL +yyparse() { register int yystate; register int yyn; @@ -660,12 +645,12 @@ if (yystacksize > YYMAXDEPTH) yystacksize = YYMAXDEPTH; yyss = (short *) alloca (yystacksize * sizeof (*yyssp)); - __yy_memcpy ((char *)yyss1, (char *)yyss, size * sizeof (*yyssp)); + __yy_bcopy ((char *)yyss1, (char *)yyss, size * sizeof (*yyssp)); yyvs = (YYSTYPE *) alloca (yystacksize * sizeof (*yyvsp)); - __yy_memcpy ((char *)yyvs1, (char *)yyvs, size * sizeof (*yyvsp)); + __yy_bcopy ((char *)yyvs1, (char *)yyvs, size * sizeof (*yyvsp)); #ifdef YYLSP_NEEDED yyls = (YYLTYPE *) alloca (yystacksize * sizeof (*yylsp)); - __yy_memcpy ((char *)yyls1, (char *)yyls, size * sizeof (*yylsp)); + __yy_bcopy ((char *)yyls1, (char *)yyls, size * sizeof (*yylsp)); #endif #endif /* no yyoverflow */ @@ -1111,7 +1096,7 @@ break;} } /* the action file gets copied in in place of this dollarsign */ -#line 487 "/usr/share/bison.simple" +#line 465 "/usr/lib/bison.simple" yyvsp -= yylen; yyssp -= yylen; diff -Nru emacs-19.31/lisp/ChangeLog emacs-19.31-linux/lisp/ChangeLog --- emacs-19.31/lisp/ChangeLog Sat May 25 21:31:23 1996 +++ emacs-19.31-linux/lisp/ChangeLog Sun May 26 12:53:03 1996 @@ -582,9 +582,9 @@ Tue Mar 26 19:13:13 1996 Richard Stallman - * sh-script.el (sh-alias-alist): Recognize lignux. + * sh-script.el (sh-alias-alist): Recognize linux. - * dired.el (dired-chown-program): Recognize lignux. + * dired.el (dired-chown-program): Recognize linux. * gnus-cus.el (gnus-make-face, custom-declare): Rename custom-asis to custom:asis. diff -Nru emacs-19.31/lisp/dired.el emacs-19.31-linux/lisp/dired.el --- emacs-19.31/lisp/dired.el Fri Apr 5 21:10:39 1996 +++ emacs-19.31-linux/lisp/dired.el Sun May 26 12:52:08 1996 @@ -48,7 +48,7 @@ ;;;###autoload (defvar dired-chown-program - (if (memq system-type '(hpux dgux usg-unix-v irix linux lignux)) + (if (memq system-type '(hpux dgux usg-unix-v irix linux linux)) "chown" "/etc/chown") "Name of chown command (usually `chown' or `/etc/chown').") Binary files emacs-19.31/lisp/dired.elc and emacs-19.31-linux/lisp/dired.elc differ diff -Nru emacs-19.31/lisp/loaddefs.el emacs-19.31-linux/lisp/loaddefs.el --- emacs-19.31/lisp/loaddefs.el Thu May 23 21:49:58 1996 +++ emacs-19.31-linux/lisp/loaddefs.el Sun May 26 12:52:19 1996 @@ -2517,7 +2517,7 @@ may contain even `F', `b', `i' and `s'. See also the variable `dired-ls-F-marks-symlinks' concerning the `F' switch.") -(defvar dired-chown-program (if (memq system-type (quote (hpux dgux usg-unix-v irix linux lignux))) "chown" "/etc/chown") "\ +(defvar dired-chown-program (if (memq system-type (quote (hpux dgux usg-unix-v irix linux linux))) "chown" "/etc/chown") "\ Name of chown command (usually `chown' or `/etc/chown').") (defvar dired-ls-F-marks-symlinks nil "\ diff -Nru emacs-19.31/lisp/sh-script.el emacs-19.31-linux/lisp/sh-script.el --- emacs-19.31/lisp/sh-script.el Mon Apr 15 23:15:47 1996 +++ emacs-19.31-linux/lisp/sh-script.el Sun May 26 12:52:27 1996 @@ -90,7 +90,7 @@ (defvar sh-alias-alist - (nconc (if (eq system-type 'lignux) + (nconc (if (eq system-type 'linux) '((csh . tcsh) (ksh . pdksh))) ;; for the time being Binary files emacs-19.31/lisp/sh-script.elc and emacs-19.31-linux/lisp/sh-script.elc differ diff -Nru emacs-19.31/paths.h.567 emacs-19.31-linux/paths.h.567 --- emacs-19.31/paths.h.567 Thu Jan 1 01:00:00 1970 +++ emacs-19.31-linux/paths.h.567 Sun May 26 12:57:09 1996 @@ -0,0 +1,42 @@ +/* Hey Emacs, this is -*- C -*- code! */ + +/* The default search path for Lisp function "load". + This sets load-path. */ +#define PATH_LOADSEARCH "/usr/local/lib/emacs/19.31/site-lisp:/usr/local/lib/emacs/site-lisp:/usr/local/lib/emacs/19.31/lisp" + +/* Like PATH_LOADSEARCH, but used only when Emacs is dumping. This + path is usually identical to PATH_LOADSEARCH except that the entry + for the directory containing the installed lisp files has been + replaced with ../lisp. */ +#define PATH_DUMPLOADSEARCH "/usr/src/emacs-19.31/lisp" + +/* The extra search path for programs to invoke. This is appended to + whatever the PATH environment variable says to set the Lisp + variable exec-path and the first file name in it sets the Lisp + variable exec-directory. exec-directory is used for finding + executables and other architecture-dependent files. */ +#define PATH_EXEC "/usr/local/libexec/emacs/19.31/i586-logina-linux" + +/* Where Emacs should look for its architecture-independent data + files, like the NEWS file. The lisp variable data-directory + is set to this value. */ +#define PATH_DATA "/usr/local/lib/emacs/19.31/etc" + +/* Where Emacs should look for X bitmap files. + The lisp variable x-bitmap-file-path is set based on this value. */ +#define PATH_BITMAPS "/usr/X11R6/include/X11/bitmaps" + +/* Where Emacs should look for its docstring file. The lisp variable + doc-directory is set to this value. */ +#define PATH_DOC "/usr/local/lib/emacs/19.31/etc" + +/* The name of the directory that contains lock files with which we + record what files are being modified in Emacs. This directory + should be writable by everyone. THE STRING MUST END WITH A + SLASH!!! */ +#define PATH_LOCK "/usr/local/com/emacs/lock/" + +/* Where the configuration process believes the info tree lives. The + lisp variable configure-info-directory gets its value from this + macro, and is then used to set the Info-default-directory-list. */ +#define PATH_INFO "/usr/local/info" diff -Nru emacs-19.31/src/ChangeLog emacs-19.31-linux/src/ChangeLog --- emacs-19.31/src/ChangeLog Sun May 26 01:40:28 1996 +++ emacs-19.31-linux/src/ChangeLog Sun May 26 12:53:31 1996 @@ -860,7 +860,7 @@ * syswait.h: Remove `|| defined (LINUX)' from #if condition. - * s/lignux.h: Define HAVE_WAIT_HEADER. + * s/linux.h: Define HAVE_WAIT_HEADER. Thu Apr 11 00:10:01 1996 Geoff Voelker @@ -900,7 +900,7 @@ Mon Apr 8 09:45:18 1996 Richard Stallman * config.in (HAVE_LIBNCURSES): Renamed from HAVE_NCURSES. - * s/lignux.h: Test HAVE_LIBNCURSES, not HAVE_NCURSES. + * s/linux.h: Test HAVE_LIBNCURSES, not HAVE_NCURSES. Sat Apr 6 17:29:47 1996 Richard Stallman @@ -908,7 +908,7 @@ Fri Apr 5 13:10:45 1996 Richard Stallman - * s/lignux.h [HAVE_NCURSES] (LIBS_TERMCAP): New definition. + * s/linux.h [HAVE_NCURSES] (LIBS_TERMCAP): New definition. * alloc.c (garbage_collection_messages): New variable. (syms_of_alloc): Set up Lisp variable. @@ -943,7 +943,7 @@ Sat Mar 30 11:09:14 1996 Richard Stallman - * s/lignux.h (TERMINFO): Do define (if HAVE_NCURSES). + * s/linux.h (TERMINFO): Do define (if HAVE_NCURSES). Fri Mar 29 18:06:55 1996 Richard Stallman @@ -980,8 +980,8 @@ * xterm.c (XTread_socket, MapNotify case): Call record_asynch_buffer_change only if >1 frames. - * s/lignux.h: Renamed from s/linux.h. - (SYSTEM_TYPE): Changed to "lignux". + * s/linux.h: Renamed from s/linux.h. + (SYSTEM_TYPE): Changed to "linux". * process.c (wait_reading_process_input_1): New (empty) function. (wait_reading_process_input): Call wait_reading_process_input_1. diff -Nru emacs-19.31/src/s/lignux.h emacs-19.31-linux/src/s/lignux.h --- emacs-19.31/src/s/lignux.h Thu Apr 11 19:35:48 1996 +++ emacs-19.31-linux/src/s/lignux.h Thu Jan 1 01:00:00 1970 @@ -1,288 +0,0 @@ -/* This file is the configuration file for Lignux systems - (that is, Linux-based GNU operating systems.) - Copyright (C) 1985, 1986, 1992, 1994, 1996 Free Software Foundation, Inc. - -This file is part of GNU Emacs. - -GNU Emacs is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2, or (at your option) -any later version. - -GNU Emacs is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with GNU Emacs; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 59 Temple Place - Suite 330, -Boston, MA 02111-1307, USA. */ - -/* This file was put together by Michael K. Johnson and Rik Faith. */ - - -/* - * Define symbols to identify the version of Unix this is. - * Define all the symbols that apply correctly. - */ - -/* #define UNIPLUS */ -/* #define USG5 */ -#define USG -/* #define BSD */ -#define LINUX - -/* SYSTEM_TYPE should indicate the kind of system you are using. - It sets the Lisp variable system-type. */ - -#define SYSTEM_TYPE "lignux" /* All the best software is free. */ - -/* Check the version number of Linux--if it is at least 1.2.0, - it is safe to use SIGIO. */ -#ifndef NOT_C_CODE -#ifdef emacs -#ifdef HAVE_LINUX_VERSION_H -#include - -#if LINUX_VERSION_CODE > 0x10200 -#define LINUX_SIGIO_DOES_WORK -#endif /* LINUX_VERSION_CODE > 0x10200 */ -#endif /* HAVE_LINUX_VERSION_H */ -#endif /* emacs */ -#endif /* NOT_C_CODE */ - -/* Letter to use in finding device name of first pty, - if system supports pty's. 'p' means it is /dev/ptyp0 */ - -#define FIRST_PTY_LETTER 'p' - -/* - * Define HAVE_TERMIOS if the system provides POSIX-style - * functions and macros for terminal control. - */ - -#define HAVE_TERMIOS - -/* - * Define HAVE_PTYS if the system supports pty devices. - */ - -#define HAVE_PTYS - -/* Uncomment this later when other problems are dealt with -mkj */ - -#define HAVE_SOCKETS - -/* Define this symbol if your system has the functions bcopy, etc. */ - -#define BSTRING - -/* subprocesses should be defined if you want to - have code for asynchronous subprocesses - (as used in M-x compile and M-x shell). - This is generally OS dependent, and not supported - under most USG systems. */ - -#define subprocesses - -/* define MAIL_USE_FLOCK if the mailer uses flock - to interlock access to /usr/spool/mail/$USER. - The alternative is that a lock file named - /usr/spool/mail/$USER.lock. */ - -/* Both are used in Linux by different mail programs. I assume that most - people are using newer mailers that have heard of flock. Change this - if you need to. */ - -#define MAIL_USE_FLOCK - -/* Define CLASH_DETECTION if you want lock files to be written - so that Emacs can tell instantly when you try to modify - a file that someone else has modified in his Emacs. */ - -#define CLASH_DETECTION - -/* Here, on a separate page, add any special hacks needed - to make Emacs work on this system. For example, - you might define certain system call names that don't - exist on your system, or that do different things on - your system and must be used only through an encapsulation - (Which you should place, by convention, in sysdep.c). */ - -/* On POSIX systems the system calls are interruptible by signals - that the user program has elected to catch. Thus the system call - must be retried in these cases. To handle this without massive - changes in the source code, we remap the standard system call names - to names for our own functions in sysdep.c that do the system call - with retries. */ - -#define read sys_read -#define write sys_write -#define open sys_open -#define close sys_close - -#define INTERRUPTIBLE_OPEN -#define INTERRUPTIBLE_CLOSE -#define INTERRUPTIBLE_IO - -/* If you mount the proc file system somewhere other than /proc - you will have to uncomment the following and make the proper - changes */ - -/* #define LINUX_LDAV_FILE "/proc/loadavg" */ - -/* This is needed for dispnew.c:update_frame */ - -#ifdef emacs -#include /* Get the definition of _IO_STDIO_H. */ -#if defined(_IO_STDIO_H) || defined(_STDIO_USES_IOSTREAM) -/* new C libio names */ -#define GNU_LIBRARY_PENDING_OUTPUT_COUNT(FILE) \ - ((FILE)->_IO_write_ptr - (FILE)->_IO_write_base) -#else /* !_IO_STDIO_H */ -/* old C++ iostream names */ -#define GNU_LIBRARY_PENDING_OUTPUT_COUNT(FILE) \ - ((FILE)->_pptr - (FILE)->_pbase) -#endif /* !_IO_STDIO_H */ -#endif /* emacs */ - -/* Ask GCC where to find libgcc.a. */ -#define LIB_GCC `$(CC) $(C_SWITCH_X_SITE) -print-libgcc-file-name` - -#ifndef __ELF__ -/* Linux has crt0.o in a non-standard place */ -#define START_FILES pre-crt0.o /usr/lib/crt0.o -#else -#define START_FILES pre-crt0.o /usr/lib/crt1.o /usr/lib/crti.o -#endif - -/* As of version 1.1.51, Linux does not actually implement SIGIO. */ -/* Here we assume that signal.h is already included. */ -#ifdef emacs -#ifdef LINUX_SIGIO_DOES_WORK -#define INTERRUPT_INPUT -#else -#undef SIGIO -/* Some versions of Linux define SIGURG and SIGPOLL as aliases for SIGIO. - This prevents lossage in process.c. */ -#undef SIGURG -#undef SIGPOLL -#endif -#endif - -/* This is needed for sysdep.c */ - -#define NO_SIOCTL_H /* don't have sioctl.h */ - -#define HAVE_VFORK -#define HAVE_SYS_SIGLIST -#define HAVE_GETWD /* cure conflict with getcwd? */ -#define HAVE_WAIT_HEADER - -#define SYSV_SYSTEM_DIR /* use dirent.h */ - -#define POSIX /* affects getpagesize.h and systty.h */ -#define POSIX_SIGNALS - -/* Best not to include -lg, unless it is last on the command line */ -#define LIBS_DEBUG -#ifndef __ELF__ -#define LIB_STANDARD -lc /* avoid -lPW */ -#else -#undef LIB_GCC -#define LIB_GCC -#define LIB_STANDARD -lgcc -lc -lgcc /usr/lib/crtn.o -#endif - -/* Don't use -g in test compiles in configure. - This is so we will use the same shared libs for that linking - that are used when linking temacs. */ -#ifdef THIS_IS_CONFIGURE -#define C_DEBUG_SWITCH -#endif - -/* Let's try this out, just in case. - Nah. Rik Faith says it doesn't work well. */ -/* #define SIGNALS_VIA_CHARACTERS */ - -/* Rob Malouf says: - SYSV IPC is standard a standard part of Linux since version 0.99pl10, - and is a very common addition to previous versions. */ - -#ifdef TERM -#define LIBS_SYSTEM -lclient -#define C_SWITCH_SYSTEM -D_BSD_SOURCE -I/usr/src/term -#else -/* alane@wozzle.linet.org says that -lipc is not a separate library, - since libc-4.4.1. So -lipc was deleted. */ -#define LIBS_SYSTEM -#define C_SWITCH_SYSTEM -D_BSD_SOURCE -#endif - -/* Paul Abrahams says this is needed. */ -#define LIB_MOTIF -lXm -lXpm - -#ifdef HAVE_LIBNCURSES -#define TERMINFO -#define LIBS_TERMCAP -lncurses -#endif - -#define HAVE_SYSVIPC - -#ifdef __ELF__ -#define UNEXEC unexelf.o -#define UNEXEC_USE_MAP_PRIVATE -#endif - -#ifdef LINUX_QMAGIC - -#define HAVE_TEXT_START -#define UNEXEC unexsunos4.o -#define N_PAGSIZ(x) PAGE_SIZE - -#else /* not LINUX_QMAGIC */ - -#define A_TEXT_OFFSET(hdr) (N_MAGIC(hdr) == QMAGIC ? sizeof (struct exec) : 0) -#define A_TEXT_SEEK(hdr) (N_TXTOFF(hdr) + A_TEXT_OFFSET(hdr)) -#define ADJUST_EXEC_HEADER \ - unexec_text_start = N_TXTADDR(ohdr) + A_TEXT_OFFSET(ohdr) - -#endif /* not LINUX_QMAGIC */ - -#if 0 -/* In 19.23 and 19.24, configure sometimes fails to define these. - It has to do with the fact that configure uses CFLAGS when linking - while Makefile.in.in (erroneously) fails to do so when linking temacs. */ -#ifndef HAVE_GETTIMEOFDAY -#define HAVE_GETTIMEOFDAY -#endif -#ifndef HAVE_MKDIR -#define HAVE_MKDIR -#endif -#ifndef HAVE_RMDIR -#define HAVE_RMDIR -#endif -#ifndef HAVE_XSCREENNUMBEROFSCREEN -#define HAVE_XSCREENNUMBEROFSCREEN -#endif -#endif /* 0 */ - -/* This is to work around mysterious gcc failures in some system versions. - It is unlikely that Emacs changes will work around this problem; - therefore, this should remain permanently. */ -#ifndef HAVE_XRMSETDATABASE -#define HAVE_XRMSETDATABASE -#endif - -/* The regex.o routines are a part of the GNU C-library used with Linux. */ -/* However, sometimes they disagree with the src/regex.h that comes with Emacs, - and that can make trouble in etags.c because it gets the regex.h from Emacs - and the function definitions in libc. So turn this off. */ -/* #define REGEXP_IN_LIBC */ - -/* Use BSD process groups, but use setpgid() instead of setpgrp() to - actually set a process group. */ - -#define BSD_PGRPS -#define setpgrp(pid,pgid) setpgid((pid),(pgid)) diff -Nru emacs-19.31/src/s/linux.h emacs-19.31-linux/src/s/linux.h --- emacs-19.31/src/s/linux.h Thu Jan 1 01:00:00 1970 +++ emacs-19.31-linux/src/s/linux.h Sun May 26 12:53:13 1996 @@ -0,0 +1,288 @@ +/* This file is the configuration file for Lignux systems + (that is, Linux-based GNU operating systems.) + Copyright (C) 1985, 1986, 1992, 1994, 1996 Free Software Foundation, Inc. + +This file is part of GNU Emacs. + +GNU Emacs is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2, or (at your option) +any later version. + +GNU Emacs is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with GNU Emacs; see the file COPYING. If not, write to +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, +Boston, MA 02111-1307, USA. */ + +/* This file was put together by Michael K. Johnson and Rik Faith. */ + + +/* + * Define symbols to identify the version of Unix this is. + * Define all the symbols that apply correctly. + */ + +/* #define UNIPLUS */ +/* #define USG5 */ +#define USG +/* #define BSD */ +#define LINUX + +/* SYSTEM_TYPE should indicate the kind of system you are using. + It sets the Lisp variable system-type. */ + +#define SYSTEM_TYPE "linux" /* All the best software is free. */ + +/* Check the version number of Linux--if it is at least 1.2.0, + it is safe to use SIGIO. */ +#ifndef NOT_C_CODE +#ifdef emacs +#ifdef HAVE_LINUX_VERSION_H +#include + +#if LINUX_VERSION_CODE > 0x10200 +#define LINUX_SIGIO_DOES_WORK +#endif /* LINUX_VERSION_CODE > 0x10200 */ +#endif /* HAVE_LINUX_VERSION_H */ +#endif /* emacs */ +#endif /* NOT_C_CODE */ + +/* Letter to use in finding device name of first pty, + if system supports pty's. 'p' means it is /dev/ptyp0 */ + +#define FIRST_PTY_LETTER 'p' + +/* + * Define HAVE_TERMIOS if the system provides POSIX-style + * functions and macros for terminal control. + */ + +#define HAVE_TERMIOS + +/* + * Define HAVE_PTYS if the system supports pty devices. + */ + +#define HAVE_PTYS + +/* Uncomment this later when other problems are dealt with -mkj */ + +#define HAVE_SOCKETS + +/* Define this symbol if your system has the functions bcopy, etc. */ + +#define BSTRING + +/* subprocesses should be defined if you want to + have code for asynchronous subprocesses + (as used in M-x compile and M-x shell). + This is generally OS dependent, and not supported + under most USG systems. */ + +#define subprocesses + +/* define MAIL_USE_FLOCK if the mailer uses flock + to interlock access to /usr/spool/mail/$USER. + The alternative is that a lock file named + /usr/spool/mail/$USER.lock. */ + +/* Both are used in Linux by different mail programs. I assume that most + people are using newer mailers that have heard of flock. Change this + if you need to. */ + +#define MAIL_USE_FLOCK + +/* Define CLASH_DETECTION if you want lock files to be written + so that Emacs can tell instantly when you try to modify + a file that someone else has modified in his Emacs. */ + +#define CLASH_DETECTION + +/* Here, on a separate page, add any special hacks needed + to make Emacs work on this system. For example, + you might define certain system call names that don't + exist on your system, or that do different things on + your system and must be used only through an encapsulation + (Which you should place, by convention, in sysdep.c). */ + +/* On POSIX systems the system calls are interruptible by signals + that the user program has elected to catch. Thus the system call + must be retried in these cases. To handle this without massive + changes in the source code, we remap the standard system call names + to names for our own functions in sysdep.c that do the system call + with retries. */ + +#define read sys_read +#define write sys_write +#define open sys_open +#define close sys_close + +#define INTERRUPTIBLE_OPEN +#define INTERRUPTIBLE_CLOSE +#define INTERRUPTIBLE_IO + +/* If you mount the proc file system somewhere other than /proc + you will have to uncomment the following and make the proper + changes */ + +/* #define LINUX_LDAV_FILE "/proc/loadavg" */ + +/* This is needed for dispnew.c:update_frame */ + +#ifdef emacs +#include /* Get the definition of _IO_STDIO_H. */ +#if defined(_IO_STDIO_H) || defined(_STDIO_USES_IOSTREAM) +/* new C libio names */ +#define GNU_LIBRARY_PENDING_OUTPUT_COUNT(FILE) \ + ((FILE)->_IO_write_ptr - (FILE)->_IO_write_base) +#else /* !_IO_STDIO_H */ +/* old C++ iostream names */ +#define GNU_LIBRARY_PENDING_OUTPUT_COUNT(FILE) \ + ((FILE)->_pptr - (FILE)->_pbase) +#endif /* !_IO_STDIO_H */ +#endif /* emacs */ + +/* Ask GCC where to find libgcc.a. */ +#define LIB_GCC `$(CC) $(C_SWITCH_X_SITE) -print-libgcc-file-name` + +#ifndef __ELF__ +/* Linux has crt0.o in a non-standard place */ +#define START_FILES pre-crt0.o /usr/lib/crt0.o +#else +#define START_FILES pre-crt0.o /usr/lib/crt1.o /usr/lib/crti.o +#endif + +/* As of version 1.1.51, Linux does not actually implement SIGIO. */ +/* Here we assume that signal.h is already included. */ +#ifdef emacs +#ifdef LINUX_SIGIO_DOES_WORK +#define INTERRUPT_INPUT +#else +#undef SIGIO +/* Some versions of Linux define SIGURG and SIGPOLL as aliases for SIGIO. + This prevents lossage in process.c. */ +#undef SIGURG +#undef SIGPOLL +#endif +#endif + +/* This is needed for sysdep.c */ + +#define NO_SIOCTL_H /* don't have sioctl.h */ + +#define HAVE_VFORK +#define HAVE_SYS_SIGLIST +#define HAVE_GETWD /* cure conflict with getcwd? */ +#define HAVE_WAIT_HEADER + +#define SYSV_SYSTEM_DIR /* use dirent.h */ + +#define POSIX /* affects getpagesize.h and systty.h */ +#define POSIX_SIGNALS + +/* Best not to include -lg, unless it is last on the command line */ +#define LIBS_DEBUG +#ifndef __ELF__ +#define LIB_STANDARD -lc /* avoid -lPW */ +#else +#undef LIB_GCC +#define LIB_GCC +#define LIB_STANDARD -lgcc -lc -lgcc /usr/lib/crtn.o +#endif + +/* Don't use -g in test compiles in configure. + This is so we will use the same shared libs for that linking + that are used when linking temacs. */ +#ifdef THIS_IS_CONFIGURE +#define C_DEBUG_SWITCH +#endif + +/* Let's try this out, just in case. + Nah. Rik Faith says it doesn't work well. */ +/* #define SIGNALS_VIA_CHARACTERS */ + +/* Rob Malouf says: + SYSV IPC is standard a standard part of Linux since version 0.99pl10, + and is a very common addition to previous versions. */ + +#ifdef TERM +#define LIBS_SYSTEM -lclient +#define C_SWITCH_SYSTEM -D_BSD_SOURCE -I/usr/src/term +#else +/* alane@wozzle.linet.org says that -lipc is not a separate library, + since libc-4.4.1. So -lipc was deleted. */ +#define LIBS_SYSTEM +#define C_SWITCH_SYSTEM -D_BSD_SOURCE +#endif + +/* Paul Abrahams says this is needed. */ +#define LIB_MOTIF -lXm -lXpm + +#ifdef HAVE_LIBNCURSES +#define TERMINFO +#define LIBS_TERMCAP -lncurses +#endif + +#define HAVE_SYSVIPC + +#ifdef __ELF__ +#define UNEXEC unexelf.o +#define UNEXEC_USE_MAP_PRIVATE +#endif + +#ifdef LINUX_QMAGIC + +#define HAVE_TEXT_START +#define UNEXEC unexsunos4.o +#define N_PAGSIZ(x) PAGE_SIZE + +#else /* not LINUX_QMAGIC */ + +#define A_TEXT_OFFSET(hdr) (N_MAGIC(hdr) == QMAGIC ? sizeof (struct exec) : 0) +#define A_TEXT_SEEK(hdr) (N_TXTOFF(hdr) + A_TEXT_OFFSET(hdr)) +#define ADJUST_EXEC_HEADER \ + unexec_text_start = N_TXTADDR(ohdr) + A_TEXT_OFFSET(ohdr) + +#endif /* not LINUX_QMAGIC */ + +#if 0 +/* In 19.23 and 19.24, configure sometimes fails to define these. + It has to do with the fact that configure uses CFLAGS when linking + while Makefile.in.in (erroneously) fails to do so when linking temacs. */ +#ifndef HAVE_GETTIMEOFDAY +#define HAVE_GETTIMEOFDAY +#endif +#ifndef HAVE_MKDIR +#define HAVE_MKDIR +#endif +#ifndef HAVE_RMDIR +#define HAVE_RMDIR +#endif +#ifndef HAVE_XSCREENNUMBEROFSCREEN +#define HAVE_XSCREENNUMBEROFSCREEN +#endif +#endif /* 0 */ + +/* This is to work around mysterious gcc failures in some system versions. + It is unlikely that Emacs changes will work around this problem; + therefore, this should remain permanently. */ +#ifndef HAVE_XRMSETDATABASE +#define HAVE_XRMSETDATABASE +#endif + +/* The regex.o routines are a part of the GNU C-library used with Linux. */ +/* However, sometimes they disagree with the src/regex.h that comes with Emacs, + and that can make trouble in etags.c because it gets the regex.h from Emacs + and the function definitions in libc. So turn this off. */ +/* #define REGEXP_IN_LIBC */ + +/* Use BSD process groups, but use setpgid() instead of setpgrp() to + actually set a process group. */ + +#define BSD_PGRPS +#define setpgrp(pid,pgid) setpgid((pid),(pgid))