Patch from Pascal Stumpf <Pascal.Stumpf@cubes.de> Most is just copied from the existing imake installation in /usr/X11R6. Additionally: * Allow overriding CDESharedRev, X11ProjectRoot and ProjectRoot * Add a new define to be able to override MINCLUDESRC too (this allows me to build CDE without symlinking any include directories)
626 lines
13 KiB
CFEngine3
626 lines
13 KiB
CFEngine3
XCOMM $TOG: Imake.cf /main/30 1998/04/28 13:55:25 barstow $
|
|
/*
|
|
* To add support for another platform:
|
|
*
|
|
* 1. Identify a machine-specific cpp symbol. If your preprocessor
|
|
* does not have any built in, you will need to add the symbol to the
|
|
* cpp_argv table in config/imake/imakemdep.h and rebuild imake with
|
|
* the BOOTSTRAPCFLAGS variable set (see the macII for an example).
|
|
*
|
|
* 2. Add all machine-specific cpp symbols (either defined by you or by
|
|
* the preprocessor or compiler) to the predefs table in
|
|
* config/imake/imakemdep.h.
|
|
*
|
|
* 3. But a new #ifdef block below that defines MacroIncludeFile and
|
|
* MacroFile for your new platform and then #undefs the machine-
|
|
* specific preprocessor symbols (to avoid problems with file names).
|
|
*
|
|
* 4. Create a .cf file with the name given by MacroFile.
|
|
*/
|
|
|
|
#ifdef ultrix
|
|
# define MacroIncludeFile <ultrix.cf>
|
|
# define MacroFile ultrix.cf
|
|
# ifdef vax
|
|
# undef vax
|
|
# define VaxArchitecture
|
|
# endif
|
|
# ifdef mips
|
|
# undef mips
|
|
# define MipsArchitecture
|
|
# endif
|
|
# undef ultrix
|
|
# define UltrixArchitecture
|
|
#endif /* ultrix */
|
|
|
|
#if defined(vax) && !defined(UltrixArchitecture)
|
|
# define MacroIncludeFile <bsd.cf>
|
|
# define MacroFile bsd.cf
|
|
# undef vax
|
|
# define BSDArchitecture
|
|
# define VaxArchitecture
|
|
#endif /* vax */
|
|
|
|
#ifdef bsdi
|
|
# define MacroIncludeFile <bsdi.cf>
|
|
# define MacroFile bsdi.cf
|
|
# undef bsdi
|
|
# define BSD386Architecture
|
|
# define i386BsdArchitecture
|
|
# define i386Architecture
|
|
# undef i386
|
|
#endif /* bsdi */
|
|
|
|
#ifdef __OpenBSD__
|
|
# undef __OpenBSD__
|
|
# undef __NetBSD__
|
|
# define OpenBSDArchitecture
|
|
# define KOpenBSDArchitecture
|
|
# define MacroIncludeFile <OpenBSD.cf>
|
|
# define MacroFile OpenBSD.cf
|
|
# ifdef __i386__
|
|
# define i386BsdArchitecture
|
|
# define i386Architecture
|
|
# undef i386
|
|
# endif
|
|
# if defined(__sparc__) || defined(sparc)
|
|
# if !defined(__arch64__)
|
|
# define SparcArchitecture
|
|
# else
|
|
# define Sparc64Architecture
|
|
# endif
|
|
# undef sparc
|
|
# undef sparc64
|
|
# endif
|
|
# if defined(__mips__) || defined(mips)
|
|
# define MipsArchitecture
|
|
# ifdef __LP64__
|
|
# define Mips64Architecture
|
|
# endif
|
|
# ifdef arc
|
|
# define ArcArchitecture
|
|
# undef arc
|
|
# endif
|
|
# ifdef sgi
|
|
# define SGIArchitecture
|
|
# undef sgi
|
|
# endif
|
|
# ifdef pmax
|
|
# define PmaxArchitecture
|
|
# undef pmax
|
|
# endif
|
|
# undef mips
|
|
# undef __mips__
|
|
# endif
|
|
# if defined(__alpha__) || defined(alpha)
|
|
# define AlphaArchitecture
|
|
# undef __alpha__
|
|
# undef alpha
|
|
# endif
|
|
# if defined(__amd64__) || defined(__x86_64__)
|
|
# define AMD64Architecture
|
|
# undef __amd64__
|
|
# undef __x86_64__
|
|
# undef amd64
|
|
# endif
|
|
# if defined(__arm__)
|
|
# define Arm32Architecture
|
|
# undef __arm__
|
|
# if defined(zaurus)
|
|
# undef zaurus
|
|
# define ZaurusArchitecture
|
|
# endif
|
|
# endif
|
|
# if defined(__mc68020__) || defined(mc68020)
|
|
# define Mc68020Architecture
|
|
# if defined(amiga)
|
|
# define AmigaArchitecture
|
|
# undef amiga
|
|
# endif
|
|
# if defined(hp300)
|
|
# define Hp300Architecture
|
|
# undef hp300
|
|
# endif
|
|
# if defined(mac68k)
|
|
# define Mac68kArchitecture
|
|
# undef mac68k
|
|
# endif
|
|
# if defined(mvme68k)
|
|
# define Mvme68kArchitecture
|
|
# undef mvme68k
|
|
# endif
|
|
# if defined(sun3)
|
|
# define Sun3Architecture
|
|
# undef sun3
|
|
# endif
|
|
# undef mc68000
|
|
# endif
|
|
# if defined(__m88k__) || defined(m88k)
|
|
# define Mc88000Architecture
|
|
# undef m88k
|
|
# endif
|
|
# ifdef __powerpc__
|
|
# define PpcArchitecture
|
|
# undef __powerpc__
|
|
# undef __macppc__
|
|
# undef macppc
|
|
# endif
|
|
# ifdef __sh__
|
|
# undef __sh__
|
|
# define SuperHArchitecture
|
|
# endif
|
|
# ifdef __vax__
|
|
# undef vax
|
|
# undef __vax__
|
|
# define VaxArchitecture
|
|
# endif
|
|
# ifdef __hppa__
|
|
# ifndef HPArchitecture
|
|
# define HPArchitecture
|
|
# endif
|
|
# undef __hppa__
|
|
# endif /* __hppa__ */
|
|
#endif /* OpenBSD */
|
|
|
|
/* Systems based on kernel of OpenBSD */
|
|
#if defined(__OpenBSD_kernel__)
|
|
#define KOpenBSDArchitecture
|
|
#endif
|
|
|
|
#ifdef __NetBSD__
|
|
# define MacroIncludeFile <NetBSD.cf>
|
|
# define MacroFile NetBSD.cf
|
|
# undef __NetBSD__
|
|
# define NetBSDArchitecture
|
|
# ifdef __i386__
|
|
# define i386BsdArchitecture
|
|
# define i386Architecture
|
|
# undef i386
|
|
# endif
|
|
# if defined(__sparc__) || defined(sparc)
|
|
# define SparcArchitecture
|
|
# undef sparc
|
|
# endif
|
|
#endif /* NetBSD */
|
|
|
|
#ifdef __FreeBSD__
|
|
# define MacroIncludeFile <FreeBSD.cf>
|
|
# define MacroFile FreeBSD.cf
|
|
# undef __FreeBSD__
|
|
# define FreeBSDArchitecture
|
|
# ifdef __i386__
|
|
# define i386BsdArchitecture
|
|
# define i386Architecture
|
|
# undef i386
|
|
# endif
|
|
#endif /* __FreeBSD__ */
|
|
|
|
#ifdef AMOEBA
|
|
/* Should be before the 'sun' entry because we may be cross-compiling */
|
|
# define MacroIncludeFile <Amoeba.cf>
|
|
# define MacroFile Amoeba.cf
|
|
# if defined(i80386) || defined(__i80386__)
|
|
# undef i80386
|
|
# define i386Architecture
|
|
# else
|
|
# if defined(mc68000) || defined(__mc68000__)
|
|
# undef mc68000
|
|
# define Sun3Architecture
|
|
# define SunArchitecture
|
|
# else
|
|
# if defined(sparc) || defined(__sparc__)
|
|
# undef sparc
|
|
# define SparcArchitecture
|
|
# define SunArchitecture
|
|
# endif
|
|
# endif
|
|
# undef sun
|
|
# endif
|
|
#endif /* AMOEBA */
|
|
|
|
#ifdef sun
|
|
# define MacroIncludeFile <sun.cf>
|
|
# define MacroFile sun.cf
|
|
# ifdef SVR4
|
|
# undef SVR4
|
|
# define SVR4Architecture
|
|
# endif
|
|
# ifdef sparc
|
|
# undef sparc
|
|
# define SparcArchitecture
|
|
# endif
|
|
# ifdef __sparcv9
|
|
# undef __sparcv9
|
|
# define SparcV9Architecture
|
|
# endif
|
|
# ifdef mc68000
|
|
# undef mc68000
|
|
# define Sun3Architecture
|
|
# endif
|
|
# ifdef i386
|
|
# undef i386
|
|
# define i386Architecture
|
|
# endif
|
|
# if defined(__amd64__) || defined (__x86_64__)
|
|
# undef __amd64__
|
|
# undef __x86_64__
|
|
# define AMD64Architecture
|
|
# endif
|
|
# undef sun
|
|
# define SunArchitecture
|
|
#endif /* sun */
|
|
|
|
#ifdef hpux
|
|
# define MacroIncludeFile <hp.cf>
|
|
# define MacroFile hp.cf
|
|
# undef hpux
|
|
# define HPArchitecture
|
|
#endif /* hpux */
|
|
|
|
#ifdef sco
|
|
# define MacroIncludeFile <sco.cf>
|
|
# define MacroFile sco.cf
|
|
# undef sco
|
|
# undef USL
|
|
# undef SYSV
|
|
# undef i386
|
|
/* # define i386Architecture */
|
|
# define SCOArchitecture
|
|
#endif /* sco */
|
|
|
|
#ifdef USL
|
|
# define MacroIncludeFile <usl.cf>
|
|
# define MacroFile usl.cf
|
|
# undef USL
|
|
# undef SVR4
|
|
# undef i386
|
|
# define SVR4Architecture
|
|
# define i386Architecture
|
|
# define USLArchitecture
|
|
#endif /* USL */
|
|
|
|
#ifdef NCR
|
|
# define MacroIncludeFile <ncr.cf>
|
|
# define MacroFile ncr.cf
|
|
# undef NCR
|
|
# undef SVR4
|
|
# undef i386
|
|
# define SVR4Architecture
|
|
# define i386Architecture
|
|
# define NCRArchitecture
|
|
#endif /* NCR */
|
|
|
|
#ifdef apollo
|
|
# define MacroIncludeFile <apollo.cf>
|
|
# define MacroFile apollo.cf
|
|
# undef apollo
|
|
# define ApolloArchitecture
|
|
#endif /* apollo */
|
|
|
|
#ifdef sony
|
|
# define MacroIncludeFile <sony.cf>
|
|
# define MacroFile sony.cf
|
|
# undef sony
|
|
# undef sony_news
|
|
# define SonyArchitecture
|
|
# ifdef mc68020
|
|
# undef mc68020
|
|
# undef mc68030
|
|
# define Mc68020Architecture
|
|
# endif
|
|
# ifdef mips
|
|
# undef mips
|
|
# define MipsArchitecture
|
|
# endif
|
|
# ifdef __svr4
|
|
# define SVR4Architecture
|
|
# else
|
|
# if !defined(bsd43) || defined(SYSTYPE_SYSV) || defined(_SYSTYPE_SYSV)
|
|
# define SonySysvArchitecture
|
|
# else
|
|
# define SonyBsdArchitecture
|
|
# endif
|
|
# endif
|
|
#endif /* sony */
|
|
|
|
#ifdef M4310
|
|
# define MacroIncludeFile <pegasus.cf>
|
|
# define MacroFile pegasus.cf
|
|
# undef M4310
|
|
# define PegasusArchitecture
|
|
#endif /* M4310 */
|
|
|
|
#ifdef M4330
|
|
# define MacroIncludeFile <m4330.cf>
|
|
# define MacroFile m4330.cf
|
|
# undef M4330
|
|
# define M4330Architecture
|
|
#endif /* M4330 */
|
|
|
|
#ifdef macII
|
|
# define MacroIncludeFile <macII.cf>
|
|
# define MacroFile macII.cf
|
|
# undef macII
|
|
# define MacIIArchitecture
|
|
#endif /* macII */
|
|
|
|
#ifdef _CRAY
|
|
# define MacroIncludeFile <cray.cf>
|
|
# define MacroFile cray.cf
|
|
# undef cray
|
|
# undef CRAY
|
|
# undef CRAY1
|
|
# undef CRAY2
|
|
# undef YMP
|
|
# define CrayArchitecture
|
|
#endif /* _CRAY */
|
|
|
|
#ifdef sgi
|
|
# define MacroIncludeFile <sgi.cf>
|
|
# define MacroFile sgi.cf
|
|
# undef sgi
|
|
# define SGIArchitecture
|
|
# undef mips
|
|
# define MipsArchitecture
|
|
# ifdef _SVR4
|
|
# undef _SVR4
|
|
# define SVR4Architecture
|
|
# endif
|
|
# ifdef _SYSTYPE_SVR4
|
|
# undef _SYSTYPE_SVR4
|
|
# define SVR4Architecture
|
|
# endif
|
|
#endif /* sgi */
|
|
|
|
#ifdef stellar
|
|
# define MacroIncludeFile <stellar.cf>
|
|
# define MacroFile stellar.cf
|
|
# undef stellar
|
|
# define StellarArchitecture
|
|
#endif /* stellar */
|
|
|
|
#if defined(ibm) || defined(_IBMR2) || defined(ibm032) || defined(aix)
|
|
# define MacroIncludeFile <ibm.cf>
|
|
# define MacroFile ibm.cf
|
|
# ifdef ibm
|
|
# undef ibm
|
|
# endif
|
|
# define IBMArchitecture
|
|
# ifdef i386
|
|
# undef i386
|
|
# define PS2Architecture
|
|
# endif
|
|
# ifdef ibm032
|
|
# undef ibm032
|
|
# define RtArchitecture
|
|
# endif
|
|
# ifdef aix
|
|
# undef aix
|
|
# define AIXArchitecture
|
|
# endif
|
|
# ifdef _IBMR2
|
|
# undef _IBMR2
|
|
# define RsArchitecture
|
|
# endif
|
|
#endif /* ibm */
|
|
|
|
#ifdef luna
|
|
# undef luna
|
|
# define MacroIncludeFile <luna.cf>
|
|
# define MacroFile luna.cf
|
|
# define LunaArchitecture
|
|
# ifdef mc68000
|
|
# undef mc68000
|
|
# define Mc68000Architecture
|
|
# else
|
|
# undef mc88000
|
|
# define Mc88000Architecture
|
|
# endif
|
|
#endif /* luna */
|
|
|
|
#ifdef Mips
|
|
# define MacroIncludeFile <Mips.cf>
|
|
# define MacroFile Mips.cf
|
|
# undef Mips
|
|
# undef mips
|
|
# if defined(SYSTYPE_BSD43) || defined(BSD) || defined(BSD43)
|
|
# define MipsBsdArchitecture
|
|
# else /* BSD */
|
|
# define MipsSysvArchitecture
|
|
# endif /* BSD */
|
|
#endif /* Mips */
|
|
|
|
#ifdef MOTOROLA
|
|
# define MacroIncludeFile <moto.cf>
|
|
# define MacroFile moto.cf
|
|
# undef MOTOROLA
|
|
# ifdef SYSV
|
|
# define MotoR3Architecture
|
|
# endif
|
|
# ifdef SVR4
|
|
# define MotoR4Architecture
|
|
# endif
|
|
#endif /* MOTOROLA */
|
|
|
|
#ifdef SVR4
|
|
# ifdef i386
|
|
# define i386Architecture
|
|
# undef i386
|
|
# endif
|
|
# define SVR4Architecture
|
|
# define MacroIncludeFile <svr4.cf>
|
|
# define MacroFile svr4.cf
|
|
# undef SVR4
|
|
#endif /* SVR4 */
|
|
|
|
#ifdef SYSV
|
|
# ifdef i386
|
|
# define MacroIncludeFile <x386.cf>
|
|
# define MacroFile x386.cf
|
|
# define i386SVR3Architecture
|
|
# undef i386
|
|
# endif
|
|
#endif /* SYSV */
|
|
|
|
#ifdef SYSV386
|
|
# undef i386
|
|
# ifdef SVR4
|
|
# define i386Architecture
|
|
# define SVR4Architecture
|
|
# define i386SVR4Architecture
|
|
# define MacroIncludeFile <svr4.cf>
|
|
# define MacroFile svr4.cf
|
|
# undef SVR4
|
|
# else
|
|
# define MacroIncludeFile <x386.cf>
|
|
# define MacroFile x386.cf
|
|
# define i386SVR3Architecture
|
|
# endif
|
|
#endif /* SYSV386 */
|
|
|
|
#ifdef DGUX
|
|
# define MacroIncludeFile <DGUX.cf>
|
|
# define MacroFile DGUX.cf
|
|
# undef DGUX
|
|
# define DguxArchitecture
|
|
#endif /* DGUX */
|
|
|
|
#ifdef __convex__
|
|
# define MacroIncludeFile <convex.cf>
|
|
# define MacroFile convex.cf
|
|
# ifdef convex
|
|
# undef convex
|
|
# endif
|
|
# define ConvexArchitecture
|
|
#endif /* _convex_ */
|
|
|
|
#ifdef __osf__
|
|
# define MacroIncludeFile <osf1.cf>
|
|
# define MacroFile osf1.cf
|
|
# define OSF1Architecture
|
|
# undef __osf__
|
|
# ifdef __mips__
|
|
# undef __mips__
|
|
# define MipsArchitecture
|
|
# endif
|
|
# ifdef __alpha
|
|
# undef __alpha
|
|
# define AlphaArchitecture
|
|
# endif
|
|
#endif /* __osf__ */
|
|
|
|
#ifdef Oki
|
|
# define MacroIncludeFile <Oki.cf>
|
|
# define MacroFile Oki.cf
|
|
# undef Oki
|
|
# define i860SVR4Architecture
|
|
# define SVR4Architecture
|
|
# undef SVR4
|
|
#endif /* Oki */
|
|
|
|
#ifdef WIN32
|
|
# define MacroIncludeFile <Win32.cf>
|
|
# define MacroFile Win32.cf
|
|
# define Win32Architecture
|
|
#endif /* WIN32 */
|
|
|
|
#ifdef linux
|
|
# define MacroIncludeFile <linux.cf>
|
|
# define MacroFile linux.cf
|
|
# undef linux
|
|
# define LinuxArchitecture
|
|
# ifdef i386
|
|
# undef pentium
|
|
# undef pentiumpro
|
|
# define i386Architecture
|
|
# undef i386
|
|
# endif
|
|
# ifdef __i386__
|
|
# ifndef i386Architecture
|
|
# define i386Architecture
|
|
# endif
|
|
# undef __i386__
|
|
# endif /* i386 */
|
|
# ifdef __alpha
|
|
# define AlphaArchitecture
|
|
# undef __alpha
|
|
# endif /* __alpha */
|
|
# ifdef powerpc
|
|
# define PpcArchitecture
|
|
# undef powerpc
|
|
# endif
|
|
# ifdef __powerpc__
|
|
# ifndef PpcArchitecture
|
|
# define PpcArchitecture
|
|
# endif
|
|
# undef __powerpc__
|
|
# endif
|
|
# if defined(__amd64__) || defined (__x86_64__)
|
|
# undef __amd64__
|
|
# undef __x86_64__
|
|
# define AMD64Architecture
|
|
# endif
|
|
# if defined(amd64__) || defined (x86_64__)
|
|
# undef amd64__
|
|
# undef x86_64__
|
|
# ifndef AMD64Architecture
|
|
# define AMD64Architecture
|
|
# endif
|
|
# endif
|
|
# if defined(__arm__)
|
|
# undef __arm__
|
|
# define ARMArchitecture
|
|
# endif
|
|
#endif /* linux */
|
|
|
|
#ifdef __uxp__
|
|
# define MacroIncludeFile <fujitsu.cf>
|
|
# define MacroFile fujitsu.cf
|
|
# define FujitsuArchitecture
|
|
# undef __uxp__
|
|
# define UXPArchitecture
|
|
# define SVR4Architecture
|
|
# ifdef sparc
|
|
# undef sparc
|
|
# define SparcArchitecture
|
|
# endif
|
|
#endif /* __uxp__ */
|
|
|
|
#ifdef __sxg__
|
|
# define MacroIncludeFile <fujitsu.cf>
|
|
# define MacroFile fujitsu.cf
|
|
# define FujitsuArchitecture
|
|
# undef __sxg__
|
|
# define mc68000Architecture
|
|
#endif /* __sxg__ */
|
|
|
|
#if defined(sequent) || defined(_SEQUENT_)
|
|
# define MacroIncludeFile <sequent.cf>
|
|
# define MacroFile sequent.cf
|
|
# ifdef sequent
|
|
# undef sequent
|
|
# define Dynix3Architecture
|
|
# endif
|
|
# ifdef _SEQUENT_
|
|
# undef _SEQUENT_
|
|
# define DynixPtxArchitecture
|
|
# endif
|
|
# define SequentArchitecture
|
|
#endif
|
|
|
|
#if defined(_nec_ews_svr4) || defined(nec_ews_svr4) || defined(nec_ews_svr2) || defined(SX) || defined(_nec_up) || defined(_nec_ft) || defined(PC_UX)
|
|
# ifdef nec
|
|
# undef nec
|
|
# endif
|
|
# define MacroIncludeFile <nec.cf>
|
|
# define MacroFile nec.cf
|
|
# define NecArchitecture
|
|
#endif
|
|
|
|
#ifndef MacroIncludeFile
|
|
XCOMM WARNING: Imake.cf not configured; guessing at definitions!!!
|
|
XCOMM This might mean that BOOTSTRAPCFLAGS was not set when building imake.
|
|
#define MacroIncludeFile <generic.cf>
|
|
#define MacroFile generic.cf
|
|
#endif
|