view src/m/pmax.h @ 4440:e608866e49aa

Changes for 3b1 suggested by Andy Fyfe <andy@scp.caltech.edu> * 7300.h [__GNUC__]: #define HAVE_ALLOCA. [not __GNUC__]: #define SWITCH_ENUM_BUG, C_ALLOCA, and STACK_DIRECTION. (HAVE_SYSVIPC, USE_UTIME): #define these. (memmove): We don't have this; call safe_bcopy. (CRT0_COMPILE): #define this, so we always use the system's cc. * config.h.in: Add #undefs for HAVE_MKDIR and HAVE_RMDIR, for configure to edit. * sysdep.c [not HAVE_MKDIR] (mkdir): New function, taken from tar, for use on systems lacking the mkdir function. [not HAVE_RMDIR] (rmdir): New function, taken from tar, for use on systems lacking the rmdir function. * ymakefile (crt0.o): Replace the compiler and switches with the symbol CRT0_COMPILE. (CRT0_COMPILE): If the system and machine description files have left this undefined, then define it to do the same as the old crt0.o rule used to.
author Jim Blandy <jimb@redhat.com>
date Tue, 03 Aug 1993 07:28:04 +0000
parents 20abae0de304
children cd8db400928f
line wrap: on
line source

/* Machine description file for DEC MIPS machines.  */

#include "mips.h"

/* The following line tells the configuration script what sort of 
   operating system this machine is likely to run.
   USUAL-OPSYS="note"  

NOTE-START
Use -opsystem=osf1 for OSF/1, and -opsystem=bsd4-3 otherwise.
NOTE-END  */

#undef BIG_ENDIAN
#undef LIB_STANDARD
#undef START_FILES
#undef COFF
#undef TERMINFO
#define MAIL_USE_FLOCK
#define HAVE_UNION_WAIT

/* This line starts being needed with ultrix 4.0.  */
/* You must delete it for version 3.1.  */
#define START_FILES pre-crt0.o /usr/lib/cmplrs/cc/crt0.o

/* Supposedly the following will overcome a kernel bug.  */
#undef LD_SWITCH_MACHINE
#undef DATA_START
#define DATA_START 0x10000000
#define DATA_SEG_BITS 0x10000000

#if 0
/* I don't see any such conflict in Ultrix 4.2, 4.2a, or 4.3.  And
   the relocating allocator is a real win.  -JimB  */

/* In Ultrix 4.1, XvmsAlloc.o in libX11.a seems to insist
   on defining malloc itself.  This should avoid conflicting with it.  */
#define SYSTEM_MALLOC
#endif

/* Override what m-mips.h says about this.  */
#undef LINKER

/* Ultrix 4.2 (perhaps also 4.1) implements O_NONBLOCK
   but it doesn't work right;
   and it causes hanging in read_process_output.  */
#define BROKEN_O_NONBLOCK

#ifdef OSF1
#undef C_ALLOCA
#define HAVE_ALLOCA
#endif

/* mcc@timessqr.gc.cuny.edu says this makes Emacs work with DECnet.  */
#ifdef HAVE_LIBDNET
#define LIBS_MACHINE -ldnet
#endif

/* mcc@timessqr.gc.cuny.edu says it is /vmunix on Ultrix 4.2a.  */
#undef KERNEL_FILE
#define KERNEL_FILE "/vmunix"

/* Jim Wilson writes:
   [...] The X11 include files that Dec distributes with Ultrix
   are bogus.

   When __STDC__ is defined (which is true with gcc), the X11 include files
   try to define prototypes.  The prototypes however use types which haven't
   been defined yet, and thus we get syntax/parse errors.

   You can not fix this by changing the include files, because the prototypes
   create circular dependencies, in particular Xutil.h depends on types defined
   in Xlib.h, and Xlib.h depends on types defined in Xutil.h.  So, no matter
   which order you try to include them in, it will still fail.

   Compiling with -DNeedFunctionPrototypes=0 will solve the problem by
   directly inhibiting the bad prototypes.  This could perhaps just be put in
   an a Ultrix configuration file.

   Using the MIT X11 distribution instead of the one provided by Dec will
   also solve the problem, but I doubt you can convince everyone to do this. */
#define C_SWITCH_X_MACHINE -DNeedFunctionPrototypes=0