]> code.delx.au - gnu-emacs/blobdiff - src/m/hp9000s300.h
(remove-overlays): Fix last change.
[gnu-emacs] / src / m / hp9000s300.h
index 1e6c232096fc3489115dedf7c235c533e5c27c9e..9760b9bd2edf68d32cddb7c9d7beaeae02cf702d 100644 (file)
@@ -1,11 +1,12 @@
 /* machine description file for hp9000 series 200 or 300 on either HPUX or BSD.
-   Copyright (C) 1985 Free Software Foundation, Inc.
+   Copyright (C) 1985, 2002, 2003, 2004, 2005,
+                 2006 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 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,
@@ -15,10 +16,11 @@ 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, 675 Mass Ave, Cambridge, MA 02139, USA.  */
+the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+Boston, MA 02110-1301, USA.  */
 
 
-/* The following line tells the configuration script what sort of 
+/* The following line tells the configuration script what sort of
    operating system this machine is likely to run.
    USUAL-OPSYS="note"
 
@@ -29,13 +31,26 @@ HP 9000 series 200 or 300 (-machine=hp9000s300)
   (a derivative of sysV with some BSD features) or BSD 4.3 ported by Utah.
 
   If you're running HP-UX, specify `-opsystem=hpux'.
-
-  If you're running Utah's BSD port, don't use this -machine option;
-  instead, specify `-machine=hp300bsd' and `-opsystem=bsd4-3'.
+  If you're running BSD, specify `-opsystem=bsd4-3'.
 NOTE-END */
 
-/* Define this symbol if you are running a version of HP-UX
-   which predates version 6.5 */
+/* I don't understand why we have to do this at all!  -JimB */
+#if 0
+
+/* Do this here at the top of the file; including sys/wait.h may
+   include <endian.h>, which defines BIG_ENDIAN, which will conflict
+   with our definition of BIG_ENDIAN if we do this at the bottom.  */
+#ifndef NOT_C_CODE
+#ifndef NO_SHORTNAMES
+#include <sys/wait.h>
+#define WAITTYPE int
+#endif
+#define WRETCODE(w) (((w) >> 8) & 0377)
+#endif
+
+#endif
+
+/* Define NOMULTIPLEJOBS on versions of HPUX before 6.5.  */
 
 /* #define NOMULTIPLEJOBS */
 
@@ -44,19 +59,10 @@ NOTE-END */
 
 /* #define HPUX_5 */
 
-/* The following three symbols give information on
- the size of various data types.  */
-
-#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 */
-
-/* Define BIG_ENDIAN iff lowest-numbered byte in a word
+/* Define WORDS_BIG_ENDIAN iff lowest-numbered byte in a word
    is the most significant byte.  */
 
-#define BIG_ENDIAN
+#define 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.  */
@@ -68,11 +74,6 @@ NOTE-END */
 
 /* #define WORD_MACHINE */
 
-/* Define how to take a char and sign-extend into an int.
-   On machines where char is signed, this is a no-op.  */
-
-#define SIGN_EXTEND_CHAR(c) (c)
-
 /* Now define a symbol for the cpu type, if your compiler
    does not define it automatically.  */
 
@@ -108,16 +109,17 @@ NOTE-END */
 
 /* #define VIRT_ADDR_VARIES */
 \f
-/* For University of Utah 4.3bsd implemetation on HP300s.
+/* For University of Utah 4.3bsd implementation on HP300s.
    The #ifndef __GNUC__ definitions are required for the "standard" cc,
    a very old, brain-dead version of PCC. */
 
 #ifdef BSD4_3
+
 /* Tell crt0.c that this is an ordinary 68020.  */
 #undef hp9000s300
-#define CRT0_DUMMIES           bogus_a6,
+#define m68000
 
-#define HAVE_ALLOCA
+#define CRT0_DUMMIES           bogus_a6,
 
 #ifndef __GNUC__
 #define LIBS_DEBUG             /* don't have -lg that works */
@@ -153,6 +155,11 @@ NOTE-END */
 #define LIBS_DEBUG /usr/lib/end.o
 #endif
 
+/* Need a TEXT_START.  On the HP9000/s300 that is 0.  */
+#ifdef __GNUC__
+#define TEXT_START   0
+#endif
+
 /* The symbol FIONREAD is defined, but the feature does not work
    on the 200/300.  */
 
@@ -172,21 +179,23 @@ NOTE-END */
 #endif
 
 /* Define the BSTRING functions in terms of the sysV functions.
-   Version 6 of HP-UX supplies these in the BSD library. */
+   Version 6 of HP-UX supplies these in the BSD library,
+   but that library has reported bugs in `signal'.  */
 
-#ifdef HPUX_5
+/* #ifdef HPUX_5 */
 #define bcopy(a,b,s)   memcpy (b,a,s)
 #define bzero(a,s)     memset (a,0,s)
 #define bcmp           memcmp
-#endif
+/* #endif */
 
 /* On USG systems these have different names.
-   Version 6 of HP-UX supplies these in the BSD library. */
+   Version 6 of HP-UX supplies these in the BSD library,
+   which we currently want to avoid using.  */
 
-#ifdef HPUX_5
+/* #ifdef HPUX_5 */
 #define index strchr
 #define rindex strrchr
-#endif
+/* #endif */
 
 /* Define C_SWITCH_MACHINE to be +X if you want the s200/300
  * Emacs to run on both 68010 and 68020 based hp-ux's.
@@ -207,18 +216,13 @@ NOTE-END */
 #endif
 #endif
 
-#endif /* not BSD4_3 */
-
 /* Define NEED_BSDTTY if you have such. */
 
 #ifndef NOMULTIPLEJOBS
 #define NEED_BSDTTY
 #endif
 
-#ifndef NOT_C_CODE
-#ifndef NO_SHORTNAMES
-#include <sys/wait.h>
-#define WAITTYPE int
-#endif
-#define WRETCODE(w) (((w) >> 8) & 0377)
-#endif
+#endif /* not BSD4_3 */
+
+/* arch-tag: 6e0001a5-ed62-4258-9235-204348f6bdb9
+   (do not change this comment) */