summaryrefslogtreecommitdiff
path: root/xorg.tmpl
blob: 73a8a8ca5106e5835808b93a3ca9570cb518fbaf (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
XCOMM $Xorg: xf86.tmpl,v 1.3 2000/08/17 19:41:48 cpqbld Exp $
XCOMM $XdotOrg: xc/config/cf/xorg.tmpl,v 1.3 2004/10/09 22:04:13 herrb Exp $

#ifndef ConfigDefines
# define ConfigDefines -D__XCONFIGFILE__='"$(XCONFIGFILE)"' \
	-D__XCONFIGDIR__='"$(XCONFIGDIR)"' -D__XLOGFILE__='"$(XLOGFILE)"' \
	-D__XSERVERNAME__='"$(XSERVERNAME)"'
#endif

CONFIG_DEFINES = ConfigDefines

#ifndef ServerDefines
#define ServerDefines StandardDefines VersionDefines
#endif

#ifdef BuilderEMailAddr
BUILDERADDR = BuilderEMailAddr
#else
BUILDERADDR = "xorg@lists.freedesktop.org"
#endif
#ifdef VendorSupportAddress
 VENDORSUPPORT = VendorSupportAddress
 BUGMSG = -DBUILDERADDR='$(BUILDERADDR)' -DVENDORSUPPORT='$(VENDORSUPPORT)'
#else
 BUGMSG = -DBUILDERADDR='$(BUILDERADDR)'
#endif

#if defined(XF86DriverSDK)
    BUILDMODULEDIR = $(DRIVERSDKMODULEDIR)
    BUILDMODULETOP = ..
    TOP_INCLUDES = TopIncludes
   IMAKE_DEFINES = -DXF86DriverSDK=1
#ifdef UseInstalled
       IMAKE_CMD = $(IMAKE) -DUseInstalled -I$(TOP) -I$(IRULESRC) \
		   $(IMAKE_DEFINES) $(IMAKE_WARNINGS)
#else
       IMAKE_CMD = $(IMAKE) -I$(TOP) -I$(IRULESRC) \
		   $(IMAKE_DEFINES) $(IMAKE_WARNINGS)
#endif

#undef ImakeSubCmdHelper
#ifdef UseInstalled
#define ImakeSubCmdHelper $(IMAKE) -DUseInstalled -I$(IMAKETOP) \
			  -I$(IRULESRC) $(IMAKE_DEFINES) $(IMAKE_WARNINGS)
#else
#define ImakeSubCmdHelper $(IMAKEPREFIX)$(IMAKE) -I$(IMAKETOP) \
			  $(IMAKE_DEFINES) $(IMAKE_WARNINGS) \
			  -I$(IMAKEPREFIX)$(IRULESRC)
#endif
#endif

#ifndef JoystickSupport
#define JoystickSupport		NO
#endif

/*
 * Module support: These overrides must be here, not in xf86.rules,
 * because they will replace rules after having seen the first lines
 * of Imakefile (include <Server.tmpl>)
 */

#ifndef ProPoliceSupport
#define ProPoliceSupport	O
#endif

#ifndef HasGccMergeConstants
#define HasGccMergeConstants	NO
#endif

#if HasGccMergeConstants && DoLoadableServer && !MakeDllModules
MODULE_GCC_FLAGS = -fno-merge-constants
#endif

#if defined(IHaveModules) && MakeDllModules
MODULE_PIC_FLAGS = $(PICFLAGS)
#endif

MODULE_CFLAGS = $(MODULE_PIC_FLAGS) $(MODULE_GCC_FLAGS)

#if defined(IHaveModules)
# if DoLoadableServer
MODULE_DEFINES = -DIN_MODULE -DXFree86Module
# else
MODULE_DEFINES = -DXFree86Module
# endif
#endif

#if defined(IHaveModules) && DoLoadableServer

/* This overrides the ObjectCompile in Imake.rules! */
#undef ObjectCompile
#define ObjectCompile(options) RemoveFile($@)                           @@\
	ClearmakeOSName\
	$(MODCC) $(MODCFLAGS) options -c $*.c

/* This overrides an AssembleObject in xf86.rules or in an os-dependent
 * rules file (currently only minix.cf and os2.rules (uncritical))
 */
#define ModCPPOnlyAsm(basename,options) RemoveFile(basename.i)		@@\
	$(MODCPP) AsmDefines $(DEFINES) $(INCLUDES) options basename.S | \	@@\
		grep -v '^\#' > basename.i

#undef AssembleObject
#define AssembleObject(basename,flags) ModCPPOnlyAsm(basename,flags)	@@\
	RemoveFile(basename.o)						@@\
	$(MODAS) $(MODASFLAGS) -o basename.o basename.i			@@\
	RemoveFile(basename.i)

/* This overrides the NormalRelocatableTarget in Imake.rules */
#undef NormalRelocatableTarget
#define	NormalRelocatableTarget(objname,objlist)			@@\
AllTarget(objname.Osuf)							@@\
									@@\
objname.Osuf: objlist $(EXTRALIBRARYDEPS)				@@\
	RemoveFile($@)							@@\
	$(MODLD) $(MODLDCOMBINEFLAGS) objlist -o $@

/* This overrides the NormalDepRelocatableTarget in Imake.rules */
#undef NormalDepRelocatableTarget
#define	NormalDepRelocatableTarget(objname,deplist,objlist)		@@\
AllTarget(objname.Osuf)							@@\
									@@\
objname.Osuf: deplist $(EXTRALIBRARYDEPS)				@@\
	RemoveFile($@)							@@\
	$(MODLD) $(MODLDCOMBINEFLAGS) objlist -o $@

/* This overrides the RanLibrary in Imake.rules */
#if DoRanlibCmd || NeedModuleRanlib
#undef RanLibrary
#define RanLibrary(args) $(MODRANLIB) args
#endif

/* This overrides the MakeLibrary rule in Imake.rules */
#undef MakeLibrary
#define MakeLibrary(libname,objlist) $(MODAR) libname objlist

/* This overrides the LibraryTargetName rule in Imake.rules */
#undef LibraryTargetName
#define LibraryTargetName(libname)Concat(lib,libname.a)

/* This disables an OS/2 rule */
#undef BuildLibSupportLibs
#define BuildLibSupportLibs(dummy)

#endif /* IHaveModules */