--- include/private/gcconfig.h.orig Mon Oct 8 10:36:25 2001 +++ include/private/gcconfig.h Mon Oct 8 10:56:43 2001 @@ -23,10 +23,19 @@ /* Machine specific parts contributed by various people. See README file. */ -/* First a unified test for Linux: */ +/* First a unified test for the Multi-platform OS's: */ # if defined(linux) || defined(__linux__) # define LINUX # endif +# if defined(__FreeBSD__) +# define FREEBSD +# endif +# if defined(__OpenBSD__) +# define OPENBSD +# endif +# if defined(bsdi) +# define BSDI +# endif /* And one for NetBSD: */ # if defined(__NetBSD__) @@ -44,25 +53,19 @@ # define HP # define mach_type_known # endif -# if defined(__OpenBSD__) && defined(m68k) +# if (defined(__NetBSD__) || defined(__OpenBSD__)) && defined(m68k) # define M68K -# define OPENBSD # define mach_type_known # endif -# if defined(__OpenBSD__) && defined(__sparc__) +# if (defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__)) && defined(__sparc__) # define SPARC -# define OPENBSD # define mach_type_known # endif -# if defined(__NetBSD__) && defined(m68k) -# define M68K -# define mach_type_known -# endif -# if defined(__NetBSD__) && defined(__powerpc__) +# if (defined(__FreeBSD__) || defined(__NetBSD__)) && defined(__powerpc__) # define POWERPC # define mach_type_known # endif -# if defined(__NetBSD__) && defined(__arm32__) +# if (defined(__FreeBSD__) || defined(__NetBSD__)) && defined(__arm32__) # define ARM32 # define mach_type_known # endif @@ -125,7 +128,7 @@ # define mach_type_known # endif # if defined(sparc) && defined(unix) && !defined(sun) && !defined(linux) \ - && !defined(__OpenBSD__) && !(__NetBSD__) + && !defined(__FreeBSD__) && !defined(__OpenBSD__) && !(__NetBSD__) # define SPARC # define DRSNX # define mach_type_known @@ -170,7 +173,7 @@ # define I386 # define mach_type_known # endif -# if defined(LINUX) && (defined(__ia64__) || defined(__ia64)) +# if (defined(__FreeBSD__) || defined(LINUX)) && (defined(__ia64__) || defined(__ia64)) # define IA64 # define mach_type_known # endif @@ -196,7 +199,7 @@ # endif # if defined(__alpha) || defined(__alpha__) # define ALPHA -# if !defined(LINUX) && !defined(NETBSD) +# if !defined(LINUX) && !defined(__FreeBSD__) && !defined(NETBSD) && !defined(__OpenBSD__) # define OSF1 /* a.k.a Digital Unix */ # endif # define mach_type_known @@ -218,6 +221,9 @@ # define MACOS # define mach_type_known # endif +# if (defined(__FreeBSD__) || defined(__NetBSD__) || defined(bsdi)) && (defined(__powerpc) || defined(__ppc__) || defined(__ppc)) +# define POWERPC +# endif # if defined(macosx) || \ defined(__APPLE__) && defined(__MACH__) && defined(__ppc__) # define MACOSX @@ -239,25 +245,10 @@ # define NEXT # define mach_type_known # endif -# if defined(__OpenBSD__) && (defined(i386) || defined(__i386__)) +# if (defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__) || defined(bsdi)) && (defined(i386) || defined(__i386__)) # define I386 -# define OPENBSD # define mach_type_known # endif -# if defined(__FreeBSD__) && (defined(i386) || defined(__i386__)) -# define I386 -# define FREEBSD -# define mach_type_known -# endif -# if defined(__NetBSD__) && (defined(i386) || defined(__i386__)) -# define I386 -# define mach_type_known -# endif -# if defined(bsdi) && (defined(i386) || defined(__i386__)) -# define I386 -# define BSDI -# define mach_type_known -# endif # if !defined(mach_type_known) && defined(__386BSD__) # define I386 # define THREE86BSD @@ -391,7 +382,7 @@ /* (SUNOS4, SUNOS5, LINUX, */ /* DRSNX variants) */ /* ALPHA ==> DEC Alpha */ - /* (OSF1 and LINUX variants) */ + /* (OSF1, BSD and LINUX variants) */ /* M88K ==> Motorola 88XX0 */ /* (CX_UX and DGUX) */ /* S370 ==> 370-like machine */ @@ -1262,6 +1253,24 @@ # define CPP_WORDSZ 64 # define MPROTECT_VDB # define DYNAMIC_LOADING +# endif +# ifdef FREEBSD +# define OS_TYPE "FREEBSD" +# define CPP_WORDSZ 64 +# define HEURISTIC2 +# define STACKBOTTOM ((ptr_t) 0x120000000) +/* # define DATASTART ((ptr_t) 0x140000000) */ +# define DATASTART GC_data_start +/* # define DYNAMIC_LOADING */ + extern int _end; +# define DATAEND (&_end) +# endif +# if defined(OPENBSD) +# define OS_TYPE "OPENBSD" +# define CPP_WORDSZ 64 +# define HEURISTIC2 + extern int _end; +# define DATAEND (&_end) # endif # ifdef LINUX # define OS_TYPE "LINUX"