1XCOMM $Xorg: xf86.tmpl,v 1.3 2000/08/17 19:41:48 cpqbld Exp $ 2 3 4 5XCOMM $XFree86: xc/config/cf/xf86.tmpl,v 3.32 2002/11/14 21:01:14 tsi Exp $ 6 7#ifdef BuilderEMailAddr 8BUILDERADDR = BuilderEMailAddr 9#else 10BUILDERADDR = "xorg@freedesktop.org" 11#endif 12BUGMSG = -DBUILDERADDR='$(BUILDERADDR)' 13 14#if defined(XF86DriverSDK) 15 BUILDMODULEDIR = $(DRIVERSDKMODULEDIR) 16 BUILDMODULETOP = .. 17 TOP_INCLUDES = TopIncludes 18 IMAKE_DEFINES = -DXF86DriverSDK=1 19#ifdef UseInstalled 20 IMAKE_CMD = $(IMAKE) -DUseInstalled -I$(TOP) -I$(IRULESRC) \ 21 $(IMAKE_DEFINES) $(IMAKE_WARNINGS) 22#else 23 IMAKE_CMD = $(IMAKE) -I$(TOP) -I$(IRULESRC) \ 24 $(IMAKE_DEFINES) $(IMAKE_WARNINGS) 25#endif 26 27#undef ImakeSubCmdHelper 28#ifdef UseInstalled 29#define ImakeSubCmdHelper $(IMAKE) -DUseInstalled -I$(IMAKETOP) \ 30 -I$(IRULESRC) $(IMAKE_DEFINES) $(IMAKE_WARNINGS) 31#else 32#define ImakeSubCmdHelper $(IMAKEPREFIX)$(IMAKE) -I$(IMAKETOP) \ 33 $(IMAKE_DEFINES) $(IMAKE_WARNINGS) \ 34 -I$(IMAKEPREFIX)$(IRULESRC) 35#endif 36#endif 37 38#ifndef JoystickSupport 39#define JoystickSupport NO 40#endif 41 42/* 43 * Module support: These overrides must be here, not in xf86.rules, 44 * because they will replace rules after having seen the first lines 45 * of Imakefile (include <Server.tmpl>) 46 */ 47 48 49#ifndef HasGccMergeConstants 50#define HasGccMergeConstants NO 51#endif 52 53#if HasGccMergeConstants && DoLoadableServer && !MakeDllModules 54MODULE_GCC_FLAGS = -fno-merge-constants 55#endif 56 57#if defined(IHaveModules) && MakeDllModules 58MODULE_PIC_FLAGS = $(PICFLAGS) 59#endif 60 61MODULE_CFLAGS = $(MODULE_PIC_FLAGS) $(MODULE_GCC_FLAGS) 62 63#if defined(IHaveModules) 64# if DoLoadableServer 65MODULE_DEFINES = -DIN_MODULE -DXFree86Module 66# else 67MODULE_DEFINES = -DXFree86Module 68# endif 69#endif 70 71#if defined(IHaveModules) && DoLoadableServer 72 73/* This overrides the ObjectCompile in Imake.rules! */ 74#undef ObjectCompile 75#define ObjectCompile(options) RemoveFile($@) @@\ 76 ClearmakeOSName\ 77 $(MODCC) $(MODCFLAGS) options -c $*.c 78 79/* This overrides an AssembleObject in xf86.rules or in an os-dependent 80 * rules file (currently only minix.cf and os2.rules (uncritical)) 81 */ 82#define ModCPPOnlyAsm(basename,options) RemoveFile(basename.i) @@\ 83 $(MODCPP) AsmDefines $(DEFINES) $(INCLUDES) options basename.S | \ @@\ 84 grep -v '^\#' > basename.i 85 86#undef AssembleObject 87#define AssembleObject(basename,flags) ModCPPOnlyAsm(basename,flags) @@\ 88 RemoveFile(basename.o) @@\ 89 $(MODAS) $(MODASFLAGS) -o basename.o basename.i @@\ 90 RemoveFile(basename.i) 91 92/* This overrides the NormalRelocatableTarget in Imake.rules */ 93#undef NormalRelocatableTarget 94#define NormalRelocatableTarget(objname,objlist) @@\ 95AllTarget(objname.Osuf) @@\ 96 @@\ 97objname.Osuf: objlist $(EXTRALIBRARYDEPS) @@\ 98 RemoveFile($@) @@\ 99 $(MODLD) $(MODLDCOMBINEFLAGS) objlist -o $@ 100 101/* This overrides the NormalDepRelocatableTarget in Imake.rules */ 102#undef NormalDepRelocatableTarget 103#define NormalDepRelocatableTarget(objname,deplist,objlist) @@\ 104AllTarget(objname.Osuf) @@\ 105 @@\ 106objname.Osuf: deplist $(EXTRALIBRARYDEPS) @@\ 107 RemoveFile($@) @@\ 108 $(MODLD) $(MODLDCOMBINEFLAGS) objlist -o $@ 109 110/* This overrides the RanLibrary in Imake.rules */ 111#if DoRanlibCmd || NeedModuleRanlib 112#undef RanLibrary 113#define RanLibrary(args) $(MODRANLIB) args 114#endif 115 116/* This overrides the MakeLibrary rule in Imake.rules */ 117#undef MakeLibrary 118#define MakeLibrary(libname,objlist) $(MODAR) libname objlist 119 120/* This overrides the LibraryTargetName rule in Imake.rules */ 121#undef LibraryTargetName 122#define LibraryTargetName(libname)Concat(lib,libname.a) 123 124/* This disables an OS/2 rule */ 125#undef BuildLibSupportLibs 126#define BuildLibSupportLibs(dummy) 127 128#endif /* IHaveModules */ 129