source: trunk/src/win32k/Makefile@ 10366

Last change on this file since 10366 was 9876, checked in by sandervl, 23 years ago

KSO: makefile updates

File size: 5.1 KB
Line 
1# $Id: Makefile,v 1.74 2003-02-28 10:32:23 sandervl Exp $
2
3#
4# Win32k 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# Check that makefile.inc exists, If it doesn't we'll try make it.
14# Check that makefile.inc is newer than configure.cmd.
15# If not newer this might be a fatal problem, so we'll fail.
16#
17!if [..\..\tools\bin\Exists.cmd makefile.inc] == 1
18! if [echo No makefile.inc - Reconfiguring Win32k... & configure.cmd -noninteractive]
19! endif
20!endif
21!if [Check.cmd $(MAKE) -nologo -q -f Check.mk makefile.inc] != 0
22! error makefile.inc is older than configure.cmd. Re-run /src/win32k/configure.cmd!
23!endif
24
25
26#
27# Include path definitions and check if they need updating.
28# Include Win32k tools and settings.
29#
30!include makefile.inc
31!if [..\..\tools\bin\Exists.cmd $(WIN32KINCLUDE)\OS2Krnl.h] == 1
32! if [echo Bad makefile.inc - Reconfiguring Win32k... & configure.cmd -noninteractive]
33! endif
34! include makefile.inc
35!endif
36!include ../../makefile.inc
37!include win32k.tools.mk
38
39
40#
41# Subdirectories.
42#
43SUBDIRS = \
44.\lib \
45.\rexx \
46.\utils
47
48
49#
50# Targets.
51#
52all:
53!if "$(DDKPATH)" == "" || "$(MSCPATH)" == "" || "$(TOOLKIT)" == "" || "$(VACPATH)" == ""
54 $(MAKE_CMD) -f xx2lx.mak
55 $(DODIRS) "lib" $(MAKE_CMD)
56!else
57 $(MAKE_CMD) -f win32k.mak
58 $(MAKE_CMD) -f xx2lx.mak
59 $(DODIRS) "$(SUBDIRS)" $(MAKE_CMD)
60!endif
61
62
63#
64# Individual Target Forwarder Rules.
65#
66$(WIN32KBIN)\win32k.sys win32k.sys win32k \
67$(WIN32KBIN)\xx2lx.exe xx2lx.exe xx2lx: .force
68 $(MAKE_CMD) -f $(@B).mak
69
70$(WIN32KBIN)\win32ktst.exe win32ktst.exe win32ktst \
71$(WIN32KBIN)\extact.exe extract.exe extract \
72$(WIN32KBIN)\mkcalltab.exe mkcalltab.exe mkcalltab \
73$(WIN32KBIN)\libconv.exe libconv.exe libconv \
74clfix.exe: .force
75 $(MAKE_CMD) -f win32k.mak $(@R).exe
76
77$(WIN32KINCLUDE)\win32k.inc win32k.inc \
78$(WIN32KINCLUDE)\api.inc api.inc \
79$(WIN32KINCLUDE)\options.inc options.inc: .force
80 $(MAKE_CMD) -f win32k.mak $(WIN32KINCLUDE)\$(@B).inc
81
82$(WIN32KBASE)\ldr\calltaba.asm ldr\calltaba.asm: .force
83 $(MAKE_CMD) -f $(WIN32KBASE)\ldr\calltaba.asm
84
85$(WIN32KBASE)\test\TstFakers.c test\TstFakers.c: .force
86 $(MAKE_CMD) -f $(WIN32KBASE)\test\TstFakers.c
87
88win32kcc.exe win32kcc:
89 $(DODIRS) "utils" $(MAKE_CMD)
90
91
92#
93# Lib rule - make the win32k.lib object library.
94#
95lib:
96!ifdef BUILD_MODE
97 $(DODIRS) ".\lib kKrnlLib" $(MAKE_CMD) lib
98!else
99 $(DODIRS) ".\lib" $(MAKE_CMD) lib
100!endif
101
102
103#
104# Cleanup rule.
105#
106clean:
107 @$(ECHO) cleaning....
108 $(RM) *.sys *.dll *.lib *.obj *.exe *.sym *.map *.pch *.err \
109 $(ODIN32_BIN)\win32k.sys \
110 $(ODIN32_BIN)\win32k.sym \
111 $(ODIN32_BIN)\win32k.ddp
112!if "$(WIN32KBIN)" != ""
113 $(RM) $(WIN32KBIN)\*.*
114!endif
115!if "$(WIN32KOBJ)" != ""
116 $(RM) $(WIN32KOBJ)\*obj* \
117 $(WIN32KOBJ)\*lnk* \
118 $(WIN32KOBJ)\*res* \
119 $(WIN32KOBJ)\*lib* \
120 $(WIN32KOBJ)\*def*
121!endif
122!if "$(WIN32KLIST)" != ""
123 $(RM) $(WIN32KLIST)\*lst* \
124 $(WIN32KLIST)\*.s* \
125 $(WIN32KLIST)\*as*
126!endif
127!if "$(WIN32KBASE)" != ""
128 $(RM) $(WIN32KBASE)\ldr\calltaba.asm $(WIN32KBASE)\test\TstFakers.c
129!endif
130 $(DODIRS) "$(SUBDIRS)" $(MAKE_CMD) clean
131
132#
133# cleanall
134#
135cleanall:
136 $(RM) -Rf Bin Object List
137 $(DODIRS) ".\lib" $(MAKE_CMD) cleanall
138
139#
140# Dependencies - all deps are autogenereated.
141#
142dep:
143 $(ODIN32_TOOLS)\fastdep @<<
144 -o$$(WIN32KOBJ) $(CINCLUDES) -xldr\calltaba.asm -xtest\TstFakers.c
145 misc\*.c* ldr\*.c* dev32\*.c* pe2lx\*.c* k32\*.c* elf2lx\*.c* test\*.c*
146 -objobj_tst
147 misc\*.c* ldr\*.c* dev32\*.c* pe2lx\*.c* k32\*.c* elf2lx\*.c* test\*.c*
148 $(WIN32KINCLUDE)\*.h
149<<
150 $(ODIN32_TOOLS)\fastdep @<<
151 -a+ -o$$(WIN32KOBJ) -I$(WIN32KINCLUDE) -I$(DDKPATH)\inc
152 -xldr\calltaba.asm -xtest\TstFakers.c
153 dev16\*.asm ldr\*.asm misc\*.asm dev32\*.asm pe2lx\*.asm k32\*.asm elf2lx\*.asm test\*.asm
154 $(WIN32KINCLUDE)\*.inc
155<<
156 $(ODIN32_TOOLS)\fastdep @<<
157 -a+ -o$$(WIN32KOBJ) $(CINCLUDES16)
158 dev16\*.c*
159 -objobj_e $(CINCLUDES16) dev16\*.c*
160 -objobj_c $(CINCLUDES16) dev16\*.c*
161 -objobj_tst $(CINCLUDES16) dev16\*.c*
162 -objobj_init $(CINCLUDES16) dev16\*.c*
163 -objobj_tst_init $(CINCLUDES16) dev16\*.c*
164<<
165 $(DODIRS) "$(SUBDIRS)" $(MAKE_CMD) dep
166
167
168#
169# Generate Visual SlickEdit project file
170#
171win32k.vpj:
172 ..\..\tools\vslick\genproject.cmd $@ $(CINCLUDES) -s -r
173
174
175#
176# Api doc
177#
178StateUpd:
179 ..\..\tools\bin\StateUpd.exe -Dll:Win32k dev16 dev32 misc ldr elf2lx mmf k32
180 ..\..\tools\bin\StateUpd.exe -Dll:Pe2Lx Pe2Lx
181
182#
183# Documentation generation - require SDS - http://www.ii.uib.no/~stig/
184# (Old SDS 0.33 - don't work anylonger.)
185#
186lxdoc:
187 cpp2sds -o DocsA\ -i include\modulebase.h include\pe2lx.h ldr\modulebase.cpp pe2lx\pe2lx.cpp
188 cd DocsA
189 exp sds2doc -ai *.sds
190
191fulldoc:
192 exp cpp2sds -o DocsA\ -i include\*.h *.cpp ldr\*.cpp misc\*.cpp pe2lx\*.cpp
193 cd DocsA
194 exp sds2doc -ai *.sds
195
196
197#
198# Dummy rule for force.
199#
200.force:
201
202
203#
204# Stub the rest of the rules.
205#
206$(COMMONRULES:clean dep lib all=):
207
208
Note: See TracBrowser for help on using the repository browser.