/* This file is the configuration file for the Linux operating system.
- Copyright (C) 1985, 1986, 1992 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1986, 1992, 1994 Free Software Foundation, Inc.
This file is part of GNU Emacs.
so that Emacs can tell instantly when you try to modify
a file that someone else has modified in his Emacs. */
-/* #define CLASH_DETECTION */
+#define CLASH_DETECTION
/* Here, on a separate page, add any special hacks needed
to make Emacs work on this system. For example,
/* This is needed for disknew.c:update_frame() */
-#define PENDING_OUTPUT_COUNT(FILE) ((FILE)->_pptr - (FILE)->_pbase)
+#ifdef emacs
+#ifdef _IO_STDIO_H
+/* 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 */
/* Linux has crt0.o in a non-standard place */
#define START_FILES pre-crt0.o /usr/lib/crt0.o
#include <values.h>
#endif
-#define HAVE_SETSID
-
/* This is needed for sysdep.c */
-#define HAVE_UNISTD_H /* for getpagesize.h */
#define NO_SIOCTL_H /* don't have sioctl.h */
#if 0 /* autoconf should take care of this. */
+#define HAVE_UNISTD_H /* for getpagesize.h */
#define HAVE_RANDOM /* is builtin */
#endif
#define HAVE_GETPAGESIZE
#define SYSV_SYSTEM_DIR /* use dirent.h */
#define USG_SYS_TIME /* use sys/time.h, not time.h */
-#define POSIX /* affects only getpagesize.h */
+#define POSIX /* affects getpagesize.h and systty.h */
#define POSIX_SIGNALS
/* libc-linux/sysdeps/linux/i386/ulimit.c says that due to shared library, */
#define LD_SWITCH_SYSTEM -L/usr/X386/lib
#endif
-/* Work around a bug in glibc with _longjmp. */
-#define C_SWITCH_SYSTEM -D_BSD_SOURCE
-
/* Let's try this out, just in case.
Nah. Rik Faith <faith@cs.unc.edu> says it doesn't work well. */
/* #define SIGNALS_VIA_CHARACTERS */
/* Rob Malouf <malouf@csli.stanford.edu> 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_MACHINE -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_MACHINE
+#define C_SWITCH_SYSTEM -D_BSD_SOURCE
+#endif
+
#define HAVE_SYSVIPC
+
+#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)
+
+/* 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
+#ifndef HAVE_XRMSETDATABASE
+#define HAVE_XRMSETDATABASE
+#endif