]> code.delx.au - gnu-emacs/blobdiff - src/s/isc2-2.h
Fix comment about vfork.
[gnu-emacs] / src / s / isc2-2.h
index b02f356e97e7c451a8eaf867a93276d6eb3cfb71..f669fc2c1416a8766c660d81684be3c9cc7ccc25 100644 (file)
@@ -3,19 +3,23 @@
 
 #include "usg5-3.h"
 
-/* With this defined, subprocesses made by (e.g.) M-x grep don't exit
-   cleanly, they just hang.  ISC 2.2.1 does have select, in the -linet
-   library, but I guess it's not what Emacs needs.  --karl@cs.umb.edu
-#define HAVE_SELECT */
+/* select (in -linet) works okay on X ptys, but not on the serial port.
+   karl@cs.umb.edu says that with that select call, subprocesses made by
+   (e.g.) M-x grep don't exit cleanly, they just hang.  Similar problems
+   have been observed in ISC 3.0.  */
+#define BROKEN_SELECT_NON_X
 
-/* Although ISC has sockets, again in -linet, again it's not what Emacs
-   needs.  With this defined, interrupt-shell-subjob and the like do
-   nothing.  --karl@cs.umb.edu
-#define HAVE_SOCKETS */
+/* karl@cs.umb.edu says that ISC's socket support (in -linet) isn't
+   what Emacs needs; it makes interrupt-shell-subjob and the like do
+   nothing.  But that appears to have been another manifestation of
+   the broken select, so it should now be safe to define this again.  */
+#define HAVE_SOCKETS
 
+#define NO_SOCKETS_IN_FILE_SYSTEM
+#define NEED_NET_ERRNO_H
 
 /* This keeps the .cdbx section that gcc puts out when generating
-   stabs-in-coff output, so Emacs can be debugged.  --karl@cs.umb.edu*/
+   stabs-in-coff output, so Emacs can be debugged.  --karl@cs.umb.edu*/
 #define USG_SHARED_LIBRARIES
 
 /* We can support lock files.  */
 #define O_NDELAY O_NONBLOCK
 #define MEMORY_IN_STRING_H
 
-/* -lcposix is always needed for rename.  -lPW is only needed if not gcc.  */
-#ifdef __GNUC__
-#define LIB_STANDARD -lcposix -lc
-#else
-#define LIB_STANDARD -lPW -lcposix -lc
-#endif
+/* Tell gmalloc.c that we don't have memmove (system include files to the
+   contrary!). */
+#define MEMMOVE_MISSING
 
-/* mt00@etherm.co.uk says this is needed for process.c.  */
-#define USE_UTIME
+/* Send a signal to a subprocess by "typing" a signal character. */
+#define SIGNALS_VIA_CHARACTERS
 
-#define NO_X_DESTROY_DATABASE
+/* -lPW is only needed if not using Gcc.  We used to include -lcposix here
+   for the rename function, but some people say ISC's rename doesn't
+   work correctly with Emacs so we use Emacs' emulation instead. */
+#if defined (__GNUC__)
+#  define LIB_STANDARD_1 -lcposix
+#else /* !__GNUC__ */
+#  define LIB_STANDARD_1 -lPW
+#endif /* !__GNUC__ */
 
-/* This communicates with m-intel386.h.  */
-#define DONT_DEFINE_SIGNAL
+/* LIB_STANDARD_1 is used both here and in LIBS_SYSTEM
+   (the latter for the sake of configure).  */
+#define LIB_STANDARD LIB_STANDARD_1 -lc
 
-/* May be needed to avoid undefined symbols such as gethostname,
-   inet_addr, gethostbyname, socket, connect, ...  But if we are not
-   compiling with X support, it's not needed.  */
-#ifdef HAVE_X_WINDOWS
-#define LIBS_SYSTEM -linet
-#endif
+#define NO_X_DESTROY_DATABASE
+
+/* -linet may be needed to avoid undefined symbols such as gethostname,
+   inet_addr, gethostbyname, socket, connect, ...  */
+#define LIBS_SYSTEM -linet LIB_STANDARD_1
 
 /* This system has job control.  */
 #undef NOMULTIPLEJOBS
    unconditionally define this.  */
 #define NO_ASM
 
-/* The POSIX-ified system headers don't work with GCC.  */
-#ifdef __GNUC__
-#define C_SWITCH_SYSTEM -traditional
+/* -traditional is not necessary if the system header files are fixed to
+   define getc and putc in the absence of _POSIX_SOURCE.  GCC's from 2.4.4
+   on do this. */
+#if !defined (__GNUC__) || __GNUC__ < 2
+#  define C_SWITCH_SYSTEM -traditional
 #endif
 
 /* Some versions of ISC are said to define S_IFLNK even tho