111d341caSmrgXCOMM $Xorg: xf86.tmpl,v 1.3 2000/08/17 19:41:48 cpqbld Exp $
211d341caSmrg
311d341caSmrg
411d341caSmrg
511d341caSmrgXCOMM $XFree86: xc/config/cf/xf86.tmpl,v 3.32 2002/11/14 21:01:14 tsi Exp $
611d341caSmrg
711d341caSmrg#ifdef BuilderEMailAddr
811d341caSmrgBUILDERADDR = BuilderEMailAddr
91c80d5b0Smrg#else
1011d341caSmrgBUILDERADDR = "xorg@freedesktop.org"
1111d341caSmrg#endif
1211d341caSmrgBUGMSG = -DBUILDERADDR='$(BUILDERADDR)'
1311d341caSmrg
1411d341caSmrg#if defined(XF86DriverSDK)
1511d341caSmrg    BUILDMODULEDIR = $(DRIVERSDKMODULEDIR)
1611d341caSmrg    BUILDMODULETOP = ..
1711d341caSmrg    TOP_INCLUDES = TopIncludes
1811d341caSmrg   IMAKE_DEFINES = -DXF86DriverSDK=1
1911d341caSmrg#ifdef UseInstalled
2011d341caSmrg       IMAKE_CMD = $(IMAKE) -DUseInstalled -I$(TOP) -I$(IRULESRC) \
2111d341caSmrg		   $(IMAKE_DEFINES) $(IMAKE_WARNINGS)
2211d341caSmrg#else
2311d341caSmrg       IMAKE_CMD = $(IMAKE) -I$(TOP) -I$(IRULESRC) \
2411d341caSmrg		   $(IMAKE_DEFINES) $(IMAKE_WARNINGS)
2511d341caSmrg#endif
2611d341caSmrg
2711d341caSmrg#undef ImakeSubCmdHelper
2811d341caSmrg#ifdef UseInstalled
2911d341caSmrg#define ImakeSubCmdHelper $(IMAKE) -DUseInstalled -I$(IMAKETOP) \
3011d341caSmrg			  -I$(IRULESRC) $(IMAKE_DEFINES) $(IMAKE_WARNINGS)
3111d341caSmrg#else
3211d341caSmrg#define ImakeSubCmdHelper $(IMAKEPREFIX)$(IMAKE) -I$(IMAKETOP) \
3311d341caSmrg			  $(IMAKE_DEFINES) $(IMAKE_WARNINGS) \
3411d341caSmrg			  -I$(IMAKEPREFIX)$(IRULESRC)
3511d341caSmrg#endif
3611d341caSmrg#endif
3711d341caSmrg
3811d341caSmrg#ifndef JoystickSupport
3911d341caSmrg#define JoystickSupport		NO
4011d341caSmrg#endif
4111d341caSmrg
4211d341caSmrg/*
4311d341caSmrg * Module support: These overrides must be here, not in xf86.rules,
4411d341caSmrg * because they will replace rules after having seen the first lines
4511d341caSmrg * of Imakefile (include <Server.tmpl>)
4611d341caSmrg */
4711d341caSmrg
4811d341caSmrg
4911d341caSmrg#ifndef HasGccMergeConstants
5011d341caSmrg#define HasGccMergeConstants	NO
5111d341caSmrg#endif
5211d341caSmrg
5311d341caSmrg#if HasGccMergeConstants && DoLoadableServer && !MakeDllModules
5411d341caSmrgMODULE_GCC_FLAGS = -fno-merge-constants
5511d341caSmrg#endif
5611d341caSmrg
5711d341caSmrg#if defined(IHaveModules) && MakeDllModules
5811d341caSmrgMODULE_PIC_FLAGS = $(PICFLAGS)
5911d341caSmrg#endif
6011d341caSmrg
6111d341caSmrgMODULE_CFLAGS = $(MODULE_PIC_FLAGS) $(MODULE_GCC_FLAGS)
6211d341caSmrg
6311d341caSmrg#if defined(IHaveModules)
6411d341caSmrg# if DoLoadableServer
6511d341caSmrgMODULE_DEFINES = -DIN_MODULE -DXFree86Module
6611d341caSmrg# else
6711d341caSmrgMODULE_DEFINES = -DXFree86Module
6811d341caSmrg# endif
6911d341caSmrg#endif
7011d341caSmrg
7111d341caSmrg#if defined(IHaveModules) && DoLoadableServer
7211d341caSmrg
73944bff83Smrg/* This overrides the ObjectCompile in Imake.rules! */
7411d341caSmrg#undef ObjectCompile
7511d341caSmrg#define ObjectCompile(options) RemoveFile($@)                           @@\
7611d341caSmrg	ClearmakeOSName\
7711d341caSmrg	$(MODCC) $(MODCFLAGS) options -c $*.c
7811d341caSmrg
7911d341caSmrg/* This overrides an AssembleObject in xf86.rules or in an os-dependent
8011d341caSmrg * rules file (currently only minix.cf and os2.rules (uncritical))
8111d341caSmrg */
8211d341caSmrg#define ModCPPOnlyAsm(basename,options) RemoveFile(basename.i)		@@\
8311d341caSmrg	$(MODCPP) AsmDefines $(DEFINES) $(INCLUDES) options basename.S | \	@@\
8411d341caSmrg		grep -v '^\#' > basename.i
8511d341caSmrg
8611d341caSmrg#undef AssembleObject
8711d341caSmrg#define AssembleObject(basename,flags) ModCPPOnlyAsm(basename,flags)	@@\
8811d341caSmrg	RemoveFile(basename.o)						@@\
8911d341caSmrg	$(MODAS) $(MODASFLAGS) -o basename.o basename.i			@@\
9011d341caSmrg	RemoveFile(basename.i)
9111d341caSmrg
9211d341caSmrg/* This overrides the NormalRelocatableTarget in Imake.rules */
9311d341caSmrg#undef NormalRelocatableTarget
9411d341caSmrg#define	NormalRelocatableTarget(objname,objlist)			@@\
9511d341caSmrgAllTarget(objname.Osuf)							@@\
9611d341caSmrg									@@\
9711d341caSmrgobjname.Osuf: objlist $(EXTRALIBRARYDEPS)				@@\
9811d341caSmrg	RemoveFile($@)							@@\
9911d341caSmrg	$(MODLD) $(MODLDCOMBINEFLAGS) objlist -o $@
10011d341caSmrg
10111d341caSmrg/* This overrides the NormalDepRelocatableTarget in Imake.rules */
10211d341caSmrg#undef NormalDepRelocatableTarget
10311d341caSmrg#define	NormalDepRelocatableTarget(objname,deplist,objlist)		@@\
10411d341caSmrgAllTarget(objname.Osuf)							@@\
10511d341caSmrg									@@\
10611d341caSmrgobjname.Osuf: deplist $(EXTRALIBRARYDEPS)				@@\
10711d341caSmrg	RemoveFile($@)							@@\
10811d341caSmrg	$(MODLD) $(MODLDCOMBINEFLAGS) objlist -o $@
10911d341caSmrg
11011d341caSmrg/* This overrides the RanLibrary in Imake.rules */
11111d341caSmrg#if DoRanlibCmd || NeedModuleRanlib
11211d341caSmrg#undef RanLibrary
11311d341caSmrg#define RanLibrary(args) $(MODRANLIB) args
11411d341caSmrg#endif
11511d341caSmrg
11611d341caSmrg/* This overrides the MakeLibrary rule in Imake.rules */
11711d341caSmrg#undef MakeLibrary
11811d341caSmrg#define MakeLibrary(libname,objlist) $(MODAR) libname objlist
11911d341caSmrg
12011d341caSmrg/* This overrides the LibraryTargetName rule in Imake.rules */
12111d341caSmrg#undef LibraryTargetName
12211d341caSmrg#define LibraryTargetName(libname)Concat(lib,libname.a)
12311d341caSmrg
12411d341caSmrg/* This disables an OS/2 rule */
12511d341caSmrg#undef BuildLibSupportLibs
12611d341caSmrg#define BuildLibSupportLibs(dummy)
12711d341caSmrg
12811d341caSmrg#endif /* IHaveModules */
129