xenocara/util/cf/Imake.tmpl
2006-11-25 16:15:45 +00:00

2321 lines
54 KiB
Cheetah

XCOMM ----------------------------------------------------------------------
XCOMM Makefile generated from IMAKE_TEMPLATE and INCLUDE_IMAKEFILE
XCOMM $Xorg: Imake.tmpl,v 1.4 2000/08/17 19:41:46 cpqbld Exp $
XCOMM $XdotOrg: util/cf/Imake.tmpl,v 1.17 2006/04/15 15:55:25 herrb Exp $
XCOMM
XCOMM
XCOMM
XCOMM
XCOMM $XFree86: xc/config/cf/Imake.tmpl,v 3.155 2003/12/24 18:58:41 dickey Exp $
XCOMM ----------------------------------------------------------------------
/*
* generic imake template
*/
/*
* Modify Imake.cf when adding a new architecture, do not modify this file.
* Platform-specific parameters may be set in the appropriate <vendor>.cf
* configuration files. Site-specific parameters should be set in the file
* site.def. Full rebuilds are recommended if any parameters are changed.
* If your C preprocessor does not define any unique symbols, you will need
* to set BOOTSTRAPCFLAGS when rebuilding imake (usually when doing
* "make World" the first time).
*/
#define ImakeConfigRelease 6
#define YES 1
#define NO 0
/* Ensure that "all" is the default target in the Makefile. */
all::
.SUFFIXES: .i
/* Intercept clean rules for current directory */
#undef clean
#define clean cleandir
#include <Imake.cf>
XCOMM -----------------------------------------------------------------------
XCOMM site-specific configuration parameters that need to come before
XCOMM the platform-specific parameters - edit site.def to change
#define BeforeVendorCF
#include <site.def>
#undef BeforeVendorCF
#if defined(HasGcc3) && !defined(HasGcc2)
# define HasGcc2 HasGcc3
#endif
#if defined(HasGcc2) && !defined(HasGcc)
# define HasGcc HasGcc2
#endif
#ifndef HasCenterLineC
#define HasCenterLineC NO
#endif
#ifndef HasCenterLineCplusplus
#define HasCenterLineCplusplus NO
#endif
#ifndef HasClearmake
# define HasClearmake NO
#endif
#ifndef ProPoliceSupport
#define ProPoliceSupport NO
#endif
/*
* ClearmakeOSName - insert the current OS type into the clearmake
* build script, so .o files from different platforms cannot be winked in.
* If clearmake finds the build script for two .o files is the same, it
* will share the .o, even across different architectures. Inserting the
* O/S name into the build script in a comment prevents unwanted sharing.
* Note the trailing double-@ in the macro: end a line using this macro
* with backslash without the double-@ usually used.
* Like this:
*
* #define SomeRule() @@\
* something or other @@\
* ClearmakeOSName \
* something else @@\
* and more
*/
#ifndef ClearmakeOSName
# if HasClearmake
# define ClearmakeOSName @ XCOMM $(OSNAME) @@
# else
# define ClearmakeOSName /**/
# endif
#endif
#if HasClearmake
# ifndef MakeCmd
# define MakeCmd clearmake
# endif
#endif
#if HasClearmake
XCOMM ----------------------------------------------------------------------
.c.o:
ClearmakeOSName $(CC) -c $(CFLAGS) $*.c
#endif
XCOMM ----------------------------------------------------------------------
XCOMM platform-specific configuration parameters - edit MacroFile to change
#include MacroIncludeFile
XCOMM ----------------------------------------------------------------------
XCOMM site-specific configuration parameters that go after
XCOMM the platform-specific parameters - edit site.def to change
#define AfterVendorCF
#include <site.def>
#undef AfterVendorCF
/*
* defaults for various generic parameters; set in site.def if needed
*/
/* the following are needed before we can include Imake.rules */
#ifndef NothingOutsideProjectRoot
#define NothingOutsideProjectRoot NO
#endif
#ifndef RemoveObsoleteFiles
#define RemoveObsoleteFiles YES
#endif
#ifndef HasVarDirectory
#define HasVarDirectory YES
#endif
#ifndef UseEtcX11
#define UseEtcX11 YES
#endif
#ifndef UseInstalledX11
# define UseInstalledX11 NO
#endif
#ifdef UseInstalled
# undef UseInstalledX11
# define UseInstalledX11 YES
#endif
#if NothingOutsideProjectRoot
#undef UseEtcX11
#define UseEtcX11 NO
#endif
#ifndef UseSeparateConfDir
#define UseSeparateConfDir (UseEtcX11 || HasVarDirectory)
#endif
#if NothingOutsideProjectRoot
#undef UseSeparateConfDir
#define UseSeparateConfDir NO
#endif
#ifndef SystemV
#define SystemV NO /* SYSV (R3) */
#endif
#ifndef SystemV4
#define SystemV4 NO /* SVR4 */
#endif
#ifndef HasCodeCenter
#define HasCodeCenter NO
#endif
#ifndef HasSentinel
#define HasSentinel NO
#endif
#ifndef HasPurify
#define HasPurify NO
#endif
#ifndef HasTestCenter
#define HasTestCenter NO
#endif
#ifndef HasGnuMake
#define HasGnuMake NO
#endif
/*
* The following fixes a glitch with GNU make -j
*/
#ifndef ForceServerRemake
#define ForceServerRemake HasGnuMake
#endif
#ifndef HasBsdMake
#define HasBsdMake NO
#endif
#ifndef HasParallelMake
#define HasParallelMake NO
#endif
#ifndef RemoveTargetProgramByMoving
#define RemoveTargetProgramByMoving NO
#endif
#ifndef DoRanlibCmd
#if SystemV || SystemV4
#define DoRanlibCmd NO
#else
#define DoRanlibCmd YES
#endif
#endif
#ifndef ExecableScripts
#if SystemV
#define ExecableScripts NO
#else
#define ExecableScripts YES /* kernel exec() can handle #! */
#endif
#endif
#ifndef HasMakefileSafeInclude /* -include or sinclude in a Makefile */
#if HasClearmake || HasBsdMake
#define HasMakefileSafeInclude YES
#else
#define HasMakefileSafeInclude NO /* see also vendor-specific .cf files */
#endif
#endif
#ifndef HasSymLinks
#define HasSymLinks YES
#endif
#ifndef HasPerl
#define HasPerl YES
#endif
#ifndef HasPerl5
#define HasPerl5 HasPerl
#endif
#ifndef PerlCmd
#define PerlCmd perl
#endif
#ifndef PerlOptions
#define PerlOptions /**/
#endif
#ifndef PerlEnvSetup
#define PerlEnvSetup env LC_ALL=C
#endif
#ifndef BuildRman
#define BuildRman NO
#endif
#ifndef HasGperf
#define HasGperf NO
#endif
#ifndef GperfCmd
#define GperfCmd gperf
#endif
#ifndef RmanCmd
#if BuildRman
#ifdef UseInstalled /* assume BINDIR in path */
#define RmanCmd rman
#else
#define RmanCmd $(TOP)/config/util/rman
#endif
#endif
#endif
#ifndef RmanOptions
#if BuildRman
#define RmanOptions -f HTML
#endif
#endif
#ifndef BuildHtmlManPages
#ifdef RmanCmd
#define BuildHtmlManPages YES
#else
#define BuildHtmlManPages NO
#endif
#endif
/* Can't do this while bootstrapping imake */
#ifdef BootStrap
#undef BuildHtmlManPages
#define BuildHtmlManPages NO
#endif
#ifndef DontPreprocessManPages
#ifdef UseInstalled
#define DontPreprocessManPages YES
#else
#define DontPreprocessManPages NO
#endif
#endif
#ifndef CompressManPages
#define CompressManPages NO
#endif
#ifndef HasGroff
#define HasGroff NO
#endif
#ifndef HasGroffHtml
#define HasGroffHtml NO
#endif
#ifndef HasCookieMaker
#define HasCookieMaker NO
#endif
#ifndef DoLoadableServer
#define DoLoadableServer NO
#endif
#ifndef MakeDllModules
#define MakeDllModules NO
#endif
#ifndef StripInstalledPrograms
#define StripInstalledPrograms NO /* leave symbol table just in case */
#endif
#ifndef StaticNeedsPicForShared
#define StaticNeedsPicForShared NO
#endif
#include <Imake.rules>
#ifndef HasSharedLibraries
#define HasSharedLibraries NO
#endif
#ifndef OSMajorVersion
#define OSMajorVersion 0
#endif
#ifndef OSMinorVersion
#define OSMinorVersion 0
#endif
#ifndef OSTeenyVersion
#define OSTeenyVersion 0
#endif
#ifndef UnalignedReferencesAllowed
#define UnalignedReferencesAllowed NO /* if arbitrary deref is okay */
#endif
#ifndef AvoidNullMakeCommand
#if !HasBsdMake
#define AvoidNullMakeCommand NO
#else
#define AvoidNullMakeCommand YES
#endif
#endif
#if AvoidNullMakeCommand
#ifndef NullMakeCommand
#define NullMakeCommand @ echo -n
#endif
/*
* An obscure bug in BSD4.3's original make causes it not to recognize a
* macro definition if the macro name starts with a non-alpha and in
* column one.
*/
_NULLCMD_ = NullMakeCommand
#endif
#ifndef CrossCompiling
#define CrossCompiling NO
#undef CrossCompileDir
#endif
#ifndef BourneShell /* to force shell in makefile */
#define BourneShell /bin/sh
#endif
#ifndef ConstructMFLAGS
#if SystemV
#define ConstructMFLAGS YES /* build MFLAGS from MAKEFLAGS */
#else
#define ConstructMFLAGS NO /* build MFLAGS from MAKEFLAGS */
#endif
#endif
#ifndef ConstructMAKEFLAGS /* needed on old BSD-based? */
#define ConstructMAKEFLAGS NO /* build MAKEFLAGS from MFLAGS */
#endif
#ifndef HasLargeTmp
#define HasLargeTmp NO /* be paranoid */
#endif
#ifndef HasMotif
#define HasMotif NO
#endif
#ifndef HasMotif2
#define HasMotif2 NO /* only if system has working Motif2 or OpenMotif */
#endif
#ifndef HasBSDAuth
#define HasBSDAuth NO
#endif
#ifndef HasBSD44Sockets
#define HasBSD44Sockets NO
#endif
#ifndef HasSockets
#define HasSockets YES
#endif
#ifndef HasStreams
#define HasStreams !HasSockets
#endif
#ifndef HasDECnet
#define HasDECnet NO
#endif
#ifndef HasPoll
#if SystemV || SystemV4
#define HasPoll YES
#else
#define HasPoll NO
#endif
#endif
#ifndef HasVFork
#if SystemV
#define HasVFork NO /* not yet... */
#else
#define HasVFork YES
#endif
#endif
#ifndef HasSetProcTitle
#define HasSetProcTitle NO
#endif
#ifndef HasSetUserContext
#define HasSetUserContext NO
#endif
#ifndef HasLibCrypt
#define HasLibCrypt NO
#endif
#ifndef HasPutenv
#define HasPutenv NO /* assume not */
#endif
/* setenv(3) and unsetenv(3) */
#ifndef HasSetenv
#define HasSetenv YES /* assume yes */
#endif
#ifndef HasVoidSignalReturn
#define HasVoidSignalReturn YES /* assume yes */
#endif
#ifndef HasBsearch
#define HasBsearch YES /* assume yes */
#endif
#ifndef HasSnprintf
#define HasSnprintf NO /* assume not */
#endif
#ifndef HasStrlcat
#define HasStrlcat NO /* assume not */
#endif
#ifndef HasDlopen
#define HasDlopen NO /* assume not */
#endif
#ifndef HasWeakSymbols
#define HasWeakSymbols NO /* assume not */
#endif
#ifndef HasIssetugid
#define HasIssetugid NO /* assume not */
#endif
#ifndef HasGetresuid
#define HasGetresuid NO /* assume not */
#endif
#ifndef HasMkstemp
#define HasMkstemp NO /* assume not */
#endif
#ifndef HasUsableFileMmap
#define HasUsableFileMmap NO /* assume not */
#endif
#ifndef HasGetIfAddrs
#define HasGetIfAddrs NO /* assume not */
#endif
#ifndef HasStickyDirBit
#define HasStickyDirBit YES
#endif
#ifndef HasFchown
#define HasFchown YES
#endif
#ifndef HasPam
#define HasPam NO
#endif
#ifndef HasPamMisc
#define HasPamMisc NO
#endif
#ifndef HasGetpeereid
#define HasGetpeereid NO
#endif
#ifndef HasGetpeerucred
#define HasGetpeerucred NO
#endif
#ifndef NoStrstr
#define NoStrstr NO
#endif
#ifndef HasShadowPasswd
#define HasShadowPasswd NO
#endif
#ifndef HasBasename
#define HasBasename YES
#endif
#ifndef HasGetopt
# if !defined(Win32Architecture) && !defined(OS2Architecture)
# define HasGetopt YES
# else
# define HasGetopt NO
# endif
#endif
#ifndef HasGetoptLong
# define HasGetoptLong NO
#endif
/* byte-order defaults */
#ifndef ByteOrder
#if defined(VaxArchitecture)
#define ByteOrder X_LITTLE_ENDIAN
#elif defined(MipsArchitecture) && defined(MipselArchitecture)
#define ByteOrder X_LITTLE_ENDIAN
#elif defined(MipsArchitecture)
#define ByteOrder X_BIG_ENDIAN
#elif defined(i386Architecture)
#define ByteOrder X_LITTLE_ENDIAN
#elif defined(ia64Architecture)
#define ByteOrder X_LITTLE_ENDIAN
#elif defined(AMD64Architecture)
#define ByteOrder X_LITTLE_ENDIAN
#elif defined(SparcArchitecture) || defined(Sparc64Architecture)
#define ByteOrder X_BIG_ENDIAN
#elif defined(AlphaArchitecture)
#define ByteOrder X_LITTLE_ENDIAN
#elif defined(Mc68000Architecture)
#define ByteOrder X_BIG_ENDIAN
#elif defined(Mc68020Architecture)
#define ByteOrder X_BIG_ENDIAN
#elif defined(Mc88000Architecture)
#define ByteOrder X_BIG_ENDIAN
#elif defined(s390Architecture)
#define ByteOrder X_BIG_ENDIAN
#elif defined(s390xArchitecture)
#define ByteOrder X_BIG_ENDIAN
#elif defined(Arm32ebArchitecture)
#define ByteOrder X_BIG_ENDIAN
#elif defined(Arm32Architecture)
#define ByteOrder X_LITTLE_ENDIAN
#elif defined(RsArchitecture)
#define ByteOrder X_BIG_ENDIAN
#elif defined(PpcArchitecture) || defined(Ppc64Architecture)
#define ByteOrder X_BIG_ENDIAN
#elif defined(HPArchitecture)
#define ByteOrder X_BIG_ENDIAN
#elif defined(SuperHArchitecture)
#define ByteOrder X_LITTLE_ENDIAN
#elif defined(SuperHebArchitecture)
#define ByteOrder X_BIG_ENDIAN
#endif
#endif /* ByteOrder */
X_BYTE_ORDER = ByteOrder
#ifndef HasFortran
#define HasFortran NO
#endif
#ifndef HasGcc2ForCplusplus
#define HasGcc2ForCplusplus NO
#endif
#ifndef HasCplusplus
#if HasGcc2ForCplusplus
#define HasCplusplus YES
#else
#define HasCplusplus NO
#endif
#endif
#ifndef HasMktemp
#define HasMktemp NO /* if you have the mktemp command */
#endif
#ifndef HasNdbm
#define HasNdbm NO
#endif
#ifndef HasSecureRPC
#define HasSecureRPC NO /* if you have Secure RPC */
#endif
#ifndef HasKrbIV
#define HasKrbIV NO /* if you have Kerberos IV */
#endif
#ifndef HasKrb5
#define HasKrb5 NO /* if you have Kerberos V5 */
#endif
#ifndef HasLatex
#define HasLatex NO
#endif
#ifndef HasShm
#if SystemV || SystemV4
#define HasShm YES
#else
#define HasShm NO
#endif
#endif
#ifndef HasCbrt
#define HasCbrt YES
#endif
#ifndef HasFfs
#define HasFfs YES
#endif
#ifndef HasZlib
#define HasZlib YES
#endif
#ifndef OsNeedZlibHeaders
#define OsNeedZlibHeaders !HasZlib
#endif
#if !HasZlib /* if OS doesn't have it, we'll build it */
XCOMM Building your own zlib can be a harmful security risk and is
XCOMM deprecated; please strongly consider using vendor-supplied packages.
#undef GzipLibrary /* GzipLibrary was valid only if HasZlib */
#endif
#ifndef GzipLibrary /* if OS config didn't define it, assume it's -lz */
#define GzipLibrary -lz
#endif
/* If the system has the Freetype2 library - if NO, the copy in extras is built */
#ifndef HasFreetype2
#define HasFreetype2 YES
#endif
/* If the system has the Fontconfig library - if NO, the copy in extras is built */
#ifndef HasFontconfig
#define HasFontconfig NO
#endif
/* If the system has the PNG library - if NO, xcursorgen is not built */
#ifndef HasLibpng
#define HasLibpng NO
#endif
#if HasKrbIV
#ifndef KrbIVIncludes
#define KrbIVIncludes /**/
#endif
#ifndef KrbIVLibraries
#define KrbIVLibraries -lkrb -ldes
#endif
#endif
#if HasKrb5
#ifndef Krb5Includes
#define Krb5Includes -I/krb5/include
#endif
#ifndef Krb5Libraries
#define Krb5Libraries -L/krb5/lib -L/usr/isode/lib -lkrb5 -lcrypto -lisode -lcom_err -ldbm
#endif
#else
#undef Krb5Includes
#define Krb5Includes /**/
#undef Krb5Libraries
#define Krb5Libraries /**/
#endif
#ifndef UseGnuMalloc
#define UseGnuMalloc NO
#endif
#ifndef GnuMallocLibrary
#define GnuMallocLibrary -lgmalloc
#endif
#ifndef MallocLibraries
#if UseGnuMalloc
#define MallocLibraries GnuMallocLibrary
#else
#define MallocLibraries /**/
#endif
#endif
#ifndef HasPosixRegex /* Most modern platforms have it */
#define HasPosixRegex YES
#endif
#ifndef RegexLibrary
#if HasPosixRegex
#define RegexLibrary /**/
#else
#define RegexLibrary -lregex
#endif
#endif
#ifndef HasNCurses
#define HasNCurses NO
#endif
#ifndef NCursesLibName
#if HasNCurses
#define NCursesLibName -lncurses
#else
#define NCursesLibName
#endif
#endif
#ifdef NCursesLibDir
NCURSESLIBDIR = NCursesLibDir
#endif
#ifdef NCursesIncDir
NCURSESINCDIR = NCursesIncDir
#endif
#ifndef HasGlide2
#define HasGlide2 NO
#endif
#ifndef Glide2IncDir
#if HasGlide2
#define Glide2IncDir /usr/include/glide
#else
#define Glide2IncDir
#endif
#endif
GLIDE2INCDIR = Glide2IncDir
#ifndef HasGlide3
#define HasGlide3 NO
#endif
#ifndef Glide3IncDir
#if HasGlide3
#define Glide3IncDir /usr/include/glide3
#else
#define Glide3IncDir
#endif
#endif
GLIDE3INCDIR = Glide3IncDir
#ifndef Glide3LibName
#if HasGlide3
#define Glide3LibName glide3
#else
#define Glide3LibName
#endif
#endif
GLIDE3LIBNAME = Glide3LibName
#ifndef HasTk
#define HasTk NO
#endif
#ifndef TkLibName
#if HasTk
#define TkLibName tk
#else
#define TkLibName
#endif
#endif
TKLIBNAME = TkLibName
#ifndef TkLibDir
#if HasTk
#define TkLibDir /usr/local/lib
#else
#define TkLibDir
#endif
#endif
TKLIBDIR = TkLibDir
#ifndef TkIncDir
#if HasTk
#define TkIncDir /usr/local/include
#else
#define TkIncDir
#endif
#endif
#ifndef TkLibrary
#ifdef HasTk
#define TkLibrary Concat(-L,$(TKLIBDIR)) Concat(-l,$(TKLIBNAME))
#else
#define TkLibrary
#endif
#endif
#ifndef HasTcl
#define HasTcl NO
#endif
#ifndef TclLibName
#if HasTcl
#define TclLibName tcl
#else
#define TclLibName
#endif
#endif
TCLLIBNAME = TclLibName
#ifndef TclLibDir
#if HasTcl
#define TclLibDir /usr/local/lib
#else
#define TclLibDir
#endif
#endif
TCLIBDIR = TclLibDir
#ifndef TclIncDir
#if HasTcl
#define TclIncDir /usr/local/include
#else
#define TclIncDir
#endif
#endif
#ifndef TclLibrary
#ifdef HasTcl
#define TclLibrary Concat(-L,$(TCLLIBDIR)) Concat(-l,$(TCLLIBNAME))
#else
#define TclLibrary
#endif
#endif
#ifndef HasTsLib
#define HasTsLib NO
#endif
/*
* Libtool has two different behaviours for version numbers.
* On platforms which support a minor number, the library
* version is (version - minor).minor, on those that don't,
* the version if version.0. Linux and Darwin support minor
* numbers; some BSDs do as well. Set this to YES if libtool
* uses minor numbers on your platform.
*/
#ifndef LibtoolMinorVersions
#define LibtoolMinorVersions NO
#endif
#ifndef NeedConstPrototypes
#define NeedConstPrototypes NO
#endif
#ifndef NeedVarargsPrototypes
#define NeedVarargsPrototypes NO
#endif
#ifndef NeedNestedPrototypes
#define NeedNestedPrototypes NO
#endif
#ifndef NeedFunctionPrototypes
#define NeedFunctionPrototypes (NeedVarargsPrototypes || NeedNestedPrototypes)
#endif
#ifndef NeedWidePrototypes
#define NeedWidePrototypes YES /* mix and match ANSI-C, non-ANSI */
#endif
#ifndef UseCCMakeDepend /* use slow cc -E script */
#define UseCCMakeDepend NO
#endif
#ifndef UseGccMakeDepend /* use slowish but correct gcc -M */
#define UseGccMakeDepend NO
#endif
#ifndef CaseSensitiveFileSystem
#define CaseSensitiveFileSystem YES
#endif
/* DefaultUsrBin is independent of ProjectRoot.
This is a directory where programs will be found even if PATH
is not set, for example when coming in remotely via rsh. */
#ifndef DefaultUsrBin
#define DefaultUsrBin /usr/bin
#endif
#ifndef LibDirName
# define LibDirName lib
#endif
#ifndef UsrLibDir
#ifdef ProjectRoot
#define UsrLibDir Concat3(ProjectRoot,/,LibDirName)
#ifndef AlternateUsrLibDir
#define AlternateUsrLibDir YES
#endif
#else
#define UsrLibDir Concat3(/usr,/,LibDirName)
#ifndef AlternateUsrLibDir
#define AlternateUsrLibDir NO
#endif
#endif
#else
#ifndef AlternateUsrLibDir
#define AlternateUsrLibDir YES
#endif
#endif
#ifndef VarDirectory
#ifdef ProjectVar
#define VarDirectory ProjectVar
#else
#define VarDirectory /var
#endif
#endif
#ifndef VarLibDir
#define VarLibDir $(VARDIR)/lib
#endif
/*
* SystemUsrLibDir is independent of ProjectRoot. It is used primarily
* to allow links for shared libraries in /usr/lib for compliance to
* various standards (e.g., Linux/OpenGL).
*/
#ifndef SystemUsrLibDir
#define SystemUsrLibDir /usr/LibDirName
#endif
#ifndef SystemUsrIncDir
#define SystemUsrIncDir /usr/include
#endif
#ifndef ShLibDir
#define ShLibDir UsrLibDir
#endif
#ifndef IncRoot
#ifdef ProjectRoot
#define IncRoot Concat(ProjectRoot,/include)
#ifndef AlternateIncRoot
#define AlternateIncRoot YES
#endif
#else
#define IncRoot /usr/include
#ifndef AlternateIncRoot
#define AlternateIncRoot NO
#endif
#endif
#else
#ifndef AlternateIncRoot
#define AlternateIncRoot YES
#endif
#endif
#ifndef LintlibDir
#define LintlibDir $(USRLIBDIR)/lint
#endif
#ifndef SystemManDirectory
#if SystemV4
#define SystemManDirectory /usr/share/man
#else
#define SystemManDirectory /usr/man
#endif
#endif
#ifndef ManDirectoryRoot
#ifdef ProjectRoot
#define ManDirectoryRoot Concat(ProjectRoot,/man)
#else
#define ManDirectoryRoot SystemManDirectory
#endif
#endif
#ifndef ManPath
#define ManPath ManDirectoryRoot
#endif
#ifndef ManSourcePath
#define ManSourcePath $(MANPATH)/man
#endif
#ifndef ManDir
#define ManDir $(MANSOURCEPATH)$(MANSUFFIX)
#endif
#ifndef LibmanDir
#define LibmanDir $(MANSOURCEPATH)$(LIBMANSUFFIX)
#endif
#ifndef FileManDir
#define FileManDir $(MANSOURCEPATH)$(FILEMANSUFFIX)
#endif
#ifndef MiscManDir
#define MiscManDir $(MANSOURCEPATH)$(MISCMANSUFFIX)
#endif
#ifndef DriverManDir
#define DriverManDir $(MANSOURCEPATH)$(DRIVERMANSUFFIX)
#endif
#ifndef AppLoadDefs
#define AppLoadDefs -D__apploaddir__=$(XAPPLOADDIR)
#endif
#ifndef AppManDefs
#define AppManDefs -D__appmansuffix__=$(MANSUFFIX)
#endif
#ifndef LibManDefs
#define LibManDefs -D__libmansuffix__=$(LIBMANSUFFIX)
#endif
#ifndef FileManDefs
#define FileManDefs -D__filemansuffix__=$(FILEMANSUFFIX)
#endif
#ifndef MiscManDefs
#define MiscManDefs -D__miscmansuffix__=$(MISCMANSUFFIX)
#endif
#ifndef DriverManDefs
#define DriverManDefs -D__drivermansuffix__=$(DRIVERMANSUFFIX)
#endif
#ifndef AdminManDefs
#define AdminManDefs -D__adminmansuffix__=$(ADMINMANSUFFIX)
#endif
#ifndef ProjectManDefs
#define ProjectManDefs -D__projectroot__=$(PROJECTROOT)
#endif
#ifndef XConfigFileManDefs
#define XConfigFileManDefs -D__xconfigfile__=$(XCONFIGFILE)
#endif
#ifndef XConfigDirManDefs
#define XConfigDirManDefs -D__xconfigdir__=$(XCONFIGDIR)
#endif
#ifndef XLogFileManDefs
#define XLogFileManDefs -D__xlogfile__=$(XLOGFILE)
#endif
#ifndef XServerManDefs
#define XServerManDefs -D__xservername__=$(XSERVERNAME)
#endif
#ifndef CompressManCmd
#define CompressManCmd gzip -n
#endif
#ifndef HtmlIndexCmd
#if BuildHtmlManPages
#define HtmlIndexCmd $(MKHTMLINDEX)
#endif
#endif
#ifndef LogDirectory
#if HasVarDirectory
#define LogDirectory $(VARDIR)/log
#else
#define LogDirectory /usr/adm
#endif
#endif
#ifndef HasVarRun
#define HasVarRun NO
#endif
#ifndef VarRunDirectory
#if HasVarRun
#define VarRunDirectory $(VARDIR)/run
#endif
#endif
#ifndef HasVarDb
#define HasVarDb NO
#endif
#ifndef VarDbDirectory
#if HasVarDb
#define VarDbDirectory $(VARDIR)/db
#endif
#endif
#ifndef ConfigSrc
#define ConfigSrc $(TOP)/config
#endif
#ifndef DependDir
#if UseCCMakeDepend || UseGccMakeDepend
#define DependDir $(CONFIGSRC)/util
#else
#define DependDir $(CONFIGSRC)/makedepend
#endif
#endif
#ifndef UNCOMPRESSPATH
#define UNCOMPRESSPATH /usr/ucb/uncompress /* obsolete */
#endif
#ifndef OptimizedCDebugFlags
#define OptimizedCDebugFlags -O
#endif
#ifndef OptimizedCplusplusDebugFlags
#define OptimizedCplusplusDebugFlags OptimizedCDebugFlags
#endif
#ifndef DebuggableCDebugFlags
#define DebuggableCDebugFlags -g
#endif
#ifndef DebuggableCplusplusDebugFlags
#define DebuggableCplusplusDebugFlags DebuggableCDebugFlags
#endif
#ifndef ProfiledCDebugFlags
#define ProfiledCDebugFlags -pg
#endif
#ifndef ProfiledCplusplusDebugFlags
#define ProfiledCplusplusDebugFlags ProfiledCDebugFlags
#endif
#ifndef NoOpCDebugFlags
#define NoOpCDebugFlags /**/
#endif
#ifndef DefaultCDebugFlags
#define DefaultCDebugFlags OptimizedCDebugFlags
#endif
#ifndef DefaultCplusplusDebugFlags
#define DefaultCplusplusDebugFlags OptimizedCplusplusDebugFlags
#endif
#ifndef DefaultCCOptions
#define DefaultCCOptions /* floating point, etc. */
#endif
#ifndef DefaultCplusplusOptions
#define DefaultCplusplusOptions /* floating point, etc. */
#endif
#ifndef HardCodeLibdirFlag
#define HardCodeLibdirFlag /**/
#endif
#ifndef NoRConst
#define NoRConst NO /* YES if const for structs of funcs is bad */
#endif
#ifndef InstPgmFlags
# if CrossCompiling
# define InstPgmFlags
# else
# define InstPgmFlags -s
# endif
#endif
#ifndef InstBinFlags
#define InstBinFlags -m 0755
#endif
#ifndef InstUidFlags
#define InstUidFlags -m 4711
#endif
#ifndef InstLibFlags
#define InstLibFlags -m 0644
#endif
#ifndef InstIncFlags
#define InstIncFlags -m 0444
#endif
#ifndef InstManFlags
#define InstManFlags -m 0444
#endif
#ifndef InstDatFlags
#define InstDatFlags -m 0444
#endif
#ifndef InstKmemFlags /* put -g kmem -m 2711 in site.def... */
#define InstKmemFlags InstUidFlags
#endif
#ifndef ParallelMakeFlags
#define ParallelMakeFlags /**/
#endif
#ifndef ArCmdBase
#define ArCmdBase ar
#endif
#ifndef ArCmd
#if HasLargeTmp || SystemV4
#define ArCmd ArCmdBase cq
#else
#define ArCmd ArCmdBase clq
#endif
#endif
#ifndef ArAddCmd
#if HasLargeTmp || SystemV4
#define ArAddCmd ArCmdBase ru
#else
#define ArAddCmd ArCmdBase rul
#endif
#endif
#ifndef ArExtCmd
#if HasLargeTmp || SystemV4
#define ArExtCmd ArCmdBase x
#else
#define ArExtCmd ArCmdBase xl
#endif
#endif
#ifndef BootstrapCFlags
#define BootstrapCFlags /**/
#endif
#ifndef HasGcc3
#define HasGcc3 NO
#endif
#ifndef HasGcc2
#define HasGcc2 HasGcc3
#endif
#ifndef HasGcc
#define HasGcc HasGcc2
#endif
#ifndef HasIntelC
#define HasIntelC NO
#endif
#ifndef HasSunC
#define HasSunC NO
#endif
#ifndef HasBrokenCCForLink
#define HasBrokenCCForLink NO
#endif
#ifndef CcCmd
#if HasGcc2
#define CcCmd gcc -fpcc-struct-return
#else
#if HasGcc
#define CcCmd gcc -fstrength-reduce -fpcc-struct-return
#else
#if HasCenterLineC
#define CcCmd clcc
#else
#define CcCmd cc
#endif
#endif
#endif
#endif
#ifndef CplusplusCmd
#if HasGcc2ForCplusplus
#define CplusplusCmd g++
#else
#define CplusplusCmd CC
#endif
#endif
#ifndef CplusplusFilt
# define CplusplusFilt c++filt
#endif
#ifndef CplusplusLibC
#if HasGcc2ForCplusplus
#define CplusplusLibC -lstdc++
#else
#define CplusplusLibC /**/
#endif
#endif
#ifndef CplusplusStandardDefines
#define CplusplusStandardDefines StandardDefines
#endif
#ifndef CplusplusExtraDefines
#define CplusplusExtraDefines /**/
#endif
#ifndef CplusplusExtraIncludes
#define CplusplusExtraIncludes /**/
#endif
#ifndef CplusplusDependIncludes
#define CplusplusDependIncludes /**/
#endif
#ifndef CplusplusOptions
#define CplusplusOptions DefaultCplusplusOptions
#endif
#ifndef CplusplusSpecialOptions
#define CplusplusSpecialOptions /**/
#endif
#if HasFortran
#ifndef FortranCmd
#define FortranCmd f77
#endif
#ifndef FortranFlags
#define FortranFlags /**/
#endif
#ifndef FortranDebugFlags /* for -O or -g */
#define FortranDebugFlags /**/
#endif
#endif
#ifndef AsCmd
#define AsCmd as
#endif
#ifndef AsmDefines
#define AsmDefines /**/
#endif
#ifndef CompressCmd
#define CompressCmd compress
#endif
#ifndef GzipCmd
#define GzipCmd gzip
#endif
#ifndef CppCmd
#define CppCmd /LibDirName/cpp
#endif
#ifndef RawCppCmd
#define RawCppCmd CppCmd -undef
#endif
#ifndef CppNoLineInfoOption
#define CppNoLineInfoOption /**/
#endif
#ifndef PreProcessCmd
#define PreProcessCmd CcCmd -E
#endif
#ifndef InstallCmd /* hack should be in project */
#if SystemV || SystemV4
#ifdef UseInstalled /* assume BINDIR in path */
#define InstallCmd bsdinst
#else
#define InstallCmd $(SHELL) $(CONFIGSRC)/util/bsdinst.sh
#endif
#else
#define InstallCmd install
#endif
#endif
#ifndef InstallFlags
#define InstallFlags -c
#endif
#ifndef StripCmd
#define StripCmd strip
#endif
#ifndef LdCmd
#define LdCmd ld
#endif
#ifndef M4Cmd
#define M4Cmd m4
#endif
#ifndef M4Flags
#define M4Flags /**/
#endif
#ifndef LexCmd
#define LexCmd lex
#endif
#ifndef LexLib
#define LexLib -ll
#endif
#ifndef HasFlex
#define HasFlex NO
#endif
#ifndef YaccCmd
#define YaccCmd yacc
#endif
#ifndef CplusplusYaccCmd
#define CplusplusYaccCmd YaccCmd
#endif
#ifndef LintCmd
#define LintCmd lint
#endif
#ifndef LintLibFlag
#if SystemV || SystemV4
#define LintLibFlag -o
#else
#define LintLibFlag -C
#endif
#endif
#ifndef LintOpts
#if SystemV || SystemV4
#define LintOpts -bh
#else
#define LintOpts -axz
#endif
#endif
#ifndef CpCmd
#define CpCmd cp
#endif
#ifndef LnCmd /* can use cp instead of ln if necessary */
#if HasSymLinks
#define LnCmd ln -s
#else
#define LnCmd ln
#endif
#endif
#ifndef MakeCmd
#define MakeCmd make
#endif
#ifndef MvCmd
#define MvCmd mv -f
#endif
#ifndef RanlibCmd
#define RanlibCmd ranlib
#endif
#ifndef RanlibInstFlags
#define RanlibInstFlags /**/
#endif
#ifndef RmCmd
#define RmCmd rm -f
#endif
/*
* Module cross-compile stuff. By default they are defined to be exactly the
* same as the non-module versions.
*/
#ifndef ModuleCcCmd
#define ModuleCcCmd CcCmd
#endif
#ifndef ModuleCppCmd
#define ModuleCppCmd CppCmd
#endif
#ifndef ModuleCFlags
#define ModuleCFlags $(CFLAGS)
#endif
#ifndef ModuleAsCmd
#define ModuleAsCmd AsCmd
#endif
#ifndef ModuleAsFlags
#define ModuleAsFlags /**/
#endif
#ifndef ModuleLdCmd
#define ModuleLdCmd LdCmd
#endif
#ifndef ModuleLdFlags
#define ModuleLdFlags /**/
#endif
#ifndef ModuleLdCombineFlags
#define ModuleLdCombineFlags LdCombineFlags
#endif
#ifndef ModuleArCmd
#define ModuleArCmd ArCmd
#endif
#ifndef NeedModuleRanlib
#define NeedModuleRanlib NO
#endif
#ifndef ModuleRanlibCmd
#define ModuleRanlibCmd RanlibCmd
#endif
#ifndef HostCcCmd
#define HostCcCmd cc
#endif
#ifndef StandardIncludes /* for platform-specifics */
#define StandardIncludes /**/
#endif
#ifndef StandardDefines
#if SystemV
#define StandardDefines -DSYSV
#else
#if SystemV4
#define StandardDefines -DSVR4
#else
#define StandardDefines /**/
#endif
#endif
#endif
#ifndef StandardCppOptions
#define StandardCppOptions /**/
#endif
#ifndef StandardCppDefines
#define StandardCppDefines StandardCppOptions StandardDefines
#endif
#ifndef Malloc0ReturnsNull
#if UseGnuMalloc
#define Malloc0ReturnsNull YES
#else
#define Malloc0ReturnsNull NO
#endif
#endif
#if Malloc0ReturnsNull
#ifndef Malloc0ReturnsNullDefines
#define Malloc0ReturnsNullDefines -DMALLOC_0_RETURNS_NULL
#endif
#endif
#ifndef ToolkitStringsABIOptions
#define ToolkitStringsABIOptions /**/
#endif
#ifndef NdbmDefines
#if HasNdbm
#define NdbmDefines -DNDBM
#else
#define NdbmDefines /**/
#endif
#endif
#ifndef HasLdRunPath
#define HasLdRunPath NO
#endif
#ifndef LdPreLib
# if !defined(UseInstalled)
# define LdPreLib -L$(BUILDLIBDIR)
# else
# if AlternateUsrLibDir
# define LdPreLib -L$(USRLIBDIR)
# else
# define LdPreLib /**/
# endif
#endif
#endif
#ifndef LdPostLib
#if !defined(UseInstalled) && AlternateUsrLibDir && !HasLdRunPath && !defined(CrossCompileDir)
#define LdPostLib -L$(USRLIBDIR)
#else
#define LdPostLib /**/
#endif
#endif
#ifndef MathLibrary
#define MathLibrary -lm
#endif
#ifndef DBMLibrary
#define DBMLibrary -ldbm
#endif
#ifndef DlLibrary
#define DlLibrary -ldl
#endif
#ifndef ExtraLibraries
#if SystemV4
#if HasSockets
#define ExtraLibraries -lsocket -lnsl -lw
#else
#define ExtraLibraries -lnsl -lw
#endif
#else
#define ExtraLibraries /**/
#endif
#endif
#ifndef ExtraLoadOptions
#define ExtraLoadOptions /**/
#endif
#ifndef ExtraLoadFlags
#define ExtraLoadFlags /**/
#endif
#ifndef LdCombineFlags
#if SystemV4
#define LdCombineFlags -r
#else
#define LdCombineFlags -X -r
#endif
#endif
#ifndef LdStripFlags
#define LdStripFlags -x
#endif
#ifndef TagsCmd
#define TagsCmd ctags
#endif
#ifndef LoaderLibPrefix
#define LoaderLibPrefix /**/
#endif
#ifndef ImakeCmd
#ifdef UseInstalled /* assume BINDIR in path */
#define ImakeCmd imake
#else
#define ImakeCmd $(IMAKESRC)/imake
#endif
#endif
#ifndef ImakeWarningFlags
#define ImakeWarningFlags /* Nothing */
#endif
#ifndef DependCmd
#if UseGccMakeDepend
#ifdef UseInstalled /* assume BINDIR in path */
#define DependCmd gccmakedep
#else
#define DependCmd $(DEPENDSRC)/gccmakedep
#endif
#elif UseCCMakeDepend
#ifdef UseInstalled /* assume BINDIR in path */
#define DependCmd ccmakedep
#else
#define DependCmd $(DEPENDSRC)/ccmakedep
#endif
#else
#ifdef UseInstalled /* assume BINDIR in path */
#define DependCmd makedepend
#else
#define DependCmd $(DEPENDSRC)/makedepend
#endif
#endif
#endif
#ifndef DependDefines
# if UseCCMakeDepend || UseGccMakeDepend
# define DependDefines /**/
# else
# define DependDefines -DUSE_MAKEDEPEND
# endif
#endif
#ifndef DependFlags
#define DependFlags /**/
#endif
#ifndef DependFileName
#if !HasBsdMake
#define DependFileName Makefile.dep
#else
#define DependFileName .depend
#endif
#endif
#ifndef ExportListCmd
# ifndef ExportListGenSource
# define ExportListCmd /**/
# elif !defined(UseInstalled)
# define ExportListCmd $(CONFIGSRC)/util/exportlistgen
# else
# define ExportListCmd exportlistgen
# endif
#endif
#ifndef MkdirHierCmd
#ifdef UseInstalled /* assume BINDIR in path */
#define MkdirHierCmd mkdirhier
#else
#define MkdirHierCmd $(SHELL) $(CONFIGSRC)/util/mkdirhier.sh
#endif
#endif
#ifndef RevPathCmd
#ifdef UseInstalled /* assume BINDIR in path */
#define RevPathCmd revpath
#else
#define RevPathCmd $(CONFIGSRC)/util/revpath
#endif
#endif
#ifndef TroffCmd
#if HasGroff
#define TroffCmd groff -Tps
#else
#define TroffCmd troff -Tps
#endif
#endif
#ifndef NroffCmd
#define NroffCmd nroff
#endif
#ifndef HTMLroffCmd
#if HasGroff && HasGroffHtml
#define HTMLroffCmd groff -Thtml
#endif
#endif
#ifdef HTMLroffCmd
#ifndef DocFilesToClean
#define DocFilesToClean grohtml*.png *-auto-*.png
#endif
#endif
#ifndef MsMacros
#define MsMacros -ms
#endif
#ifndef ManMacros
#define ManMacros -man
#endif
#ifndef TblCmd
#define TblCmd tbl
#endif
#ifndef EqnCmd
#define EqnCmd eqn
#endif
#ifndef NeqnCmd
#define NeqnCmd neqn
#endif
#ifndef ColCmd
#define ColCmd col
#endif
#ifndef ColFlags
#define ColFlags -b
#endif
#ifndef DvipsCmd
#define DvipsCmd dvips
#endif
#ifndef LatexCmd
#define LatexCmd latex
#endif
#ifndef HasPdfLatex
#define HasPdfLatex NO
#endif
#ifndef PdfLatexCmd
#define PdfLatexCmd pdflatex
#endif
#ifndef GhostScriptCmd
#define GhostScriptCmd gs
#endif
#ifndef HasGhostPCL
#define HasGhostPCL NO
#endif
#ifndef HasGhostScript
#define HasGhostScript NO
#endif
#ifndef BuildPDFdocs
#define BuildPDFdocs (HasGhostScript)
#endif
#if BuildPDFdocs
#define PsToPdfCmd GhostScriptCmd -q -sOutputFile=- -sDEVICE=pdfwrite -dSAFER -dNOPAUSE -
#endif
#if HasSentinel
#ifndef SentinelCmd
#define SentinelCmd sentinel
#endif
#ifndef SentinelOptions
#define SentinelOptions /**/
#endif
#endif
#if HasPurify
#ifndef PurifyCmd
#define PurifyCmd purify
#endif
#ifndef PurifyOptions
#define PurifyOptions /**/
#endif
#endif
#if HasTestCenter
#ifndef ProofCmd
#define ProofCmd proof
#endif
#ifndef ProofOptions
#define ProofOptions /**/
#endif
#endif
#ifndef PathSeparator
#define PathSeparator /
#endif
#ifndef Osuf
#define Osuf o
#endif
#ifndef CCsuf
#define CCsuf cc
#endif
#ifndef SHsuf
#define SHsuf sh
#endif
#ifndef ManSuffix
#define ManSuffix n /* use just one tab or cpp will die */
#endif
#ifndef LibManSuffix
#define LibManSuffix 3 /* use just one tab or cpp will die */
#endif
#ifndef FileManSuffix
#if SystemV || SystemV4 || defined(OSF1Architecture)
#define FileManSuffix 4 /* use just one tab or cpp will die */
#else
#define FileManSuffix 5 /* use just one tab or cpp will die */
#endif
#endif
#ifndef MiscManSuffix
#if SystemV || SystemV4 || defined(OSF1Architecture)
#define MiscManSuffix 5 /* use just one tab or cpp will die */
#else
#define MiscManSuffix 7 /* use just one tab or cpp will die */
#endif
#endif
#ifndef DriverManSuffix
#if SystemV || SystemV4 || defined(OSF1Architecture)
#define DriverManSuffix 7 /* use just one tab or cpp will die */
#else
#define DriverManSuffix 4 /* use just one tab or cpp will die */
#endif
#endif
#ifndef AdminManSuffix
#if SystemV || SystemV4
#define AdminManSuffix 1m /* use just one tab or cpp will die */
#else
#define AdminManSuffix 8 /* use just one tab or cpp will die */
#endif
#endif
#ifndef ExpandManNames
#if SystemV
#define ExpandManNames NO
#else
#define ExpandManNames YES
#endif
#endif
#ifndef ManSrcSuffix
#define ManSrcSuffix man
#endif
#ifndef ManNewSuffix
#define ManNewSuffix _man
#endif
#ifndef TOPDIR
#define TOPDIR .
#endif
#ifndef CURDIR
#define CURDIR .
#endif
#ifndef SiteIConfigFiles
#define SiteIConfigFiles /**/
#endif
#ifndef OtherIConfigFiles
#define OtherIConfigFiles /**/
#endif
#ifndef ExtraFilesToClean
#define ExtraFilesToClean /**/
#endif
#ifndef DocFilesToClean
#define DocFilesToClean /**/
#endif
#ifndef FilesToClean
#define FilesToClean *.CKP *.ln *.BAK *.bak *.Osuf core errs ,* *~ *.a .emacs_* tags TAGS make.log MakeOut
#endif
#ifdef CrossCompileDir
# ifndef StripPath
# define StripPath(x) `echo x|sed "s%.*/%%"`
# endif
# ifndef CrossArCmd
# define CrossArCmd Concat3(CrossCompileDir,/,StripPath(ArCmd))
# endif
# ifndef CrossCcCmd
# define CrossCcCmd Concat3(CrossCompileDir,/,StripPath(CcCmd))
# endif
# ifndef CrossAsCmd
# define CrossAsCmd Concat3(CrossCompileDir,/,StripPath(AsCmd))
# endif
# ifdef HasFortran
# ifndef CrossFortranCmd
# define CrossFortranCmd Concat3(CrossCompileDir,/,StripPath(FortranCmd))
# endif
# endif
# ifndef CrossCplusplusCmd
# define CrossCplusplusCmd Concat3(CrossCompileDir,/,StripPath(CplusplusCmd))
# endif
# ifndef CrossCppCmd
# define CrossCppCmd Concat3(CrossCompileDir,/,StripPath(CppCmd))
# endif
# ifndef CrossRawCppCmdCmd
# define CrossRawCppCmd Concat3(CrossCompileDir,/,StripPath(RawCppCmd))
# endif
# ifndef CrossPreProcessCmd
# define CrossPreProcessCmd Concat3(CrossCompileDir,/,StripPath(PreProcessCmd))
# endif
# ifndef CrossAsCmd
# define CrossAsCmd Concat3(CrossCompileDir,/,StripPath(AsCmd))
# endif
# ifndef CrossLdCmd
# define CrossLdCmd Concat3(CrossCompileDir,/,StripPath(LdCmd))
# endif
# ifndef CrossModuleLdCmd
# define CrossModuleLdCmd CrossLdCmd
# endif
# ifndef CrossLintCmd
# define CrossLintCmd Concat3(CrossCompileDir,/,StripPath(LintCmd))
# endif
# ifndef CrossRanlibCmd
# define CrossRanlibCmd Concat3(CrossCompileDir,/,StripPath(RanlibCmd))
# endif
# ifndef CrossModuleCcCmd
# define CrossModuleCcCmd Concat3(CrossCompileDir,/,StripPath(ModuleCcCmd))
# endif
# ifndef CrossAsCmd
# define CrossAsCmd Concat3(CrossCompileDir,/,StripPath(AsCmd))
# endif
# ifndef CrossStripCmd
# define CrossStripCmd Concat3(CrossCompileDir,/,StripPath(StripCmd))
# endif
#endif
PATHSEP = PathSeparator
SHELL = BourneShell
TOP = TOPDIR
CURRENT_DIR = CURDIR
IMAKE = ImakeCmd
DEPEND = DependCmd
MKDIRHIER = MkdirHierCmd
REVPATH = RevPathCmd
EXPORTLISTGEN = ExportListCmd
RMAN = RmanCmd
RMANBASENAME = HostProgramTargetName(rman)
RMANOPTIONS = RmanOptions
CONFIGSRC = ConfigSrc
IMAKESRC = $(CONFIGSRC)/imake
DEPENDSRC = DependDir
INCROOT = IncRoot /* base of where to put header files */
USRLIBDIR = UsrLibDir /* nonshared libraries */
VARDIR = VarDirectory /* usually /var */
VARLIBDIR = VarLibDir /* xdm runtime files */
SYSTEMUSRLIBDIR = SystemUsrLibDir /* system's "/usr/lib" */
SYSTEMUSRINCDIR = SystemUsrIncDir /* system's "/usr/include" */
SHLIBDIR = ShLibDir /* shared libraries */
LINTLIBDIR = LintlibDir /* lint libraries */
MANPATH = ManPath /* top of manual page tree */
MANSOURCEPATH = ManSourcePath /* prefix for man page sources */
MANDIR = ManDir /* man pages for commands */
LIBMANDIR = LibmanDir /* man pages for library routines */
FILEMANDIR = FileManDir /* man pages for config files */
MISCMANDIR = MiscManDir /* man pages for miscellaneous files */
DRIVERMANDIR = DriverManDir /* man pages for drivers */
LOGDIRECTORY = LogDirectory /* OS location of log files */
#ifdef VarRunDirectory
VARRUNDIR = VarRunDirectory /* OS location of PID files */
#endif
#ifdef VarDbDirectory
VARDBDIR = VarDbDirectory /* OS location of db/state files */
#endif
#ifdef CrossCompileDir
AR = CrossArCmd
#else
AR = ArCmd
#endif
XCOMM Nice try but useless: make will inherit BOOTSTRAPCFLAGS
XCOMM from top Makefile
BOOTSTRAPCFLAGS = BootstrapCFlags /* set if cpp does not have uniq sym */
#ifdef CrossCompileDir
CC = CrossCcCmd
AS = CrossAsCmd
#else
CC = CcCmd
AS = AsCmd
#endif
#if HasFortran
# ifdef CrossCompileDir
FC = CrossFortranCmd
# else
FC = FortranCmd
# endif
FDEBUGFLAGS = FortranDebugFlags
FCFLAGS = FortranFlags $(FDEBUGFLAGS)
#endif
#if HasCplusplus
.SUFFIXES: Concat(.,CCsuf)
#ifdef CrossCompileDir
CXX = CrossCplusplusCmd
#else
CXX = CplusplusCmd
#endif
CXXFILT = CplusplusFilt
#ifdef CplusplusLibCDir
CXXLIBDIR = CplusplusLibCDir
CXXLIB = -L$(CXXLIBDIR) CplusplusLibC
#else
CXXLIB = CplusplusLibC
#endif
CXXDEBUGFLAGS = DefaultCplusplusDebugFlags
CXXDEPENDINCLUDES = CplusplusDependIncludes
CXXEXTRA_DEFINES = CplusplusExtraDefines
CXXEXTRA_INCLUDES = CplusplusExtraIncludes
CXXSTD_DEFINES = CplusplusStandardDefines $(CXXPROJECT_DEFINES)
CXXOPTIONS = CplusplusOptions
CXXINCLUDES = $(INCLUDES) $(TOP_INCLUDES) $(CXXEXTRA_INCLUDES)
CXXDEFINES = $(CXXINCLUDES) $(CXXSTD_DEFINES) $(THREADS_CXXDEFINES) $(DEFINES) $(CXXEXTRA_DEFINES)
CXXFLAGS = $(CXXDEBUGFLAGS) $(CXXOPTIONS) $(THREADS_CXXFLAGS) $(CXXDEFINES)
#endif
COMPRESS = CompressCmd
GZIPCMD = GzipCmd
#ifdef CrossCompileDir
CPP = CrossCppCmd $(STD_CPP_DEFINES)
RAWCPP = CrossRawCppCmd $(STD_CPP_OPTIONS)
PREPROCESSCMD = CrossPreProcessCmd $(STD_CPP_DEFINES)
#else
CPP = CppCmd $(STD_CPP_DEFINES) /* simple filters */
RAWCPP = RawCppCmd $(STD_CPP_OPTIONS)
PREPROCESSCMD = PreProcessCmd $(STD_CPP_DEFINES) /* prefered; mdep */
#endif
INSTALL = InstallCmd
INSTALLFLAGS = InstallFlags
#ifdef CrossCompileDir
LD = CrossLdCmd
#else
LD = LdCmd
#endif
LEX = LexCmd
M4 = M4Cmd
M4FLAGS = M4Flags
LEXLIB = LexLib
YACC = YaccCmd
CCYACC = CplusplusYaccCmd
#ifdef CrossCompileDir
LINT = CrossLintCmd
#else
LINT = LintCmd
#endif
LINTLIBFLAG = LintLibFlag
LINTOPTS = LintOpts
LN = LnCmd
MAKE = MakeCmd
MV = MvCmd
CP = CpCmd
#if DoRanlibCmd
#ifdef CrossCompileDir
RANLIB = CrossCompileDir/RanlibCmd
#else
RANLIB = RanlibCmd
#endif
RANLIBINSTFLAGS = RanlibInstFlags
#endif
RM = RmCmd
PERL = PerlCmd
PERLOPTS = PerlOptions
PERLENVSETUP = PerlEnvSetup
MANSUFFIX = ManSuffix /* suffix for command man pages */
LIBMANSUFFIX = LibManSuffix /* suffix for library man pages */
FILEMANSUFFIX = FileManSuffix /* suffix for file format man pages */
MISCMANSUFFIX = MiscManSuffix /* suffix for misc man pages */
DRIVERMANSUFFIX = DriverManSuffix /* suffix for driver man pages */
ADMINMANSUFFIX = AdminManSuffix /* suffix for admin command man pages */
MANSRCSUFFIX = ManSrcSuffix /* suffix for man page source */
MANNEWSUFFIX = ManNewSuffix /* suffix for preprocessed man source */
MANDEFS = AppLoadDefs AppManDefs FileManDefs LibManDefs MiscManDefs DriverManDefs AdminManDefs ProjectManDefs XConfigFileManDefs XConfigDirManDefs XLogFileManDefs XServerManDefs $(XORGMANDEFS) $(VENDORMANDEFS)
COMPRESSMANCMD = CompressManCmd
TROFF = TroffCmd
NROFF = NroffCmd
#ifdef HTMLroffCmd
HTMLROFF = HTMLroffCmd
#endif
#ifdef PsToPdfCmd
PSTOPDFCMD = PsToPdfCmd
#endif
MSMACROS = MsMacros
MANMACROS = ManMacros
TBL = TblCmd
EQN = EqnCmd
NEQN = NeqnCmd
COL = ColCmd
COLFLAGS = ColFlags
#ifdef CrossCompileDir
MODCC = CrossModuleCcCmd
#else
MODCC = ModuleCcCmd
#endif
MODCPP = ModuleCppCmd
MODCFLAGS = ModuleCFlags
MODAS = ModuleAsCmd
MODASFLAGS = ModuleAsFlags
#ifdef CrossCompileDir
MODLD = CrossModuleLdCmd
#else
MODLD = ModuleLdCmd
#endif
MODLDFLAGS = ModuleLdFlags
MODLDCOMBINEFLAGS = ModuleLdCombineFlags
MODAR = ModuleArCmd
#ifdef CrossCompileDir
MODRANLIB = CrossCompileDir/ModuleRanlibCmd
#else
MODRANLIB = ModuleRanlibCmd
#endif
#if HasLatex
DVIPS = DvipsCmd
LATEX = LatexCmd
#endif
#if HasPdfLatex
PDFLATEXCMD = PdfLatexCmd
#endif
#if HasSentinel
SENTINEL = SentinelCmd
SENTINELOPTIONS = SentinelOptions
#endif
#if HasPurify
PURIFY = PurifyCmd
PURIFYOPTIONS = PurifyOptions
#endif
#if HasTestCenter
PROOF = ProofCmd
PROOFOPTIONS = ProofOptions
#endif
#if CrossCompiling
HOST_CC = HostCcCmd
#endif
STD_INCLUDES = StandardIncludes
STD_CPP_OPTIONS = StandardCppOptions
STD_CPP_DEFINES = StandardCppOptions StandardCppDefines $(PROJECT_DEFINES)
STD_DEFINES = StandardDefines $(PROJECT_DEFINES)
EXTRA_LOAD_FLAGS = ExtraLoadFlags
EXTRA_LDOPTIONS = ExtraLoadOptions
EXTRA_LIBRARIES = MallocLibraries ExtraLibraries Krb5Libraries
TAGS = TagsCmd
#if ConstructMFLAGS
MFLAGS = -$(MAKEFLAGS)
#endif
#if ConstructMAKEFLAGS
MAKEFLAGS = $(MFLAGS)
#endif
PARALLELMFLAGS = ParallelMakeFlags
#if HasSharedLibraries
SHAREDCODEDEF = SharedCodeDef
SHLIBDEF = SharedLibraryDef
#ifdef SharedLibraryLoadFlags
SHLIBLDFLAGS = SharedLibraryLoadFlags $(SHLIBGLOBALSFLAGS)
#if HasGcc
NOSTDLIB = -nostdlib
POSTNOSTDLIB = -Wl,-Bstatic -lgcc -Wl,-Bdynamic
#elif HasIntelC
NOSTDLIB = -nostdlib
POSTNOSTDLIB =
#elif HasSunC
NOSTDLIB = -xnolib
POSTNOSTDLIB =
#endif
#endif
/*
* Here we set up flags needed to produce position-independent code
* when doing C and C++ compilation. The default if you specify C
* PIC flags without also specifying C++ PIC flags is to assume that
* the C flags work for both. If your C++ compiler requires different
* flags, specify them explicitly in PositionIndependentCplusplusFlags.
*/
#ifdef PositionIndependentCFlags
PICFLAGS = PositionIndependentCFlags
#endif
#ifdef PositionIndependentCplusplusFlags
CXXPICFLAGS = PositionIndependentCplusplusFlags
#else
#ifdef PositionIndependentCFlags
CXXPICFLAGS = PositionIndependentCFlags
#endif
#endif
#endif
#if !HasVoidSignalReturn
SIGNAL_DEFINES = -DSIGNALRETURNSINT
#endif
/*
* The following supports forcing of function prototypes
*/
#if NeedFunctionPrototypes && NeedVarargsPrototypes && NeedConstPrototypes && NeedNestedPrototypes
#define _funcprotodef -DFUNCPROTO=15
#else
#if NeedFunctionPrototypes && NeedVarargsPrototypes && NeedNestedPrototypes
#define _funcprotodef -DFUNCPROTO=11
#else
#if NeedFunctionPrototypes && NeedNestedPrototypes
#define _funcprotodef -DFUNCPROTO=9
#else
#if NeedFunctionPrototypes && NeedVarargsPrototypes && NeedConstPrototypes
#define _funcprotodef -DFUNCPROTO=7
#else
#if NeedFunctionPrototypes && NeedConstPrototypes
#define _funcprotodef -DFUNCPROTO=5
#else
#if NeedFunctionPrototypes && NeedVarargsPrototypes
#define _funcprotodef -DFUNCPROTO=3
#else
#if NeedFunctionPrototypes
#define _funcprotodef -DFUNCPROTO
#else
#define _funcprotodef /**/
#endif
#endif
#endif
#endif
#endif
#endif
#endif
#if NeedWidePrototypes
#define _wideprotodef /**/
#else
#define _wideprotodef -DNARROWPROTO
#endif
PROTO_DEFINES = _funcprotodef _wideprotodef
#undef _funcprotodef
#undef _wideprotodef
#if StripInstalledPrograms
INSTPGMFLAGS = InstPgmFlags /* install flags for stripping */
#else
INSTPGMFLAGS =
#endif
INSTBINFLAGS = InstBinFlags /* install flags for programs */
INSTUIDFLAGS = InstUidFlags /* install flags for setuid programs */
INSTLIBFLAGS = InstLibFlags /* install flags for libraries */
INSTINCFLAGS = InstIncFlags /* install flags for headers */
INSTMANFLAGS = InstManFlags /* install flags for man pages */
INSTDATFLAGS = InstDatFlags /* install flags for data files */
INSTKMEMFLAGS = InstKmemFlags /* install flags for /dev/kmem progs */
#ifdef ProjectRoot
PROJECTROOT = ProjectRoot
#endif
#ifdef UseInstalled
# if AlternateIncRoot
# define TopInclude -I$(INCROOT)
# else
# define TopInclude /**/
# endif
#else
# define TopInclude -I$(TOP)
#endif
CDEBUGFLAGS = DefaultCDebugFlags
CCOPTIONS = DefaultCCOptions /* to distinguish from param flags */
/*
* STD_INCLUDES contains system-specific includes
* TOP_INCLUDES specifies how to get to /usr/include or its build substitute
* EXTRA_INCLUDES contains project-specific includes set in project incfiles
* INCLUDES contains client-specific includes set in Imakefile
* LOCAL_LDFLAGS contains client-specific ld flags flags set in Imakefile
*/
ALLINCLUDES = $(INCLUDES) $(EXTRA_INCLUDES) $(TOP_INCLUDES) $(INSTALLED_INCLUDES) $(STD_INCLUDES)
ALLDEFINES = $(ALLINCLUDES) $(STD_DEFINES) $(PROTO_DEFINES) $(THREADS_DEFINES) $(MODULE_DEFINES) $(DEFINES) $(EXTRA_DEFINES)
CFLAGS = $(CDEBUGFLAGS) $(CCOPTIONS) $(THREADS_CFLAGS) $(MODULE_CFLAGS) $(ALLDEFINES)
LINTFLAGS = $(LINTOPTS) -DLINT $(ALLDEFINES) $(DEPEND_DEFINES)
LDPRELIB = LdPreLib $(INSTALLED_LIBS)
LDPOSTLIB = LdPostLib
LDOPTIONS = $(CDEBUGFLAGS) $(CCOPTIONS) $(EXTRA_LDOPTIONS) $(THREADS_LDFLAGS) $(LOCAL_LDFLAGS) $(LDPRELIBS)
CXXLDOPTIONS = $(CXXDEBUGFLAGS) $(CXXOPTIONS) $(EXTRA_LDOPTIONS) $(THREADS_CXXLDFLAGS) $(LOCAL_LDFLAGS) $(LDPRELIBS)
LDLIBS = $(LDPOSTLIBS) $(THREADS_LIBS) $(SYS_LIBRARIES) $(EXTRA_LIBRARIES)
#if HasBrokenCCForLink
CCLINK = LdCmd
#else
#if AlternateUsrLibDir && HasLdRunPath
CCENVSETUP = LD_RUN_PATH=$(USRLIBDIRPATH)
CCLINK = $(CCENVSETUP) $(CC)
#else
CCLINK = $(CC)
#endif
#endif
#if AlternateUsrLibDir && HasLdRunPath
CXXENVSETUP = LD_RUN_PATH=$(USRLIBDIRPATH)
CXXLINK = $(CXXENVSETUP) $(CXX)
#else
CXXLINK = $(CXX)
#endif
LDSTRIPFLAGS = LdStripFlags
LDCOMBINEFLAGS = LdCombineFlags
DEPENDFLAGS = DependFlags
DEPEND_DEFINES = DependDefines
XCOMM Not sure this belongs here
TKLIBDIR = TkLibDir
TKINCDIR = TkIncDir
TKLIBNAME = TkLibName
TKLIBRARY = TkLibrary
TCLLIBDIR = TclLibDir
TCLINCDIR = TclIncDir
TCLLIBNAME = TclLibName
TCLLIBRARY = TclLibrary
MACROFILE = MacroFile
RM_CMD = $(RM)
IMAKE_DEFINES = /* leave blank, for command line use only */
IMAKE_WARNINGS = ImakeWarningFlags
#ifdef UseInstalled
IRULESRC = $(CONFIGDIR) /* used in rules file */
IMAKE_CMD = $(IMAKE) -DUseInstalled -I$(IRULESRC) $(IMAKE_DEFINES) \
$(IMAKE_WARNINGS)
#else
IRULESRC = $(CONFIGSRC)/cf
IMAKE_CMD = $(IMAKE) -I$(IRULESRC) $(IMAKE_DEFINES) $(IMAKE_WARNINGS)
#endif
#if !HasClearmake
/* clearmake records relevant defines and flags in the build script,
so it knows when they change and we don't need this coarser-level
dependency. We also don't want it, since it prevents sharing if
even one config file, say site.def or host.def, changes. */
ICONFIGFILES = $(IRULESRC)/Imake.tmpl $(IRULESRC)/X11.tmpl \
$(IRULESRC)/site.def $(IRULESRC)/$(MACROFILE) \
OtherIConfigFiles SiteIConfigFiles $(EXTRA_ICONFIGFILES)
#endif
#ifndef TopLevelProject
# define TopLevelProject X11
#endif
#ifndef ProjectRulesFile
# define ProjectRulesFile Concat3(<,TopLevelProject,.rules>)
#endif
#include ProjectRulesFile
#ifndef LocalRulesFile
/* need this to make ANSI-style preprocessors happy */
#define LocalRulesFile <noop.rules>
#endif
#include LocalRulesFile
/*
* get project-specific configuration and rules
*/
#ifndef ProjectTmplFile
#define ProjectTmplFile Concat3(<,TopLevelProject,.tmpl>)
#endif
#include ProjectTmplFile
#ifndef LocalTmplFile
/* need this to make ANSI-style preprocessors happy */
#define LocalTmplFile <noop.rules>
#endif
#include LocalTmplFile
#if !BuildLibraries && AlternateIncRoot && !defined(CrossCompileDir)
INSTALLED_INCLUDES = -I$(INCROOT)
#endif
#if !defined(UseInstalled) && !BuildLibraries && AlternateUsrLibDir && !defined(CrossCompileDir)
INSTALLED_LIBS = -L$(USRLIBDIR)
#endif
#ifdef FixupLibReferences
FixupLibReferences()
#endif
/* ConfigDir comes from X11.tmpl */
CONFIGDIR = ConfigDir /* build configuration information */
#if HasClearmake
OSNAME = OSName
#endif
USRLIBDIRPATH = UsrLibDirPath
LDPRELIBS = LdPreLibs $(INSTALLED_LIBS)
LDPOSTLIBS = LdPostLibs
TOP_INCLUDES = TopIncludes
PROJECT_DEFINES = ProjectDefines
VENDOR_DEFINES = VendorDefines
#if HasCplusplus
CXXPROJECT_DEFINES = CplusplusProjectDefines
#endif
XCOMM ----------------------------------------------------------------------
XCOMM start of Imakefile
#include INCLUDE_IMAKEFILE
XCOMM ----------------------------------------------------------------------
XCOMM common rules for all Makefiles - do not edit
.c.i:
CPPOnlyCompile($*.c,$(_NOOP_))
.SUFFIXES: .ii
.cc.ii:
CPPOnlyCompile($*.cc,$(_NOOP_))
.SUFFIXES: .s
.c.s:
CompileCToAsm($(_NOOP_))
.cc.s:
CompileCplusplusToAsm($(_NOOP_))
/*
* These need to be here so that rules in Imakefile occur first; the blank
* emptyrule is to make sure that an empty Imakefile does not default to make
* clean.
*/
emptyrule::
CleanTarget()
#ifndef IHaveSpecialMakefileTarget
MakefileTarget()
#endif
#if BuildHtmlManPages
RmanDependency()
#endif
TagsTarget()
#ifdef MakefileAdditions
MakefileAdditions()
#endif
CenterLoadTarget(debug_src,$(SRCS),NullParameter,$(ALLDEFINES))
CenterLoadTarget(debug_obj,$(OBJS),NullParameter,$(ALLDEFINES))
ManKeywordsTarget($(MANPATH))
HtmlManIndex
/* Generate the "real" clean rules */
#undef clean
clean:: cleandir
distclean:: cleandir
#ifdef IHaveSubdirs
XCOMM ----------------------------------------------------------------------
XCOMM rules for building in SUBDIRS - do not edit
InstallSubdirs($(SUBDIRS))
InstallManSubdirs($(SUBDIRS))
InstallDriverSDKSubdirs($(SUBDIRS))
CleanSubdirs($(SUBDIRS))
TagSubdirs($(SUBDIRS))
MakefileSubdirs($(SUBDIRS))
IncludesSubdirs($(SUBDIRS))
/* "distclean" subdirectories */
#undef BootstrapCleanSubdirs
#define BootstrapCleanSubdirs /**/
#define clean distclean
CleanSubdirs($(SUBDIRS))
#undef clean
#endif
#if !DontPreprocessManPages || defined(PreprocessManPages)
PREPROCESSMANPAGES = true
#endif
/* must be after all install.man rules that install anything */
#ifndef MakeManKeywords
#define MakeManKeywords NO
#endif
#if MakeManKeywords /* typically only at top level */
install.man:: man_keywords
#endif
/* must be after all install.man rules that install anything */
#ifndef MakeHtmlManIndex
#define MakeHtmlManIndex NO
#endif
#if MakeHtmlManIndex /* typically only at top level */
install.man:: html_index
#endif
#ifndef IHaveSubdirs
XCOMM ----------------------------------------------------------------------
XCOMM empty rules for directories that do not have SUBDIRS - do not edit
install::
@echo "install in $(CURRENT_DIR) done"
install.man::
@echo "install.man in $(CURRENT_DIR) done"
install.sdk::
@echo "install.sdk in $(CURRENT_DIR) done"
Makefiles::
includes::
depend::
#endif /* if subdirectory rules are needed */
#ifndef IHaveSpecialMakefileTarget
/* "distclean" also removes the Makefile and the depend file */
distclean::
RemoveFiles(Makefile DependFileName)
#endif
XCOMM ----------------------------------------------------------------------
XCOMM dependencies generated by makedepend
IncludeMakefile(DependFileName)