/* Machine description file for intel 386.
- Copyright (C) 1987, 2001, 2002, 2003, 2004, 2005,
- 2006, 2007 Free Software Foundation, Inc.
+ Copyright (C) 1987, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
+ 2008 Free Software Foundation, Inc.
This file is part of GNU Emacs.
-GNU Emacs is free software; you can redistribute it and/or modify
+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.
+the Free Software Foundation, either version 3 of the License, 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
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., 51 Franklin Street, Fifth Floor,
-Boston, MA 02110-1301, USA. */
+along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
/* The following line tells the configuration script what sort of
USUAL-OPSYS="note"
NOTE-START
-Intel 386 (-machine=intel386 or -machine=is386.h)
+Intel 386 (-machine=intel386)
The possibilities for -opsystem are: bsd4-2, usg5-2-2, usg5-3,
- isc2-2, 386-ix, esix, linux, sco3.2v4, and xenix.
+ isc2-2, 386-ix, and linux.
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.
Use linux for Linux.
It isn't clear what to do on an SCO system.
Minor changes merged in 19.1.
NOTE-END */
-/* Define WORDS_BIG_ENDIAN iff lowest-numbered byte in a word
+/* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word
is the most significant byte. */
#undef WORDS_BIG_ENDIAN
/* #define NO_ARG_ARRAY */
-/* Define WORD_MACHINE if addresses and such have
- * to be corrected before they can be used as byte counts. */
-
-/* #define WORD_MACHINE */
-
-/* Now define a symbol for the cpu type, if your compiler
- does not define it automatically:
- Ones defined so far include vax, m68000, ns16000, pyramid,
- orion, tahoe, APOLLO and many others */
-
-#define INTEL386
-
-/* Use type int rather than a union, to represent Lisp_Object */
-
-#define NO_UNION_TYPE
-
/* crt0.c, if it is used, should use the i386-bsd style of entry.
with no extra dummy args. On USG and XENIX,
NO_REMAP says this isn't used. */
#define DOT_GLOBAL_START
-#ifdef XENIX
-/* Data type of load average, as read out of kmem. */
-#define LOAD_AVE_TYPE short
-
-/* 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
And handa@etl.gov.jp says that -lkvm needs -llelf, at least on 2.5. */
#define LIBS_MACHINE -lkvm -lelf
-#ifndef SOLARIS2_4
-/* J.W.hawtin@lut.ac.uk says Solaris 2.1 on the X86 has FSCALE defined in a
- system header. */
-#else /* SOLARIS2_4 */
-#ifndef __GNUC__
-#if 0 /* wisner@gryphon.com says this screws up cpp */
-#define C_SWITCH_MACHINE -Xa
-#endif
-#endif /* not __GNUC__ */
-#endif /* SOLARIS2_4 */
-
/* configure thinks solaris X86 has gethostname, but it does not work,
so undefine it. */
#undef HAVE_GETHOSTNAME
/* #define VIRT_ADDR_VARIES */
-#ifdef XENIX
-/* Define NO_REMAP if memory segmentation makes it not work well
- to change the boundary between the text section and data section
- when Emacs is dumped. If you define this, the preloaded Lisp
- code will not be sharable; but that's better than failing completely. */
-
-#define NO_REMAP
-
-/* Since cannot purify, use standard Xenix 386 startup code. */
-
-#define START_FILES /lib/386/Sseg.o pre-crt0.o /lib/386/Scrt0.o
-
-/* These really use terminfo. */
-
-#define LIBS_TERMCAP /lib/386/Slibcurses.a \
- /lib/386/Slibtinfo.a /lib/386/Slibx.a
-
-/* Standard libraries for this machine. Since `-l' doesn't work in `ld'. */
-/* '__fltused' is unresolved w/o Slibcfp.a */
-#define LIB_STANDARD /lib/386/Slibcfp.a /lib/386/Slibc.a
-#else /* not XENIX */
-
/* this brings in alloca() if we're using cc */
#ifdef USG
#ifndef LIB_STANDARD
#define NO_REMAP
#define TEXT_START 0
#endif /* USG */
-#endif /* not XENIX */
#ifdef USG5_4
#define DATA_SEG_BITS 0x08000000
#define SEGMENT_MASK ((SEGMENT_SIZE)-1)
#endif
+#if defined (MAC_OSX) || defined (DARWIN)
+#ifdef _LP64
+/* For Intel Mac, with CC='gcc -arch x86_64'. */
+#define NO_ARG_ARRAY
+#endif
+#endif
+
/* arch-tag: 746338f0-cb7b-4f49-a98c-cb50817cf2ec
(do not change this comment) */