source: trunk/src/win32k/win32k.tools.mk@ 10367

Last change on this file since 10367 was 6918, checked in by bird, 24 years ago

Watcom: support to watcom+nmake.

File size: 9.7 KB
Line 
1# $Id: win32k.tools.mk,v 1.11 2001-10-01 01:42:09 bird Exp $
2
3#
4# Win32k common tools makefile.
5#
6# Copyright 1998-2001 knut st. osmundsen (knut.stange.osmundsen@mynd.no)
7#
8# Project Odin Software License can be found in LICENSE.TXT
9#
10#
11
12
13#
14# Sanity check
15#
16!ifndef WIN32KOBJ
17!error "Fatal error! WIN32KOBJ is not defined!"
18!endif
19!ifndef WIN32KLIST
20!error "Fatal error! WIN32KLIST is not defined!"
21!endif
22
23
24#
25# Compiler and Linker.
26#
27
28!if "$(VAC3)" == "1" || "$(VAC36)" == "1"
29#
30# IBM VisualAge for C++ v3.08 or IBM C/C++ Tools v3.6.5
31#
32CC16 = clfix.exe $(MSCPATH)\binp\cl.exe
33CC = icc
34CCPP = icc
35LD = ilink
36ILIB = ilib /nobackup /nologo
37!if "$(CCENV)" == "VAC36"
38ILIB = ilib /nofree /nobackup /nologo
39!endif
40
41!ifndef DEBUG
42CFLAGS16 = -c -W0 -Asfw /NTCODE16 /NDDATA16 -G2s -Zp -Zl -nologo -Ogeitln -Gs
43CFLAGS = -q -Ge -Gs- -Gr+ -Rn -Ss+ -Mp -Wall+ppt-ppc-inl-cnv-gnr-vft-gen-uni-ext- -Ti+ -G4 -Oc+
44CPPFLAGS = -q -Ge -Gs- -Gr+ -Rn -Ss+ -Mp -Wall+ppt-ppc-inl-cnv-gnr-vft- -Gx+ -Ti+ -G4 -Oc+
45LFLAGS = /nologo /MAP /NOI /NOE /NOD /A:16 /PACKCODE /PACKDATA /EXEPACK:2 /NODEBUG
46!else
47CFLAGS16 = -c -W0 -Asfw /NTCODE16 /NDDATA16 -G2s -Zp -Zl -nologo -Zi -Owis
48CFLAGS = -q -Ge -Gs- -Gr+ -Rn -Ss+ -Mp -Wall+ppt-ppc-inl-cnv-gnr-vft-gen-uni-ext- -Ti+ -Oc+ -Os-
49CPPFLAGS = -q -Ge -Gs- -Gr+ -Rn -Ss+ -Mp -Wall+ppt-ppc-inl-cnv-gnr-vft- -Gx+ -Ti+ -Oc+ -Os-
50!ifdef NODEBUGINFO
51LFLAGS = /nologo /MAP /NOI /NOE /NOD /A:16 /PACKCODE /PACKDATA /EXEPACK:2 /NODEBUG
52!else
53LFLAGS = /nologo /MAP /NOI /NOE /NOD /A:16 /PACKCODE /PACKDATA /NOEXEPACK /DEBUG
54!endif
55!endif
56
57!else
58
59#
60# Watcom C/C++ Compilers and linker.
61#
62!if "$(WAT)" == "1"
63CC16 = wcc
64CC = wcc386
65CCPP = wpp386
66LD = wlink
67ILIB = wlib /nobackup /nologo \
68
69#!error "Compiler is not yet supported!"
70# need to get win32k.lib compiled...
71DDKPATH=
72TOOLKIT=
73MSCPATH=
74!else
75#
76# Other compilers
77#
78!error "Compiler is not supported!"
79!endif
80!endif
81
82
83#
84# Assembler and other DDK tools.
85#
86AS = alp
87AFLAGS = -Sv:ALP -Mb -Li +Od
88H2INC = $(DDKPATH)\tools\h2inc.exe -c -w -f -d
89
90
91#
92# Defines
93#
94!ifdef DEBUG
95CDEFINES = -DWIN32K -DRING0 -D__WIN32OS2__ -D__WINE__ -DDEBUG
96CDEFINES16 = -DRING0 -DDEBUG
97ADEFINES = -D:WIN32K -D:DEBUG
98!else
99CDEFINES = -DWIN32K -DRING0 -D__WIN32OS2__ -D__WINE__ -DRELEASE
100CDEFINES16 = -DRING0 -DRELEASE
101ADEFINES = -D:WIN32K -D:RELEASE
102!endif
103
104CDEFINES_TST = $(CDEFINES) -DR3TST
105CDEFINES16_TST = $(CDEFINES16) -DR3TST
106
107
108#
109# Includepaths
110#
111CINCLUDES = -I$(WIN32KINCLUDE) \
112 -I$(TOOLKIT)\h \
113 -I$(VACPATH)\include \
114 -I$(DDKPATH)\h \
115 -I$(DDKPATH)\src\dev\dasd\diskh \
116 -I. \
117 -I$(ODIN32_INCLUDE) \
118 -I$(ODIN32_INCLUDE)\win
119
120CINCLUDES16= -I$(WIN32KINCLUDE) \
121 -I. \
122 -I$(DDKPATH)\h \
123 -I$(MSCPATH)\include \
124 -I$(ODIN32_INCLUDE) \
125 -I$(TOOLKIT)\h
126
127AINCLUDES = -Fdi:$(WIN32KINCLUDE) \
128 -Fdi:$(DDKPATH)\inc
129
130
131#
132# Sanity check.
133#
134!ifndef RTLLIB_NRE
135!error "Fatal error RTLLIB_NRE is not defined.
136!endif
137
138
139#
140# Suffixes and interference rules.
141#
142.SUFFIXES: .obj .cpp .c .asm .obj_e .obj_tst .obj_init .obj_tst_init .inc
143
144C16COMPILE = $(CC16) -c $(CFLAGS16) $(CDEFINES16) $(CINCLUDES16) -Fa$(WIN32KLIST)\$(@B).s -Fo$(WIN32KOBJ)\$(@F) $<
145C16COMPILE_INIT = $(CC16) -c $(CFLAGS16) $(CDEFINES16) $(CINCLUDES16) -Fa$(WIN32KLIST)\$(@B).s -Fo$(WIN32KOBJ)\$(@F) /NTCODE16_INIT /NDDATA16_INIT $<
146CCOMPILE = $(CC) -c $(CFLAGS) $(CDEFINES) $(CINCLUDES) -Fa$(WIN32KLIST)\$(@B).s -Fo$(WIN32KOBJ)\$(@F) $<
147CPPCOMPILE = $(CCPP) -c $(CPPFLAGS) $(CDEFINES) $(CINCLUDES) -Fa$(WIN32KLIST)\$(@B).s -Fo$(WIN32KOBJ)\$(@F) $<
148ASMCOMPILE = $(AS) $(AFLAGS) $(ADEFINES) $(AINCLUDES) $< -Fl:$(WIN32KLIST)\$(@B).lst -Fo:$(WIN32KOBJ)\$(@F)
149
150C16COMPILE_TST = $(CC16) -c $(CFLAGS16) $(CDEFINES16_TST) $(CINCLUDES16) -Fa$(WIN32KLIST)\$(@B).tst.s -Fo$(WIN32KOBJ)\$(@F) $<
151C16COMPILE_TST_INIT = $(CC16) -c $(CFLAGS16) $(CDEFINES16_TST) $(CINCLUDES16) -Fa$(WIN32KLIST)\$(@B).tst.s -Fo$(WIN32KOBJ)\$(@F) /NTCODE16_INIT /NDDATA16_INIT $<
152CCOMPILE_TST = $(CC) -c $(CFLAGS) $(CDEFINES_TST) $(CINCLUDES) -Fa$(WIN32KLIST)\$(@B).tst.s -Fo$(WIN32KOBJ)\$(@F) $<
153CCOMPILE_TST_TEST = $(CC) -c $(CFLAGS) $(CDEFINES_TST) $(CINCLUDES) -Fa$(WIN32KLIST)\$(@B).tst.s -Fo$(WIN32KOBJ)\$(@F) $<
154CPPCOMPILE_TST = $(CCPP) -c $(CPPFLAGS) $(CDEFINES_TST) $(CINCLUDES) -Fa$(WIN32KLIST)\$(@B).tst.s -Fo$(WIN32KOBJ)\$(@F) $<
155CPPCOMPILE_TST_TEST = $(CCPP) -c $(CPPFLAGS) $(CDEFINES_TST) $(CINCLUDES) -Fa$(WIN32KLIST)\$(@B).tst.s -Fo$(WIN32KOBJ)\$(@F) $<
156ASMCOMPILE_TST = $(ASMCOMPILE)
157
158
159!ifndef __VERSION__
160SOURCEFILE = $<
161!else
162SOURCEFILE = $^.
163!endif
164
165
166{dev16}.c.obj:
167 @$(ECHO) compiling 16bit dev16: $(SOURCEFILE)
168 $(C16COMPILE)
169{dev16}.c.obj_init:
170 @$(ECHO) compiling 16bit dev16: $(SOURCEFILE)
171 $(C16COMPILE_INIT)
172 @$(CP) $@ $@.obj
173
174{dev16}.c.obj_tst:
175 @$(ECHO) compiling 16bit dev16 tst: $(SOURCEFILE)
176 @$(C16COMPILE_TST)
177# @$(CP) $@ $@.obj
178{dev16}.c.obj_tst_init:
179 @$(ECHO) compiling 16bit dev16 tst: $(SOURCEFILE)
180 @$(C16COMPILE_TST_INIT)
181# @$(CP) $@ $@.obj
182
183
184{dev32}.asm{$(WIN32KOBJ)}.obj:
185 @$(ECHO) assembling dev32: $(SOURCEFILE)
186 @$(ASMCOMPILE)
187{dev32}.asm.obj:
188 @$(ECHO) assembling dev32: $(SOURCEFILE)
189 @$(ASMCOMPILE)
190
191{dev32}.c{$(WIN32KOBJ)}.obj:
192 @$(ECHO) compiling 32bit dev32: $(SOURCEFILE)
193 @$(CCOMPILE)
194{dev32}.c.obj:
195 @$(ECHO) compiling 32bit dev32: $(SOURCEFILE)
196 @$(CCOMPILE)
197
198{dev32}.c{$(WIN32KOBJ)}.obj_tst:
199 @$(ECHO) compiling 32bit dev32 tst: $(SOURCEFILE)
200 @$(CCOMPILE_TST)
201 @$(CP) $@ $@.obj
202{dev32}.c.obj_tst:
203 @$(ECHO) compiling 32bit dev32 tst: $(SOURCEFILE)
204 @$(CCOMPILE_TST)
205 @$(CP) $@ $@.obj
206
207{dev32}.cpp{$(WIN32KOBJ)}.obj:
208 @$(ECHO) compiling 32bit dev32: $(SOURCEFILE)
209 @$(CCOMPILE)
210{dev32}.cpp.obj:
211 @$(ECHO) compiling 32bit dev32: $(SOURCEFILE)
212 @$(CCOMPILE)
213
214
215{elf2lx}.c{$(WIN32KOBJ)}.obj:
216 @$(ECHO) compiling 32bit elf2lx: $(SOURCEFILE)
217 @$(CCOMPILE)
218{elf2lx}.c.obj:
219 @$(ECHO) compiling 32bit elf2lx: $(SOURCEFILE)
220 @$(CCOMPILE)
221
222{elf2lx}.cpp{$(WIN32KOBJ)}.obj:
223 @$(ECHO) compiling 32bit elf2lx: $(SOURCEFILE)
224 @$(CPPCOMPILE)
225{elf2lx}.cpp.obj:
226 @$(ECHO) compiling 32bit elf2lx: $(SOURCEFILE)
227 @$(CPPCOMPILE)
228
229
230{k32}.asm{$(WIN32KOBJ)}.obj:
231 @$(ECHO) assembling k32: $(SOURCEFILE)
232 @$(ASMCOMPILE)
233{k32}.asm.obj:
234 @$(ECHO) assembling k32: $(SOURCEFILE)
235 @$(ASMCOMPILE)
236
237{k32}.c{$(WIN32KOBJ)}.obj:
238 @$(ECHO) compiling 32bit k32: $(SOURCEFILE)
239 @$(CCOMPILE)
240{k32}.c.obj:
241 @$(ECHO) compiling 32bit k32: $(SOURCEFILE)
242 @$(CCOMPILE)
243
244{k32}.cpp{$(WIN32KOBJ)}.obj:
245 @$(ECHO) compiling 32bit k32: $(SOURCEFILE)
246 @$(CPPCOMPILE)
247{k32}.cpp.obj:
248 @$(ECHO) compiling 32bit k32: $(SOURCEFILE)
249 @$(CPPCOMPILE)
250
251
252{ldr}.asm{$(WIN32KOBJ)}.obj:
253 @$(ECHO) assembling ldr: $(SOURCEFILE)
254 @$(ASMCOMPILE)
255{ldr}.asm.obj:
256 @$(ECHO) assembling ldr: $(SOURCEFILE)
257 @$(ASMCOMPILE)
258
259{ldr}.c{$(WIN32KOBJ)}.obj:
260 @$(ECHO) compiling 32bit ldr: $(SOURCEFILE)
261 @$(CCOMPILE)
262{ldr}.c.obj:
263 @$(ECHO) compiling 32bit ldr: $(SOURCEFILE)
264 @$(CCOMPILE)
265
266{ldr}.cpp{$(WIN32KOBJ)}.obj:
267 @$(ECHO) compiling 32bit ldr: $(SOURCEFILE)
268 @$(CPPCOMPILE)
269{ldr}.cpp.obj:
270 @$(ECHO) compiling 32bit ldr: $(SOURCEFILE)
271 @$(CPPCOMPILE)
272
273
274{api}.asm{$(WIN32KOBJ)}.obj:
275 @$(ECHO) assembling api: $(SOURCEFILE)
276 @$(ASMCOMPILE)
277{api}.asm.obj:
278 @$(ECHO) assembling api: $(SOURCEFILE)
279 @$(ASMCOMPILE)
280
281{api}.c{$(WIN32KOBJ)}.obj:
282 @$(ECHO) compiling 32bit api: $(SOURCEFILE)
283 @$(CCOMPILE)
284{api}.c.obj:
285 @$(ECHO) compiling 32bit api: $(SOURCEFILE)
286 @$(CCOMPILE)
287
288{api}.cpp{$(WIN32KOBJ)}.obj:
289 @$(ECHO) compiling 32bit api: $(SOURCEFILE)
290 @$(CPPCOMPILE)
291{api}.cpp.obj:
292 @$(ECHO) compiling 32bit api: $(SOURCEFILE)
293 @$(CPPCOMPILE)
294
295
296{misc}.asm{$(WIN32KOBJ)}.obj:
297 @$(ECHO) assembling misc: $(SOURCEFILE)
298 $(ASMCOMPILE)
299{misc}.asm.obj:
300 @$(ECHO) assembling misc: $(SOURCEFILE)
301 $(ASMCOMPILE)
302
303{misc}.c{$(WIN32KOBJ)}.obj:
304 @$(ECHO) compiling 32bit misc: $(SOURCEFILE)
305 @$(CCOMPILE)
306{misc}.c.obj:
307 @$(ECHO) compiling 32bit misc: $(SOURCEFILE)
308 @$(CCOMPILE)
309
310{misc}.c{$(WIN32KOBJ)}.obj_tst:
311 @$(ECHO) compiling 32bit misc tst: $(SOURCEFILE)
312 @$(CCOMPILE_TST)
313# @$(CP) $@ $@.obj
314{misc}.c.obj_tst:
315 @$(ECHO) compiling 32bit misc tst: $(SOURCEFILE)
316 @$(CCOMPILE_TST)
317# @$(CP) $@ $@.obj
318
319{misc}.cpp{$(WIN32KOBJ)}.obj:
320 @$(ECHO) compiling 32bit misc: $(SOURCEFILE)
321 @$(CPPCOMPILE)
322{misc}.cpp.obj:
323 @$(ECHO) compiling 32bit misc: $(SOURCEFILE)
324 @$(CPPCOMPILE)
325
326
327{pe2lx}.c{$(WIN32KOBJ)}.obj:
328 @$(ECHO) compiling 32bit pe2lx: $(SOURCEFILE)
329 @$(CCOMPILE)
330{pe2lx}.c.obj:
331 @$(ECHO) compiling 32bit pe2lx: $(SOURCEFILE)
332 @$(CCOMPILE)
333
334{pe2lx}.cpp{$(WIN32KOBJ)}.obj:
335 @$(ECHO) compiling 32bit pe2lx: $(SOURCEFILE)
336 @$(CPPCOMPILE)
337{pe2lx}.cpp.obj:
338 @$(ECHO) compiling 32bit pe2lx: $(SOURCEFILE)
339 @$(CPPCOMPILE)
340
341
342{test}.asm{$(WIN32KOBJ)}.obj:
343 @$(ECHO) assembling test: $(SOURCEFILE)
344 @$(ASMCOMPILE_TST)
345{test}.asm.obj:
346 @$(ECHO) assembling test: $(SOURCEFILE)
347 @$(ASMCOMPILE_TST)
348
349{test}.c{$(WIN32KOBJ)}.obj:
350 @$(ECHO) compiling 32bit test: $(SOURCEFILE)
351 @$(CCOMPILE_TST_TEST)
352{test}.c.obj:
353 @$(ECHO) compiling 32bit test: $(SOURCEFILE)
354 @$(CCOMPILE_TST_TEST)
355
356{test}.cpp{$(WIN32KOBJ)}.obj:
357 @$(ECHO) compiling 32bit test: $(SOURCEFILE)
358 @$(CPPCOMPILE_TST_TEST)
359{test}.cpp.obj:
360 @$(ECHO) compiling 32bit test: $(SOURCEFILE)
361 @$(CPPCOMPILE_TST_TEST)
362
363
Note: See TracBrowser for help on using the repository browser.