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 1, or (at your option)
+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,
Intel 386 (-machine=intel386 or -machine=is386.h)
The possibilities for -opsystem are: bsd4-2, usg5-2-2, usg5-3,
- isc2-2, 386-ix, esix, or xenix.
+ isc2-2, 386-ix, esix, linux, sco3.2v4, and xenix.
18.58 should support a wide variety of operating systems.
Use isc2-2 for Interactive 386/ix version 2.2.
Use 386ix for prior versions.
- Use esix for Esix. It isn't clear what to do on an SCO system.
+ Use esix for Esix.
+ Use linux for Linux.
+ It isn't clear what to do on an SCO system.
-machine=is386 is used for an Integrated Solutions 386 machine.
It may also be correct for Microport systems.
/* The following three symbols give information on
the size of various data types. */
+
+/* Linux defines these in <values.h>, but they can't be used in #if's */
+#undef SHORTBITS
+#undef INTBITS
+#undef LONGBITS
+
#define SHORTBITS 16 /* Number of bits in a short */
#define INTBITS 32 /* Number of bits in an int */
#define LONGBITS 32 /* Number of bits in a long */
-/* i386 is not big-endian: lowest numbered byte is least significant. */
+/* Define WORDS_BIG_ENDIAN iff lowest-numbered byte in a word
+ is the most significant byte. */
-/* #undef BIG_ENDIAN */
+#undef WORDS_BIG_ENDIAN
/* Define NO_ARG_ARRAY if you cannot take the address of the first of a
* group of arguments and treat it as an array of the arguments. */
/* Convert that into an integer that is 100 for a load average of 1.0 */
#define LOAD_AVE_CVT(x) (((double) (x)) * 100.0 / FSCALE)
-
+
#define FSCALE 256.0 /* determined by experimentation... */
#endif
+
+#ifdef SOLARIS2
+/* Data type of load average, as read out of kmem. */
+#define LOAD_AVE_TYPE long
+
+/* Convert that into an integer that is 100 for a load average of 1.0 */
+/* This is totally uncalibrated. */
+#define LOAD_AVE_CVT(x) ((int) (((double) (x)) * 100.0 / FSCALE))
+
+#ifndef SOLARIS2_4
+/* j.w.hawtin@lut.ac.uk says Solaris 2.1 on the X86 needs -lkvm, and it
+ already has FSCALE defined in a system header. */
+#define LIBS_MACHINE -lkvm
+
+/* 14/9/84 J.W.Hawtin@lut.ac.uk Solaris 2.1 X86 does not like -traditional
+ with GCC on the C_SWITCH_SYSTEM flags. */
+#ifdef __GNUC__
+#undef C_SWITCH_SYSTEM
+#endif /* GCC */
+#define HAVE_VFORK
+
+#endif
+
+/* configure thinks solaris X86 has gethostname, but it does not work,
+ so undefine it. */
+#undef HAVE_GETHOSTNAME
+
+#else /* not SOLARIS2 */
#ifdef USG5_4 /* Older USG systems do not support the load average. */
/* Data type of load average, as read out of kmem. */
#define LOAD_AVE_CVT(x) ((int) (((double) (x)) * 100.0 / FSCALE))
#define FSCALE 256.0
#endif
+#endif /* not SOLARIS2 */
/* Define CANNOT_DUMP on machines where unexec does not work.
Then the function dump-emacs will not be defined
#define LIB_STANDARD /lib/386/Slibcfp.a /lib/386/Slibc.a
#else /* not XENIX */
+#ifdef SOLARIS2
+#define VALBITS 26
+#define GCTYPEBITS 5
+#endif
+
/* this brings in alloca() if we're using cc */
#ifdef USG
#ifndef LIB_STANDARD
#define HAVE_ALLOCA
#define NO_REMAP
#define TEXT_START 0
-#endif /* not USG */
+#endif /* USG */
#endif /* not XENIX */
#ifdef BSD
#ifdef USG5_4
#define DATA_SEG_BITS 0x08000000
#endif
+
+#ifdef MSDOS
+#define NO_REMAP
+#endif
+
+#ifdef WINDOWSNT
+#define VIRT_ADDR_VARIES
+#define DATA_END get_data_end ()
+#define DATA_START get_data_start ()
+#define HAVE_ALLOCA
+#endif