Imake.cf revision b94d2739
111d341caSmrgXCOMM $XdotOrg: util/cf/Imake.cf,v 1.12 2005/11/08 06:33:24 jkj Exp $
211d341caSmrgXCOMM $Xorg: Imake.cf,v 1.4 2000/08/17 19:41:45 cpqbld Exp $
311d341caSmrg/*
411d341caSmrg * To add support for another platform:
511d341caSmrg * 
611d341caSmrg *     1.  Identify a machine-specific cpp symbol.  If your preprocessor 
711d341caSmrg *         does not have any built in, you will need to add the symbol to the
811d341caSmrg *         cpp_argv table in config/imake/imakemdep.h and rebuild imake with
911d341caSmrg *         the BOOTSTRAPCFLAGS variable set (see the macII for an example).
1011d341caSmrg *
1111d341caSmrg *     2.  Add all machine-specific cpp symbols (either defined by you or by
1211d341caSmrg *         the preprocessor or compiler) to the predefs table in 
1311d341caSmrg *         config/imake/imakemdep.h.
1411d341caSmrg *
1511d341caSmrg *     3.  But a new #ifdef block below that defines MacroIncludeFile and
1611d341caSmrg *         MacroFile for your new platform and then #undefs the machine-
1711d341caSmrg *         specific preprocessor symbols (to avoid problems with file names).
1811d341caSmrg *
1911d341caSmrg *     4.  Create a .cf file with the name given by MacroFile.
2011d341caSmrg */
2111d341caSmrgXCOMM $XFree86: xc/config/cf/Imake.cf,v 3.88 2003/12/16 21:30:21 herrb Exp $
2211d341caSmrg
2311d341caSmrg#if defined(__APPLE__)
2411d341caSmrg# undef __APPLE__
2511d341caSmrg# define MacroIncludeFile <darwin.cf>
2611d341caSmrg# define MacroFile darwin.cf
2711d341caSmrg# define DarwinArchitecture
2811d341caSmrg# ifdef __ppc__
2911d341caSmrg#  define PpcDarwinArchitecture
3011d341caSmrg#  undef __ppc__
3111d341caSmrg# endif
3211d341caSmrg# ifdef __i386__
3311d341caSmrg#  define i386DarwinArchitecture
3411d341caSmrg#  undef __i386__
3511d341caSmrg# endif
3611d341caSmrg#endif
3711d341caSmrg
3811d341caSmrg#if defined(clipper) || defined(__clipper__)
3911d341caSmrg# undef clipper
4011d341caSmrg# define MacroIncludeFile <ingr.cf>
4111d341caSmrg# define MacroFile ingr.cf
4211d341caSmrg# define IngrArchitecture
4311d341caSmrg#endif /* clipper */
4411d341caSmrg
4511d341caSmrg#ifdef __CYGWIN__
4611d341caSmrg#define MacroIncludeFile <cygwin.cf>
4711d341caSmrg#define MacroFile cygwin.cf
4811d341caSmrg#define cygwinArchitecture
4911d341caSmrg#define i386Architecture
5011d341caSmrg#undef i386
5111d341caSmrg#undef i486
5211d341caSmrg#undef i586
5311d341caSmrg#undef i686
5411d341caSmrg#undef __i386__
5511d341caSmrg#undef _X86_
5611d341caSmrg#undef __CYGWIN__
5711d341caSmrg#endif /* CYGWIN */
5811d341caSmrg
5911d341caSmrg#ifdef ultrix
6011d341caSmrg# define MacroIncludeFile <ultrix.cf>
6111d341caSmrg# define MacroFile ultrix.cf
6211d341caSmrg# ifdef vax
6311d341caSmrg#  undef vax
6411d341caSmrg#  define VaxArchitecture
6511d341caSmrg# endif
6611d341caSmrg# ifdef mips
6711d341caSmrg#  undef mips
6811d341caSmrg#  define MipsArchitecture
6911d341caSmrg#  define MipselArchitecture
7011d341caSmrg# endif
7111d341caSmrg# undef ultrix
7211d341caSmrg# define UltrixArchitecture
7311d341caSmrg#endif /* ultrix */
7411d341caSmrg
7511d341caSmrg#if defined(vax) && !defined(UltrixArchitecture) && !defined(__OpenBSD__)
7611d341caSmrg# define MacroIncludeFile <bsd.cf>
7711d341caSmrg# define MacroFile bsd.cf
7811d341caSmrg# undef vax
7911d341caSmrg# define BSDArchitecture
8011d341caSmrg# define VaxArchitecture
8111d341caSmrg#endif /* vax */
8211d341caSmrg
8311d341caSmrg#ifdef __bsdi__
8411d341caSmrg# define MacroIncludeFile <bsdi.cf>
8511d341caSmrg# define MacroFile bsdi.cf
8611d341caSmrg# undef __bsdi__
8711d341caSmrg# ifdef bsdi
8811d341caSmrg#  undef bsdi
8911d341caSmrg# endif
9011d341caSmrg# define BSDOSArchitecture
9111d341caSmrg# if defined(__i386__) || defined(i386)
9211d341caSmrg#  define i386BsdArchitecture
9311d341caSmrg#  define i386Architecture
9411d341caSmrg#  undef i386
9511d341caSmrg#  undef __i386__
9611d341caSmrg# endif
9711d341caSmrg# if defined(__ppc__) || defined(ppc)
9811d341caSmrg#  define PpcBsdArchitecture
9911d341caSmrg#  define PpcArchitecture
10011d341caSmrg#  undef ppc
10111d341caSmrg#  undef __ppc__
10211d341caSmrg# endif
10311d341caSmrg# if defined(__sparc__) || defined(__sparc_v9__) || defined(sparc)
10411d341caSmrg#  define SparcBsdArchitecture
10511d341caSmrg#  define SparcArchitecture
10611d341caSmrg#  undef sparc
10711d341caSmrg#  undef __sparc__
10811d341caSmrg#  undef __sparc_v9__
10911d341caSmrg# endif
11011d341caSmrg#endif /* bsdi */
11111d341caSmrg
11211d341caSmrg#ifdef __OpenBSD__
11311d341caSmrg# undef __OpenBSD__
11411d341caSmrg# undef __NetBSD__
11511d341caSmrg# define OpenBSDArchitecture
11611d341caSmrg# define KOpenBSDArchitecture
11711d341caSmrg# define MacroIncludeFile <OpenBSD.cf>
11811d341caSmrg# define MacroFile OpenBSD.cf
11911d341caSmrg# ifdef __i386__
12011d341caSmrg#  define i386BsdArchitecture
12111d341caSmrg#  define i386Architecture
12211d341caSmrg#  undef i386
12311d341caSmrg# endif
12411d341caSmrg# if defined(__sparc__) || defined(sparc)
12511d341caSmrg#  if !defined(__arch64__)
12611d341caSmrg#   define SparcArchitecture
12711d341caSmrg#  else
12811d341caSmrg#   define Sparc64Architecture
12911d341caSmrg#  endif
13011d341caSmrg#  undef sparc
13111d341caSmrg# endif
13211d341caSmrg# if defined(__mips__) || defined(mips)
13311d341caSmrg#   define MipsArchitecture
13411d341caSmrg#   ifdef arc
13511d341caSmrg#     define ArcArchitecture
13611d341caSmrg#     undef arc
13711d341caSmrg#   endif
13811d341caSmrg#   ifdef pmax
13911d341caSmrg#     define PmaxArchitecture
14011d341caSmrg#     undef pmax
14111d341caSmrg#   endif
14211d341caSmrg#   undef mips
14311d341caSmrg# endif
14411d341caSmrg# if defined(__alpha__) || defined(alpha)
14511d341caSmrg#   define AlphaArchitecture
14611d341caSmrg#   undef __alpha__
14711d341caSmrg#   undef alpha
14811d341caSmrg# endif
14911d341caSmrg# if defined(__amd64__) || defined(__x86_64__)
15011d341caSmrg#   define AMD64Architecture
15111d341caSmrg#   undef __amd64__
15211d341caSmrg#   undef __x86_64__
15311d341caSmrg#   undef amd64
15411d341caSmrg# endif
15511d341caSmrg# if defined(__mc68020__) || defined(mc68020)
15611d341caSmrg#  define Mc68020Architecture
15711d341caSmrg#  if defined(amiga)
15811d341caSmrg#   define AmigaArchitecture
15911d341caSmrg#   undef amiga
16011d341caSmrg#  endif
16111d341caSmrg#  if defined(hp300)
16211d341caSmrg#   define Hp300Architecture
16311d341caSmrg#   undef hp300
16411d341caSmrg#  endif
16511d341caSmrg#  if defined(mac68k)
16611d341caSmrg#    define Mac68kArchitecture
16711d341caSmrg#    undef mac68k
16811d341caSmrg#  endif
16911d341caSmrg#  if defined(mvme68k)
17011d341caSmrg#   define Mvme68kArchitecture
17111d341caSmrg#   undef mvme68k
17211d341caSmrg#  endif
17311d341caSmrg#  if defined(sun3) 
17411d341caSmrg#   define Sun3Architecture
17511d341caSmrg#   undef sun3
17611d341caSmrg#  endif
17711d341caSmrg#  undef mc68000
17811d341caSmrg# endif
17911d341caSmrg# ifdef __powerpc__
18011d341caSmrg#  define PpcArchitecture
18111d341caSmrg#  undef __powerpc__
18211d341caSmrg#  undef __macppc__
18311d341caSmrg#  undef macppc
18411d341caSmrg# endif
18511d341caSmrg# ifdef __vax__
18611d341caSmrg#  undef vax
18711d341caSmrg#  undef __vax__
18811d341caSmrg#  define VaxArchitecture
18911d341caSmrg# endif
19011d341caSmrg# ifdef __hppa__
19111d341caSmrg#  ifndef HPArchitecture
19211d341caSmrg#   define HPArchitecture
19311d341caSmrg#  endif
19411d341caSmrg#  undef __hppa__
19511d341caSmrg# endif /* __hppa__ */
19611d341caSmrg#endif /* OpenBSD */
19711d341caSmrg
19811d341caSmrg/* Systems based on kernel of OpenBSD */
19911d341caSmrg#if defined(__OpenBSD_kernel__)
20011d341caSmrg#define KOpenBSDArchitecture
20111d341caSmrg#endif
20211d341caSmrg
20311d341caSmrg#ifdef __NetBSD__
20411d341caSmrg# define MacroIncludeFile <NetBSD.cf>
20511d341caSmrg# define MacroFile NetBSD.cf
20611d341caSmrg# undef __NetBSD__
20711d341caSmrg# define NetBSDArchitecture
20811d341caSmrg# define KNetBSDArchitecture
20911d341caSmrg# ifdef __i386__
21011d341caSmrg#  define i386BsdArchitecture
21111d341caSmrg#  define i386Architecture
21211d341caSmrg#  undef i386
21311d341caSmrg# endif
21411d341caSmrg# if defined(__sparc64__) || defined(__sparc_v9__) || defined(__arch64__)
21511d341caSmrg#  define Sparc64Architecture
21611d341caSmrg# endif
21711d341caSmrg# if defined(__sparc__) || defined(sparc)
21811d341caSmrg#  define SparcArchitecture
21911d341caSmrg#  undef sparc
22011d341caSmrg#  if defined(__sparc_v9__) || defined(__arch64__)
22111d341caSmrg#    define Sparc64Architecture
22211d341caSmrg#  endif
22311d341caSmrg# endif
22411d341caSmrg# ifdef mips
22511d341caSmrg#   define MipsArchitecture
22611d341caSmrg#   define ArcArchitecture
22711d341caSmrg#   undef mips
22811d341caSmrg# endif
22911d341caSmrg# ifdef __alpha__
23011d341caSmrg#   define AlphaArchitecture
23111d341caSmrg#   define AlphaBsdArchitecture
23211d341caSmrg#   undef __alpha__
23311d341caSmrg# endif
23411d341caSmrg# ifdef mc68000
23511d341caSmrg#   define Mc68020Architecture
23611d341caSmrg# endif
237b94d2739Scube# if defined(__arm__) || defined(__arm32__)
23811d341caSmrg#   define Arm32Architecture
239b94d2739Scube#   undef __arm__
24011d341caSmrg#   undef __arm32__
24111d341caSmrg# endif
24211d341caSmrg# ifdef __vax__
24311d341caSmrg#   define VaxArchitecture
24411d341caSmrg#   undef __vax__
24511d341caSmrg# endif
24611d341caSmrg# ifdef __powerpc__
24711d341caSmrg#   define PpcArchitecture
24811d341caSmrg#   undef __powerpc__
24911d341caSmrg# endif
250b94d2739Scube# ifdef __x86_64__
251b94d2739Scube#  define AMD64Architecture
252b94d2739Scube#  undef __x86_64__
253b94d2739Scube# endif
25411d341caSmrg#endif /* NetBSD */
25511d341caSmrg
25611d341caSmrg/* Systems based on kernel of NetBSD */
25711d341caSmrg#if defined(__NetBSD_kernel__)
25811d341caSmrg#define KNetBSDArchitecture
25911d341caSmrg#endif
26011d341caSmrg
26111d341caSmrg#ifdef __DragonFly__
26211d341caSmrg# define MacroIncludeFile <DragonFly.cf>
26311d341caSmrg# define MacroFile DragonFly.cf
26411d341caSmrg# undef __DragonFly__
26511d341caSmrg# undef __FreeBSD__
26611d341caSmrg# define DragonFlyArchitecture
26711d341caSmrg# define FreeBSDArchitecture
26811d341caSmrg# ifdef __i386__
26911d341caSmrg#  define i386BsdArchitecture
27011d341caSmrg#  define i386Architecture
27111d341caSmrg#  undef i386
27211d341caSmrg# endif
27311d341caSmrg# ifdef __sparc64__
27411d341caSmrg#  define Sparc64Architecture
27511d341caSmrg#  undef __sparc64__
27611d341caSmrg# endif
27711d341caSmrg# ifdef __ia64__
27811d341caSmrg#  define ia64Architecture
27911d341caSmrg#  undef __ia64__
28011d341caSmrg# endif
28111d341caSmrg# ifdef __amd64__
28211d341caSmrg#  define x86_64Architecture
28311d341caSmrg#  undef __amd64__
28411d341caSmrg#  undef __x86_64__
28511d341caSmrg# endif
28611d341caSmrg#endif /* __DragonFly__ */
28711d341caSmrg
28811d341caSmrg#ifdef __FreeBSD__
28911d341caSmrg# define MacroIncludeFile <FreeBSD.cf>
29011d341caSmrg# define MacroFile FreeBSD.cf
29111d341caSmrg# undef __FreeBSD__
29211d341caSmrg# define FreeBSDArchitecture
29311d341caSmrg# define KFreeBSDArchitecture
29411d341caSmrg# ifdef __i386__
29511d341caSmrg#  define i386BsdArchitecture
29611d341caSmrg#  define i386Architecture
29711d341caSmrg#  undef i386
29811d341caSmrg# endif
29911d341caSmrg# ifdef __alpha__
30011d341caSmrg#  define AlphaBsdArchitecture
30111d341caSmrg#  define AlphaArchitecture
30211d341caSmrg#  undef __alpha__
30311d341caSmrg# endif
30411d341caSmrg# ifdef __sparc64__
30511d341caSmrg#  define Sparc64Architecture
30611d341caSmrg#  undef __sparc64__
30711d341caSmrg# endif
30811d341caSmrg# ifdef __ia64__
30911d341caSmrg#  define ia64Architecture
31011d341caSmrg#  undef __ia64__
31111d341caSmrg# endif
31211d341caSmrg# ifdef __amd64__
31311d341caSmrg#  define AMD64Architecture
31411d341caSmrg#  undef __amd64__
31511d341caSmrg#  undef __x86_64__
31611d341caSmrg# endif
31711d341caSmrg# ifdef __powerpc__
31811d341caSmrg#  define PpcArchitecture
31911d341caSmrg#  undef __powerpc__
32011d341caSmrg# endif
32111d341caSmrg#endif /* __FreeBSD__ */
32211d341caSmrg
32311d341caSmrg/* Systems based on kernel of FreeBSD */
32411d341caSmrg#if defined(__FreeBSD_kernel__)
32511d341caSmrg#define KFreeBSDArchitecture
32611d341caSmrg#endif
32711d341caSmrg
32811d341caSmrg#ifdef AMOEBA
32911d341caSmrg /* Should be before the 'sun' entry because we may be cross-compiling */
33011d341caSmrg# define MacroIncludeFile <Amoeba.cf>
33111d341caSmrg# define MacroFile Amoeba.cf
33211d341caSmrg# if defined(i80386) || defined(__i80386__)
33311d341caSmrg#  undef i80386
33411d341caSmrg#  define i386Architecture
33511d341caSmrg# else
33611d341caSmrg#  if defined(mc68000) || defined(__mc68000__)
33711d341caSmrg#   undef mc68000
33811d341caSmrg#   define Sun3Architecture
33911d341caSmrg#   define SunArchitecture
34011d341caSmrg#  else
34111d341caSmrg#   if defined(sparc) || defined(__sparc__)
34211d341caSmrg#    undef sparc
34311d341caSmrg#    define SparcArchitecture
34411d341caSmrg#    define SunArchitecture
34511d341caSmrg#   endif
34611d341caSmrg#  endif
34711d341caSmrg#  undef sun
34811d341caSmrg# endif
34911d341caSmrg#endif /* AMOEBA */
35011d341caSmrg
35111d341caSmrg#ifdef sun
35211d341caSmrg# define MacroIncludeFile <sun.cf>
35311d341caSmrg# define MacroFile sun.cf
35411d341caSmrg# ifdef SVR4
35511d341caSmrg#  undef SVR4
35611d341caSmrg#  define SVR4Architecture
35711d341caSmrg# endif
35811d341caSmrg# ifdef sparc
35911d341caSmrg#  undef sparc
36011d341caSmrg#  define SparcArchitecture
36111d341caSmrg# endif
36211d341caSmrg# ifdef __sparcv9
36311d341caSmrg#  undef __sparcv9
36411d341caSmrg#  define Sparc64Architecture
36511d341caSmrg# endif
36611d341caSmrg# ifdef mc68000
36711d341caSmrg#  undef mc68000
36811d341caSmrg#  define Sun3Architecture
36911d341caSmrg# endif
37011d341caSmrg# if defined(__amd64) || defined(__x86_64)
37111d341caSmrg#  undef __amd64
37211d341caSmrg#  undef __x86_64
37311d341caSmrg#  undef amd64
37411d341caSmrg#  undef i386
37511d341caSmrg#  define AMD64Architecture
37611d341caSmrg# endif
37711d341caSmrg# ifdef i386
37811d341caSmrg#  undef i386
37911d341caSmrg#  define i386Architecture
38011d341caSmrg# endif
38111d341caSmrg# undef sun
38211d341caSmrg# define SunArchitecture
38311d341caSmrg#endif /* sun */
38411d341caSmrg
38511d341caSmrg#ifdef hpux
38611d341caSmrg# define MacroIncludeFile <hp.cf>
38711d341caSmrg# define MacroFile hp.cf
38811d341caSmrg# undef hpux
38911d341caSmrg# define HPArchitecture
39011d341caSmrg#endif /* hpux */
39111d341caSmrg
39211d341caSmrg#ifdef __SCO__
39311d341caSmrg# define MacroIncludeFile <sco5.cf>
39411d341caSmrg# define MacroFile sco5.cf
39511d341caSmrg# undef __SCO__
39611d341caSmrg# undef sco
39711d341caSmrg# undef USL
39811d341caSmrg# undef SYSV
39911d341caSmrg# undef i386
40011d341caSmrg# undef SCO
40111d341caSmrg# undef SVR4
40211d341caSmrg# define i386Architecture
40311d341caSmrg# define SCOArchitecture
40411d341caSmrg# define i386SVR3Architecture
40511d341caSmrg# define SVR3Architecture
40611d341caSmrg# define i386ScoArchitecture
40711d341caSmrg# define i386Sco325Architecture
40811d341caSmrg# undef i386
40911d341caSmrg# undef i486
41011d341caSmrg# undef i586
41111d341caSmrg# undef i686
41211d341caSmrg# undef k6
41311d341caSmrg# undef __i386__
41411d341caSmrg# undef __i486__
41511d341caSmrg# undef __i586__
41611d341caSmrg# undef __i686__
41711d341caSmrg# undef __k6__
41811d341caSmrg# undef __i386
41911d341caSmrg# undef __i486
42011d341caSmrg# undef __i586
42111d341caSmrg# undef __i686
42211d341caSmrg# undef __k6
42311d341caSmrg# undef pentium
42411d341caSmrg# undef __pentium
42511d341caSmrg# undef pentiumpro
42611d341caSmrg# undef __pentiumpro
42711d341caSmrg#endif /* __SCO__ - SCO Open Server 5 */
42811d341caSmrg
42911d341caSmrg#ifdef __UNIXWARE__
43011d341caSmrg# define MacroIncludeFile <usl.cf>
43111d341caSmrg# define MacroFile usl.cf
43211d341caSmrg# undef __UNIXWARE__
43311d341caSmrg# undef USL
43411d341caSmrg# undef SVR4
43511d341caSmrg# undef i386
43611d341caSmrg# undef SVR5
43711d341caSmrg# undef SYSV5
43811d341caSmrg# define SVR4Architecture
43911d341caSmrg# define i386Architecture
44011d341caSmrg# define USLArchitecture
44111d341caSmrg# define UnixWareArchitecture
44211d341caSmrg# undef i386
44311d341caSmrg# undef i486
44411d341caSmrg# undef i586
44511d341caSmrg# undef i686
44611d341caSmrg# undef k6
44711d341caSmrg# undef __i386__
44811d341caSmrg# undef __i486__
44911d341caSmrg# undef __i586__
45011d341caSmrg# undef __i686__
45111d341caSmrg# undef __k6__
45211d341caSmrg# undef __i386
45311d341caSmrg# undef __i486
45411d341caSmrg# undef __i586
45511d341caSmrg# undef __i686
45611d341caSmrg# undef __k6
45711d341caSmrg# undef pentium
45811d341caSmrg# undef __pentium
45911d341caSmrg# undef pentiumpro
46011d341caSmrg# undef __pentiumpro
46111d341caSmrg#endif /* __UNIXWARE__ */
46211d341caSmrg
46311d341caSmrg#ifdef NCR
46411d341caSmrg# define MacroIncludeFile <ncr.cf>
46511d341caSmrg# define MacroFile ncr.cf
46611d341caSmrg# undef NCR
46711d341caSmrg# undef SVR4
46811d341caSmrg# undef i386
46911d341caSmrg# define SVR4Architecture
47011d341caSmrg# define i386Architecture
47111d341caSmrg# define NCRArchitecture
47211d341caSmrg#endif /* NCR */
47311d341caSmrg
47411d341caSmrg#ifdef apollo
47511d341caSmrg# define MacroIncludeFile <apollo.cf>
47611d341caSmrg# define MacroFile apollo.cf
47711d341caSmrg# undef apollo
47811d341caSmrg# define ApolloArchitecture
47911d341caSmrg#endif /* apollo */
48011d341caSmrg
48111d341caSmrg#ifdef sony
48211d341caSmrg# define MacroIncludeFile <sony.cf>
48311d341caSmrg# define MacroFile sony.cf
48411d341caSmrg# undef sony
48511d341caSmrg# undef sony_news
48611d341caSmrg# define SonyArchitecture
48711d341caSmrg# ifdef mc68020
48811d341caSmrg#  undef mc68020
48911d341caSmrg#  undef mc68030
49011d341caSmrg#  define Mc68020Architecture
49111d341caSmrg# endif
49211d341caSmrg# ifdef mips
49311d341caSmrg#  undef mips
49411d341caSmrg#  define MipsArchitecture
49511d341caSmrg# endif
49611d341caSmrg# ifdef __svr4
49711d341caSmrg#  define SVR4Architecture
49811d341caSmrg# else
49911d341caSmrg#  if !defined(bsd43) || defined(SYSTYPE_SYSV) || defined(_SYSTYPE_SYSV)
50011d341caSmrg#   define SonySysvArchitecture
50111d341caSmrg#  else
50211d341caSmrg#   define SonyBsdArchitecture
50311d341caSmrg#  endif
50411d341caSmrg# endif
50511d341caSmrg#endif /* sony */
50611d341caSmrg
50711d341caSmrg#ifdef M4310
50811d341caSmrg# define MacroIncludeFile <pegasus.cf>
50911d341caSmrg# define MacroFile pegasus.cf
51011d341caSmrg# undef M4310
51111d341caSmrg# define PegasusArchitecture
51211d341caSmrg#endif /* M4310 */
51311d341caSmrg
51411d341caSmrg#ifdef M4330
51511d341caSmrg# define MacroIncludeFile <m4330.cf>
51611d341caSmrg# define MacroFile m4330.cf
51711d341caSmrg# undef  M4330
51811d341caSmrg# define M4330Architecture
51911d341caSmrg#endif /* M4330 */
52011d341caSmrg
52111d341caSmrg#ifdef macII
52211d341caSmrg# define MacroIncludeFile <macII.cf>
52311d341caSmrg# define MacroFile macII.cf
52411d341caSmrg# undef  macII
52511d341caSmrg# define MacIIArchitecture
52611d341caSmrg#endif /* macII */
52711d341caSmrg
52811d341caSmrg#ifdef _CRAY
52911d341caSmrg# define MacroIncludeFile <cray.cf>
53011d341caSmrg# define MacroFile cray.cf
53111d341caSmrg# undef cray
53211d341caSmrg# undef CRAY
53311d341caSmrg# undef CRAY1
53411d341caSmrg# undef CRAY2
53511d341caSmrg# undef YMP
53611d341caSmrg# define CrayArchitecture
53711d341caSmrg#endif /* _CRAY */
53811d341caSmrg
53911d341caSmrg#ifdef sgi
54011d341caSmrg# define MacroIncludeFile <sgi.cf>
54111d341caSmrg# define MacroFile sgi.cf
54211d341caSmrg# undef sgi
54311d341caSmrg# define SGIArchitecture
54411d341caSmrg# undef mips
54511d341caSmrg# undef __mips
54611d341caSmrg# define MipsArchitecture
54711d341caSmrg# ifdef _SVR4
54811d341caSmrg#  undef _SVR4
54911d341caSmrg#  define SVR4Architecture
55011d341caSmrg# endif
55111d341caSmrg# ifdef _SYSTYPE_SVR4
55211d341caSmrg#  undef _SYSTYPE_SVR4
55311d341caSmrg#  define SVR4Architecture
55411d341caSmrg# endif
55511d341caSmrg#endif /* sgi */
55611d341caSmrg
55711d341caSmrg#ifdef stellar
55811d341caSmrg# define MacroIncludeFile <stellar.cf>
55911d341caSmrg# define MacroFile stellar.cf
56011d341caSmrg# undef stellar
56111d341caSmrg# define StellarArchitecture
56211d341caSmrg#endif /* stellar */
56311d341caSmrg
56411d341caSmrg#if defined(ibm) || defined(_IBMR2) || defined(ibm032) || defined(aix)
56511d341caSmrg# define MacroIncludeFile <ibm.cf>
56611d341caSmrg# define MacroFile ibm.cf
56711d341caSmrg# ifdef ibm
56811d341caSmrg#  undef ibm
56911d341caSmrg# endif
57011d341caSmrg# define IBMArchitecture
57111d341caSmrg# ifdef i386
57211d341caSmrg#  undef i386
57311d341caSmrg#  define PS2Architecture
57411d341caSmrg# endif
57511d341caSmrg# ifdef ibm032
57611d341caSmrg#  undef ibm032
57711d341caSmrg#  define RtArchitecture
57811d341caSmrg# endif
57911d341caSmrg# ifdef aix
58011d341caSmrg#  undef aix
58111d341caSmrg#  define AIXArchitecture
58211d341caSmrg# endif
58311d341caSmrg# ifdef _IBMR2
58411d341caSmrg#  undef _IBMR2
58511d341caSmrg#  if (DefaultOSMajorVersion < 5)
58611d341caSmrg#   define RsArchitecture
58711d341caSmrg#  else
58811d341caSmrg#   define PpcArchitecture
58911d341caSmrg#  endif
59011d341caSmrg# endif
59111d341caSmrg#endif /* ibm */
59211d341caSmrg
59311d341caSmrg#ifdef luna
59411d341caSmrg# undef luna
59511d341caSmrg# define MacroIncludeFile <luna.cf>
59611d341caSmrg# define MacroFile luna.cf
59711d341caSmrg# define LunaArchitecture
59811d341caSmrg# ifdef mc68000
59911d341caSmrg#  undef mc68000
60011d341caSmrg#  define Mc68000Architecture
60111d341caSmrg# else
60211d341caSmrg#  undef mc88000
60311d341caSmrg#  define Mc88000Architecture
60411d341caSmrg# endif
60511d341caSmrg#endif /* luna */
60611d341caSmrg
60711d341caSmrg#ifdef Mips
60811d341caSmrg#  define MacroIncludeFile <Mips.cf>
60911d341caSmrg#  define MacroFile Mips.cf
61011d341caSmrg#  undef Mips
61111d341caSmrg#  undef mips
61211d341caSmrg#  if defined(SYSTYPE_BSD43) || defined(BSD) || defined(BSD43)
61311d341caSmrg#    define MipsBsdArchitecture
61411d341caSmrg#  else /* BSD */
61511d341caSmrg#    define MipsSysvArchitecture
61611d341caSmrg#  endif /* BSD */
61711d341caSmrg#endif /* Mips */
61811d341caSmrg
61911d341caSmrg#ifdef MOTOROLA
62011d341caSmrg# define MacroIncludeFile <moto.cf>
62111d341caSmrg# define MacroFile moto.cf
62211d341caSmrg# undef MOTOROLA	
62311d341caSmrg# ifdef SYSV
62411d341caSmrg#  define MotoR3Architecture
62511d341caSmrg# endif
62611d341caSmrg# ifdef SVR4
62711d341caSmrg#  define MotoR4Architecture
62811d341caSmrg# endif
62911d341caSmrg#endif /* MOTOROLA */
63011d341caSmrg
63111d341caSmrg#if defined(SVR4) && !defined(DGUX)
63211d341caSmrg# ifdef i386
63311d341caSmrg#  define i386Architecture
63411d341caSmrg#  undef i386
63511d341caSmrg# endif
63611d341caSmrg# ifdef PC98
63711d341caSmrg#  define PANIX98Architecture
63811d341caSmrg#  undef PC98
63911d341caSmrg# endif
64011d341caSmrg# define SVR4Architecture
64111d341caSmrg# define MacroIncludeFile <svr4.cf>
64211d341caSmrg# define MacroFile svr4.cf
64311d341caSmrg# undef SVR4
64411d341caSmrg#endif /* SVR4 */
64511d341caSmrg
64611d341caSmrg#ifdef SYSV
64711d341caSmrg# ifdef i386
64811d341caSmrg# undef i386
64911d341caSmrg#  ifdef ISC
65011d341caSmrg#   define i386Architecture	
65111d341caSmrg#   define i386SVR3Architecture	
65211d341caSmrg#   define MacroIncludeFile <isc.cf>
65311d341caSmrg#   define MacroFile isc.cf
65411d341caSmrg#   define i386IscArchitecture
65511d341caSmrg#   undef ISC
65611d341caSmrg#   ifdef ISC202
65711d341caSmrg#    define IscVersion 202
65811d341caSmrg#    undef ISC202
65911d341caSmrg#   else
66011d341caSmrg#    ifdef ISC30
66111d341caSmrg#     define IscVersion 300
66211d341caSmrg#     undef ISC30
66311d341caSmrg#    else
66411d341caSmrg#     ifdef ISC40
66511d341caSmrg#      define IscVersion 400
66611d341caSmrg#      undef ISC40
66711d341caSmrg#     else
66811d341caSmrg#      define IscVersion 221
66911d341caSmrg#     endif /* ISC40 */
67011d341caSmrg#    endif /* ISC30 */
67111d341caSmrg#   endif /* ISC202 */
67211d341caSmrg#  endif /* ISC */
67311d341caSmrg#  ifndef MacroFile
67411d341caSmrg#   define i386SVR3Architecture
67511d341caSmrg#   define MacroIncludeFile <x386.cf>
67611d341caSmrg#   define MacroFile x386.cf
67711d341caSmrg#  endif /* MacroFile */
67811d341caSmrg# endif /* i386 */
67911d341caSmrg#endif /* SYSV */
68011d341caSmrg
68111d341caSmrg/* SYSV386 is here for backward compatibility only */
68211d341caSmrg#ifdef SYSV386
68311d341caSmrg# undef i386
68411d341caSmrg# ifdef SVR4
68511d341caSmrg#  define i386Architecture
68611d341caSmrg#  define SVR4Architecture
68711d341caSmrg#  define i386SVR4Architecture
68811d341caSmrg#  define MacroIncludeFile <svr4.cf>
68911d341caSmrg#  define MacroFile svr4.cf
69011d341caSmrg#  undef SVR4
69111d341caSmrg# else /* ! SVR4 */
69211d341caSmrg#  ifdef ISC
69311d341caSmrg#   define i386Architecture	
69411d341caSmrg#   define i386SVR3Architecture	
69511d341caSmrg#   define MacroIncludeFile <isc.cf>
69611d341caSmrg#   define MacroFile isc.cf
69711d341caSmrg#   define i386IscArchitecture
69811d341caSmrg#   undef ISC
69911d341caSmrg#   ifdef ISC202
70011d341caSmrg#    define IscVersion 202
70111d341caSmrg#    undef ISC202
70211d341caSmrg#   else
70311d341caSmrg#    ifdef ISC30
70411d341caSmrg#     define IscVersion 300
70511d341caSmrg#     undef ISC30
70611d341caSmrg#    else
70711d341caSmrg#     ifdef ISC40
70811d341caSmrg#      define IscVersion 400
70911d341caSmrg#      undef ISC40
71011d341caSmrg#     else
71111d341caSmrg#      define IscVersion 221
71211d341caSmrg#     endif /* ISC40 */
71311d341caSmrg#    endif /* ISC30 */
71411d341caSmrg#   endif /* ISC202 */
71511d341caSmrg#  endif /* ISC */
71611d341caSmrg#  ifndef MacroFile
71711d341caSmrg#   define i386SVR3Architecture
71811d341caSmrg#   define MacroIncludeFile <x386.cf>
71911d341caSmrg#   define MacroFile x386.cf
72011d341caSmrg#  endif /* MacroFile */
72111d341caSmrg# endif /* ! SVR4 */
72211d341caSmrg#endif /* SYSV386 */
72311d341caSmrg
72411d341caSmrg#ifdef DGUX
72511d341caSmrg# define i386Architecture
72611d341caSmrg# define SVR4Architecture
72711d341caSmrg# define MacroIncludeFile <DGUX.cf>
72811d341caSmrg# define MacroFile DGUX.cf
72911d341caSmrg# undef DGUX
73011d341caSmrg# define DguxArchitecture
73111d341caSmrg#endif /* DGUX */
73211d341caSmrg
73311d341caSmrg#ifdef __convex__
73411d341caSmrg# define MacroIncludeFile <convex.cf>
73511d341caSmrg# define MacroFile convex.cf
73611d341caSmrg# ifdef convex
73711d341caSmrg#  undef convex
73811d341caSmrg# endif
73911d341caSmrg# define ConvexArchitecture
74011d341caSmrg#endif /* _convex_ */
74111d341caSmrg
74211d341caSmrg#ifdef __osf__
74311d341caSmrg# define MacroIncludeFile <osf1.cf>
74411d341caSmrg# define MacroFile osf1.cf
74511d341caSmrg# define OSF1Architecture
74611d341caSmrg# undef __osf__
74711d341caSmrg# ifdef __mips__
74811d341caSmrg#  undef __mips__
74911d341caSmrg#  define MipsArchitecture
75011d341caSmrg#  define MipselArchitecture
75111d341caSmrg# endif
75211d341caSmrg# ifdef __alpha
75311d341caSmrg#  undef __alpha
75411d341caSmrg#  define AlphaArchitecture
75511d341caSmrg# endif
75611d341caSmrg#endif /* __osf__ */
75711d341caSmrg
75811d341caSmrg#ifdef Oki
75911d341caSmrg# define MacroIncludeFile <Oki.cf>
76011d341caSmrg# define MacroFile Oki.cf
76111d341caSmrg# undef Oki
76211d341caSmrg# define i860SVR4Architecture
76311d341caSmrg# define SVR4Architecture
76411d341caSmrg# undef SVR4
76511d341caSmrg#endif /* Oki */
76611d341caSmrg
76711d341caSmrg#if defined(WIN32) && !defined(__GNUC__)
76811d341caSmrg# define MacroIncludeFile <Win32.cf>
76911d341caSmrg# define MacroFile Win32.cf
77011d341caSmrg# define Win32Architecture
77111d341caSmrg#endif /* WIN32 */
77211d341caSmrg
77311d341caSmrg#if defined(WIN32) && defined(__GNUC__)
77411d341caSmrg#define MacroIncludeFile <mingw.cf>
77511d341caSmrg#define MacroFile mingw.cf
77611d341caSmrg#define Win32Architecture
77711d341caSmrg#define mingwArchitecture
77811d341caSmrg#define i386Architecture
77911d341caSmrg#undef i386
78011d341caSmrg#undef i486
78111d341caSmrg#undef i586
78211d341caSmrg#undef i686
78311d341caSmrg#undef __i386__
78411d341caSmrg#undef _X86_
78511d341caSmrg#undef __MINGW32__
78611d341caSmrg#endif /* CYGWIN */
78711d341caSmrg
78811d341caSmrg#if defined(linux) || defined(__GLIBC__)
78911d341caSmrg# define MacroIncludeFile <linux.cf>
79011d341caSmrg# define MacroFile linux.cf
79111d341caSmrg# undef linux
79211d341caSmrg# ifdef __linux__
79311d341caSmrg#  define LinuxArchitecture
79411d341caSmrg# endif
79511d341caSmrg# ifdef i386
79611d341caSmrg#  ifndef i386Architecture
79711d341caSmrg#   define i386Architecture
79811d341caSmrg#  endif
79911d341caSmrg#  undef i386
80011d341caSmrgXCOMM Keep cpp from replacing path elements containing i486/i586/i686
80111d341caSmrg#  ifdef i486
80211d341caSmrg#  ifndef i386Architecture
80311d341caSmrg#   define i386Architecture
80411d341caSmrg#  endif
80511d341caSmrg#   undef i486
80611d341caSmrg#  endif
80711d341caSmrg#  ifdef i586
80811d341caSmrg#  ifndef i386Architecture
80911d341caSmrg#   define i386Architecture
81011d341caSmrg#  endif
81111d341caSmrg#   undef i586
81211d341caSmrg#  endif
81311d341caSmrg#  ifdef i686
81411d341caSmrg#  ifndef i386Architecture
81511d341caSmrg#   define i386Architecture
81611d341caSmrg#  endif
81711d341caSmrg#   undef i686
81811d341caSmrg#  endif
81911d341caSmrg#  ifdef k6
82011d341caSmrg#  ifndef i386Architecture
82111d341caSmrg#   define i386Architecture
82211d341caSmrg#  endif
82311d341caSmrg#   undef k6
82411d341caSmrg#  endif
82511d341caSmrg# endif /* k6 */
82611d341caSmrg# ifdef __i386__
82711d341caSmrg#  ifndef i386Architecture
82811d341caSmrg#   define i386Architecture
82911d341caSmrg#  endif
83011d341caSmrg#  undef __i386__
83111d341caSmrg# endif /* __i386__ */
83211d341caSmrg# ifdef __i486__
83311d341caSmrg#  ifndef i386Architecture
83411d341caSmrg#   define i386Architecture
83511d341caSmrg#  endif
83611d341caSmrg#  undef __i486__
83711d341caSmrg# endif /* __i486__ */
83811d341caSmrg# ifdef __i586__
83911d341caSmrg#  ifndef i386Architecture
84011d341caSmrg#   define i386Architecture
84111d341caSmrg#  endif
84211d341caSmrg#  undef __i586__
84311d341caSmrg# endif /* __i586__ */
84411d341caSmrg# ifdef __i686__
84511d341caSmrg#  ifndef i386Architecture
84611d341caSmrg#   define i386Architecture
84711d341caSmrg#  endif
84811d341caSmrg#  undef __i686__
84911d341caSmrg# endif /* __i686__ */
85011d341caSmrg# ifdef __k6__
85111d341caSmrg#  ifndef i386Architecture
85211d341caSmrg#   define i386Architecture
85311d341caSmrg#  endif
85411d341caSmrg#  undef __k6__
85511d341caSmrg# endif /* __k6__ */
85611d341caSmrg# ifdef __i386
85711d341caSmrg#  ifndef i386Architecture
85811d341caSmrg#   define i386Architecture
85911d341caSmrg#  endif
86011d341caSmrg#  undef __i386
86111d341caSmrg# endif /* __i386 */
86211d341caSmrg# ifdef __i486
86311d341caSmrg#  ifndef i386Architecture
86411d341caSmrg#   define i386Architecture
86511d341caSmrg#  endif
86611d341caSmrg#  undef __i486
86711d341caSmrg# endif /* __i486 */
86811d341caSmrg# ifdef __i586
86911d341caSmrg#  ifndef i386Architecture
87011d341caSmrg#   define i386Architecture
87111d341caSmrg#  endif
87211d341caSmrg#  undef __i586
87311d341caSmrg# endif /* __i586 */
87411d341caSmrg# ifdef __i686
87511d341caSmrg#  ifndef i386Architecture
87611d341caSmrg#   define i386Architecture
87711d341caSmrg#  endif
87811d341caSmrg#  undef __i686
87911d341caSmrg# endif /* __i686 */
88011d341caSmrg# ifdef __k6
88111d341caSmrg#  ifndef i386Architecture
88211d341caSmrg#   define i386Architecture
88311d341caSmrg#  endif
88411d341caSmrg#  undef __k6
88511d341caSmrg# endif /* __k6 */
88611d341caSmrg/* Keep this order! s390x has also __s390__ defined */
88711d341caSmrg# if defined(__s390x__)
88811d341caSmrg#  define s390xArchitecture
88911d341caSmrg#  undef __s390x__
89011d341caSmrg#  undef __s390__
89111d341caSmrg# endif
89211d341caSmrg# ifdef __s390__
89311d341caSmrg#   define s390Architecture
89411d341caSmrg#  undef __s390__
89511d341caSmrg# endif /* s390 */
89611d341caSmrg# ifdef __alpha
89711d341caSmrg#  define AlphaArchitecture
89811d341caSmrg#  undef __alpha
89911d341caSmrg# endif /* __alpha */
90011d341caSmrg# ifdef __alpha__
90111d341caSmrg#  ifndef AlphaArchitecture
90211d341caSmrg#   define AlphaArchitecture
90311d341caSmrg#  endif
90411d341caSmrg#  undef __alpha__
90511d341caSmrg# endif /* __alpha__ */
90611d341caSmrg# ifdef __arm__
90711d341caSmrg#  define Arm32Architecture
90811d341caSmrg#  undef arm
90911d341caSmrg#  undef __arm
91011d341caSmrg#  undef __arm__
91111d341caSmrg#  if defined(__ARMEB__)
91211d341caSmrg#   define Arm32ebArchitecture
91311d341caSmrg#  endif
91411d341caSmrg#  undef __ARMEB__
91511d341caSmrg# endif
91611d341caSmrg# ifdef mc68000
91711d341caSmrg#  define Mc68020Architecture
91811d341caSmrg#  undef mc68000
91911d341caSmrg# endif /* mc68000 */
92011d341caSmrg# if defined (powerpc) && !defined(__powerpc64__) && !defined (powerpc64)
92111d341caSmrg#  define PpcArchitecture
92211d341caSmrg#  undef powerpc
92311d341caSmrg# endif
92411d341caSmrg# if defined (__powerpc__) && !defined(__powerpc64__) && !defined (powerpc64)
92511d341caSmrg#  ifndef PpcArchitecture
92611d341caSmrg#   define PpcArchitecture
92711d341caSmrg#  endif
92811d341caSmrg#  undef __powerpc__
92911d341caSmrg# endif
93011d341caSmrg# ifdef __powerpc64__
93111d341caSmrg#  ifndef Ppc64Architecture
93211d341caSmrg#   define Ppc64Architecture
93311d341caSmrg#  endif
93411d341caSmrg#  undef __powerpc64__
93511d341caSmrg# endif
93611d341caSmrg# ifdef sparc
93711d341caSmrg#  define SparcArchitecture
93811d341caSmrg#  undef sparc
93911d341caSmrg# endif
94011d341caSmrg# ifdef __sparc__
94111d341caSmrg#  ifndef SparcArchitecture
94211d341caSmrg#   define SparcArchitecture
94311d341caSmrg#  endif
94411d341caSmrg#  undef __sparc__
94511d341caSmrg# endif
94611d341caSmrg# ifdef ia64 
94711d341caSmrg#  define ia64Architecture
94811d341caSmrg#  undef ia64 
94911d341caSmrg# endif
95011d341caSmrg# ifdef __ia64__
95111d341caSmrg#  ifndef ia64Architecture
95211d341caSmrg#   define ia64Architecture
95311d341caSmrg#  endif
95411d341caSmrg#  undef __ia64__
95511d341caSmrg# endif
95611d341caSmrg# if defined(mips) || defined(__mips__)
95711d341caSmrg#  define MipsArchitecture
95811d341caSmrg#  undef mips
95911d341caSmrg#  undef __mips__
96011d341caSmrg#  if defined(MIPSEL) || defined(_MIPSEL)
96111d341caSmrg#   define MipselArchitecture
96211d341caSmrg#  endif
96311d341caSmrg#  undef MIPSEL
96411d341caSmrg#  undef _MIPSEL
96511d341caSmrg# endif
96611d341caSmrg# ifdef __hppa__
96711d341caSmrg#  ifndef HPArchitecture
96811d341caSmrg#   define HPArchitecture
96911d341caSmrg#  endif
97011d341caSmrg#  undef __hppa__
97111d341caSmrg# endif /* __hppa__ */
97211d341caSmrg# ifdef __sh__
97311d341caSmrg#  ifndef SuperHArchitecture
97411d341caSmrg#   define SuperHArchitecture
97511d341caSmrg#  endif
97611d341caSmrg#  ifdef __BIG_ENDIAN__
97711d341caSmrg#   ifndef SuperHebArchitecture
97811d341caSmrg#    define SuperHebArchitecture
97911d341caSmrg#   endif
98011d341caSmrg#  endif
98111d341caSmrg#  undef __sh__
98211d341caSmrg# endif /* __sh__ */
98311d341caSmrg# if defined(__SH3__) || defined(__sh3__)
98411d341caSmrg#  ifndef SuperH3Architecture
98511d341caSmrg#   define SuperH3Architecture
98611d341caSmrg#  endif
98711d341caSmrg#  undef __SH3__
98811d341caSmrg#  undef __sh3__
98911d341caSmrg# endif /* __SH3__ or __sh3__ */
99011d341caSmrg# ifdef __SH4__
99111d341caSmrg#  ifdef __SH4_NOFPU__
99211d341caSmrg#   ifndef SuperH4NOFPUArchitecture
99311d341caSmrg#    define SuperH4NOFPUArchitecture
99411d341caSmrg#   endif
99511d341caSmrg#   undef __SH4_NOFPU__
99611d341caSmrg#  else
99711d341caSmrg#   ifndef SuperH4Architecture
99811d341caSmrg#    define SuperH4Architecture
99911d341caSmrg#   endif
100011d341caSmrg#  endif
100111d341caSmrg#  undef __SH4__
100211d341caSmrg# endif /* __SH4__ */
100311d341caSmrg/* for compatibility with 3.3.x */
100411d341caSmrg# ifdef PpcArchitecture
100511d341caSmrg#  define PowerPCArchitecture
100611d341caSmrg# endif
100711d341caSmrg# if defined(__s390x__)
100811d341caSmrg#  define s390xArchitecture
100911d341caSmrg#  undef __s390x__
101011d341caSmrg# endif
101111d341caSmrg# if defined(__amd64__) || defined (__x86_64__)
101211d341caSmrg#  undef __amd64__
101311d341caSmrg#  undef __x86_64__
101411d341caSmrg#  define AMD64Architecture
101511d341caSmrg# endif
101611d341caSmrg# if defined(amd64__) || defined (x86_64__)
101711d341caSmrg#  undef amd64__
101811d341caSmrg#  undef x86_64__
101911d341caSmrg#  ifndef AMD64Architecture
102011d341caSmrg#   define AMD64Architecture
102111d341caSmrg#  endif
102211d341caSmrg# endif
102311d341caSmrg#endif /* linux || __GLIBC__ */
102411d341caSmrg
102511d341caSmrg#if (defined(__Lynx__) || defined(Lynx)) && (defined(i386) || defined(__i386__) || defined(__x86__) || defined(__powerpc__) || defined(__sparc__) || defined(sparc))
102611d341caSmrg# define MacroIncludeFile <lynx.cf>
102711d341caSmrg# define MacroFile lynx.cf
102811d341caSmrg# define LynxOSArchitecture
102911d341caSmrg# undef __Lynx__
103011d341caSmrg# undef Lynx
103111d341caSmrg# undef lynx
103211d341caSmrg# if defined(i386) || defined(__i386__) || defined(__x86__)
103311d341caSmrg#  define i386Architecture
103411d341caSmrg#  undef i386
103511d341caSmrg#  undef __i386__
103611d341caSmrg#  undef __x86__
103711d341caSmrg# endif
103811d341caSmrg# ifdef __powerpc__
103911d341caSmrg#  define PpcArchitecture
104011d341caSmrg#  undef __powerpc__
104111d341caSmrg# endif
104211d341caSmrg# if defined(sparc) || defined(__sparc__)
104311d341caSmrg#  define SparcArchitecture
104411d341caSmrg#  undef sparc
104511d341caSmrg#  undef __sparc__
104611d341caSmrg# endif
104711d341caSmrg/* for compatibility with 3.3.x */
104811d341caSmrg# ifdef PpcArchitecture
104911d341caSmrg#  define PowerPCArchitecture
105011d341caSmrg# endif
105111d341caSmrg#endif /* LynxOS AT/PPC/microSPARC */
105211d341caSmrg
105311d341caSmrg#ifdef __uxp__
105411d341caSmrg# define MacroIncludeFile <fujitsu.cf>
105511d341caSmrg# define MacroFile fujitsu.cf
105611d341caSmrg# define FujitsuArchitecture
105711d341caSmrg# undef __uxp__
105811d341caSmrg# define UXPArchitecture
105911d341caSmrg# define SVR4Architecture
106011d341caSmrg# ifdef sparc
106111d341caSmrg#  undef sparc
106211d341caSmrg#  define SparcArchitecture
106311d341caSmrg# endif
106411d341caSmrg#endif /* __uxp__ */
106511d341caSmrg
106611d341caSmrg#ifdef __sxg__
106711d341caSmrg# define MacroIncludeFile <fujitsu.cf>
106811d341caSmrg# define MacroFile fujitsu.cf
106911d341caSmrg# define FujitsuArchitecture
107011d341caSmrg# undef __sxg__
107111d341caSmrg# define mc68000Architecture
107211d341caSmrg#endif /* __sxg__ */
107311d341caSmrg
107411d341caSmrg#ifdef _SEQUENT_
107511d341caSmrg/* undefine assignments resulting from -DSVR4 */
107611d341caSmrg# undef MacroIncludeFile
107711d341caSmrg# define MacroIncludeFile <sequent.cf>
107811d341caSmrg# undef MacroFile
107911d341caSmrg# define MacroFile sequent.cf
108011d341caSmrg# undef _SEQUENT_
108111d341caSmrg# define DynixPtxArchitecture
108211d341caSmrg# define SequentArchitecture
108311d341caSmrg#endif
108411d341caSmrg
108511d341caSmrg#if defined(_nec_ews_svr4) || defined(nec_ews_svr4) || defined(nec_ews_svr2) || defined(SX) || defined(_nec_up) || defined(_nec_ft) || defined(PC_UX)
108611d341caSmrg# ifdef nec
108711d341caSmrg#  undef nec
108811d341caSmrg# endif
108911d341caSmrg# define MacroIncludeFile <nec.cf>
109011d341caSmrg# define MacroFile nec.cf
109111d341caSmrg# define NecArchitecture
109211d341caSmrg#endif
109311d341caSmrg
109411d341caSmrg#ifdef minix 
109511d341caSmrg#define MacroIncludeFile <minix.cf>
109611d341caSmrg#define MacroFile minix.cf
109711d341caSmrg#undef minix
109811d341caSmrg#define MinixArchitecture
109911d341caSmrg#define i386Architecture
110011d341caSmrg#endif /* minix */
110111d341caSmrg
110211d341caSmrg/* Systems with GNU libc and userland */
110311d341caSmrg#if defined(__GNU__)
110411d341caSmrg#define GNUArchitecture
110511d341caSmrg#define MacroIncludeFile <gnu.cf>
110611d341caSmrg#define MacroFile gnu.cf
110711d341caSmrg#ifdef __i386__
110811d341caSmrg#define i386Architecture
110911d341caSmrg#endif
111011d341caSmrg#endif
111111d341caSmrg
111211d341caSmrg#ifdef MACH
111311d341caSmrg#ifdef __GNU__
111411d341caSmrg/* Mach-based GNU system */
111511d341caSmrg#define GNUMachArchitecture
111611d341caSmrg#else
111711d341caSmrg#define MacroIncludeFile <mach.cf>
111811d341caSmrg#define MacroFile mach.cf
111911d341caSmrg#endif
112011d341caSmrg#undef MACH
112111d341caSmrg#ifdef	i386
112211d341caSmrg#define i386MachArchitecture
112311d341caSmrg#define i386Architecture
112411d341caSmrg#endif	/* i386 */
112511d341caSmrg#undef i386
112611d341caSmrg#endif /* MACH */
112711d341caSmrg
112811d341caSmrg/* On NetBSD, `unix' is not defined, and cpp emits a warning every time
112911d341caSmrg * it sees a test using the `unix' symbol */
113011d341caSmrg#if !defined(NetBSDArchitecture) || (defined(NetBSDArchitecture) && DefaultOSMajorVersion == 1 && DefaultOSMinorVersion <= 3)
113111d341caSmrg#ifdef unix
113211d341caSmrg#undef unix
113311d341caSmrg#endif
113411d341caSmrg#endif
113511d341caSmrg
113611d341caSmrg#ifdef emxos2
113711d341caSmrg#define MacroIncludeFile <os2.cf>
113811d341caSmrg#define MacroFile os2.cf
113911d341caSmrg#define OS2Architecture
114011d341caSmrg#define i386Architecture
114111d341caSmrg#endif /* emxos2 */
114211d341caSmrg
114311d341caSmrg#if defined(__QNX__) && !defined(__QNXNTO__)
114411d341caSmrg#define MacroIncludeFile <QNX4.cf>
114511d341caSmrg#define MacroFile QNX4.cf
114611d341caSmrg#define QNX4Architecture
114711d341caSmrg#define i386Architecture
114811d341caSmrg#endif /* QNX4 */
114911d341caSmrg
115011d341caSmrg#ifdef __QNXNTO__
115111d341caSmrg#define MacroIncludeFile <nto.cf>
115211d341caSmrg#define MacroFile nto.cf
115311d341caSmrg#define NTOArchitecture
115411d341caSmrg# ifdef PPC
115511d341caSmrg#  define PPCArchitecture
115611d341caSmrg#  undef PPC
115711d341caSmrg# endif
115811d341caSmrg# ifdef MIPS
115911d341caSmrg#  define mipsArchitecture
116011d341caSmrg#  undef MIPS
116111d341caSmrg# endif
116211d341caSmrg# ifdef i386
116311d341caSmrg#  define i386Architecture
116411d341caSmrg#  undef i386
116511d341caSmrg# endif /* i386 */
116611d341caSmrg# ifdef __i386__
116711d341caSmrg#  ifndef i386Architecture
116811d341caSmrg#   define i386Architecture
116911d341caSmrg#  endif
117011d341caSmrg#  undef __i386__
117111d341caSmrg# endif /* __i386__ */
117211d341caSmrg#endif /* QNX/Neutrino */
117311d341caSmrg
117411d341caSmrg#ifdef SparcArchitecture
117511d341caSmrg# if defined(__sparc_v9) || defined(__arch64__)
117611d341caSmrg#  define Sparc64Architecture
117711d341caSmrg# endif
117811d341caSmrg#endif
117911d341caSmrg
118011d341caSmrg#ifndef MacroIncludeFile
118111d341caSmrgXCOMM WARNING:  Imake.cf not configured; guessing at definitions!!!
118211d341caSmrgXCOMM This might mean that BOOTSTRAPCFLAGS was not set when building imake.
118311d341caSmrg#define MacroIncludeFile <generic.cf>
118411d341caSmrg#define MacroFile generic.cf
118511d341caSmrg#endif
1186