added cabinet,msi and msiexec to the Makefile. This gets IE, Office and friends a...
[reactos.git] / reactos / Makefile
1 # $Id$
2 #
3 # Global makefile
4 #
5
6 PATH_TO_TOP = .
7
8 include $(PATH_TO_TOP)/rules.mak
9 include $(PATH_TO_TOP)/config
10
11 #
12 # Define to build ReactOS external targets
13 #
14 ifeq ($(ROS_BUILD_EXT),)
15 ROS_BUILD_EXT = no
16 else
17 ROS_BUILD_EXT = yes
18 endif
19
20 ifneq ($(MINIMALDEPENDENCIES),no)
21 IMPLIB =
22 else
23 IMPLIB = implib
24 endif
25
26 # Boot loaders
27 BOOT_LOADERS = freeldr
28
29 # Required to run the system
30 COMPONENTS = ntoskrnl
31
32 # Hardware Abstraction Layers
33 # halx86
34 HALS = halx86/up halx86/mp
35
36 # Bus drivers
37 # acpi isapnp pci
38 BUS = acpi isapnp pci
39
40 # Filesystem libraries
41 # vfatlib
42 LIB_FSLIB = vfatlib
43
44 # Static libraries
45 LIB_STATIC = string rosrtl epsapi uuid libwine zlib rtl tgetopt pseh adns dxguid strmiids
46
47 # Keyboard layout libraries
48 DLLS_KBD = kbdda kbddv kbdes kbdfr kbdgr kbdse kbduk kbdus
49
50 # Control Panels
51 DLLS_CPL = cpl
52
53 # Shell extensions
54 DLLS_SHELLEXT = shellext
55
56 # User mode libraries
57 # libpcap packet epsapi
58 DLLS = acledit aclui advapi32 advpack cabinet cards comctl32 crtdll comdlg32 d3d8thk dbghelp expat fmifs freetype \
59 gdi32 gdiplus glu32 hid imagehlp imm32 iphlpapi kernel32 lzexpand mesa32 midimap mmdrv mpr msacm msafd \
60 msgina msi msimg32 msvcrt20 msvideo mswsock netapi32 ntdll ole32 oleaut32 oledlg olepro32 opengl32 \
61 packet psapi riched20 richedit rpcrt4 samlib secur32 setupapi shell32 shlwapi snmpapi syssetup twain \
62 unicode user32 userenv version wininet winmm winspool ws2help ws2_32 wsock32 wshirda dnsapi \
63 urlmon shdocvw dinput dinput8 dxdiagn devenum dsound $(DLLS_KBD) $(DLLS_CPL) $(DLLS_SHELLEXT)
64
65 SUBSYS = smss win32k csrss ntvdm
66
67 #
68 # Select the server(s) you want to build
69 #
70 #SERVERS = posix linux os2
71 SERVERS = win32
72
73 # Driver support libraries
74 #bzip2 zlib oskittcp
75 DRIVERS_LIB = bzip2 oskittcp ip csq
76
77 # Kernel mode device drivers
78 # Obsolete: ide
79 # beep blue floppy null parallel ramdrv serenum serial
80 DEVICE_DRIVERS = beep blue debugout null serial bootvid
81
82 # Kernel mode input drivers
83 INPUT_DRIVERS = keyboard mouclass psaux sermouse
84
85 # Kernel mode file system drivers
86 # cdfs ext2 fs_rec ms np vfat
87 FS_DRIVERS = cdfs fs_rec ms np vfat mup ntfs
88
89 # Kernel mode networking drivers
90 # afd ndis npf tcpip tdi wshtcpip
91 NET_DRIVERS = afd ndis npf tcpip tdi wshtcpip
92
93 # Kernel mode networking device drivers
94 # ne2000 pcnet
95 NET_DEVICE_DRIVERS = ne2000 pcnet
96
97 # Kernel mode storage drivers
98 # atapi cdrom class2 disk scsiport
99 STORAGE_DRIVERS = atapi cdrom class2 disk floppy scsiport diskdump
100
101 # System applications
102 # autochk cmd format services setup usetup welcome winlogon msiexec
103 SYS_APPS = autochk calc cmd explorer expand format msiexec regedt32 regsvr32 \
104 reporterror services setup taskmgr userinit usetup welcome vmwinst \
105 winlogon regedit winefile notepad reactos
106
107 # System services
108 # rpcss eventlog
109 SYS_SVC = rpcss eventlog
110
111 APPS = testsets utils
112
113
114 # External modules and (sub)systems for ReactOS
115 # rosapps posix os2 (requires c++) java (non-existant)
116 EXTERNALS = rosapps
117
118 ifeq ($(ROS_BUILD_EXT),yes)
119 EXT_MODULES = $(EXTERNALS)
120 else
121 EXT_MODULES =
122 endif
123
124 KERNEL_DRIVERS = $(DRIVERS_LIB) $(DEVICE_DRIVERS) $(INPUT_DRIVERS) $(FS_DRIVERS) \
125 $(NET_DRIVERS) $(NET_DEVICE_DRIVERS) $(STORAGE_DRIVERS) VIDEO_DRIVERS USB_DRIVERS
126
127 # Regression tests
128 REGTESTS = regtests
129
130 all: bootstrap $(BOOT_LOADERS) $(COMPONENTS) $(REGTESTS) $(HALS) $(BUS) $(LIB_FSLIB) \
131 $(DLLS) $(SUBSYS) $(KERNEL_DRIVERS) $(SYS_APPS) $(SYS_SVC) $(APPS) $(EXT_MODULES)
132
133 bootstrap: dk implib iface_native
134
135 depends: $(LIB_STATIC:%=%_depends) $(LIB_FSLIB:%=%_depends) msvcrt_depends $(DLLS:%=%_depends) \
136 $(SUBSYS:%=%_depends) $(SYS_SVC:%=%_depends) \
137 $(EXT_MODULES:%=%_depends) $(POSIX_LIBS:%=%_depends)
138
139 implib: hallib $(LIB_STATIC) $(COMPONENTS:%=%_implib) $(HALS:%=%_implib) \
140 $(BUS:%=%_implib) $(LIB_STATIC:%=%_implib) $(LIB_FSLIB:%=%_implib) \
141 msvcrt_implib $(DLLS:%=%_implib) $(KERNEL_DRIVERS:%=%_implib) \
142 $(SUBSYS:%=%_implib) $(SYS_APPS:%=%_implib) $(SYS_SVC:%=%_implib) \
143 $(EXT_MODULES:%=%_implib) $(REGTESTS:%=%_implib)
144
145 test: $(BOOT_LOADERS:%=%_test) $(COMPONENTS:%=%_test) $(HALS:%=%_test) $(BUS:%=%_test) \
146 $(LIB_STATIC:%=%_test) $(LIB_FSLIB:%=%_test) msvcrt_test $(DLLS:%=%_test) \
147 $(KERNEL_DRIVERS:%=%_test) $(SUBSYS:%=%_test) \
148 $(SYS_SVC:%=%_test) $(EXT_MODULES:%=%_test)
149
150 clean: tools dk_clean iface_native_clean hallib_clean \
151 $(BOOT_LOADERS:%=%_clean) $(HALS:%=%_clean) $(COMPONENTS:%=%_clean) \
152 $(BUS:%=%_clean) $(LIB_STATIC:%=%_clean) $(LIB_FSLIB:%=%_clean) \
153 msvcrt_clean $(DLLS:%=%_clean) $(KERNEL_DRIVERS:%=%_clean) \
154 $(SUBSYS:%=%_clean) $(SYS_APPS:%=%_clean) $(SYS_SVC:%=%_clean) \
155 $(NET_APPS:%=%_clean) $(APPS:%=%_clean) $(EXT_MODULES:%=%_clean) \
156 $(REGTESTS:%=%_clean) clean_after tools_clean
157
158 clean_after:
159 $(HALFVERBOSEECHO) [RM] /include/roscfg.h
160 $(RM) $(PATH_TO_TOP)/include/roscfg.h
161
162 fastinstall: tools install_dirs install_before $(COMPONENTS:%=%_install) $(HALS:%=%_install) \
163 $(BUS:%=%_install) $(LIB_STATIC:%=%_install) $(LIB_FSLIB:%=%_install) \
164 msvcrt_install $(DLLS:%=%_install) $(KERNEL_DRIVERS:%=%_install) \
165 $(SUBSYS:%=%_install) $(SYS_APPS:%=%_install) $(SYS_SVC:%=%_install) \
166 $(APPS:%=%_install) $(EXT_MODULES:%=%_install) $(REGTESTS:%=%_install)
167 install: fastinstall registry
168
169 FREELDR_DIR = boot/freeldr
170
171 bootcd_directory_layout:
172 $(HALFVERBOSEECHO) [RMKDIR] $(BOOTCD_DIR)
173 $(RMKDIR) $(BOOTCD_DIR)
174 $(HALFVERBOSEECHO) [RMKDIR] $(BOOTCD_DIR)/bootdisk
175 $(RMKDIR) $(BOOTCD_DIR)/bootdisk
176 $(HALFVERBOSEECHO) [RMKDIR] $(BOOTCD_DIR)/loader
177 $(RMKDIR) $(BOOTCD_DIR)/loader
178 $(HALFVERBOSEECHO) [RMKDIR] $(BOOTCD_DIR)/reactos
179 $(RMKDIR) $(BOOTCD_DIR)/reactos
180 $(HALFVERBOSEECHO) [RMKDIR] $(BOOTCD_DIR)/reactos/system32
181 $(RMKDIR) $(BOOTCD_DIR)/reactos/system32
182
183 bootcd_bootstrap_files: $(BOOT_LOADERS:%=%_bootcd) $(COMPONENTS:%=%_bootcd) \
184 $(HALS:%=%_bootcd) $(BUS:%=%_bootcd) $(LIB_STATIC:%=%_bootcd) \
185 $(LIB_FSLIB:%=%_bootcd) msvcrt_bootcd $(DLLS:%=%_bootcd) \
186 $(KERNEL_DRIVERS:%=%_bootcd) $(SUBSYS:%=%_bootcd) $(SYS_APPS:%=%_bootcd)
187
188 bootcd_install_before:
189 $(HALFVERBOSEECHO) [RLINE] bootdata/autorun.inf to $(BOOTCD_DIR)/autorun.inf
190 $(RLINE) bootdata/autorun.inf $(BOOTCD_DIR)/autorun.inf
191 $(HALFVERBOSEECHO) [RLINE] bootdata/readme.txt to $(BOOTCD_DIR)/readme.txt
192 $(RLINE) bootdata/readme.txt $(BOOTCD_DIR)/readme.txt
193 $(HALFVERBOSEECHO) [RLINE] bootdata/hivecls.inf to $(BOOTCD_DIR)/reactos/hivecls.inf
194 $(RLINE) bootdata/hivecls.inf $(BOOTCD_DIR)/reactos/hivecls.inf
195 $(HALFVERBOSEECHO) [RLINE] bootdata/hivedef.inf to $(BOOTCD_DIR)/reactos/hivedef.inf
196 $(RLINE) bootdata/hivedef.inf $(BOOTCD_DIR)/reactos/hivedef.inf
197 $(HALFVERBOSEECHO) [RLINE] bootdata/hivesft.inf to $(BOOTCD_DIR)/reactos/hivesft.inf
198 $(RLINE) bootdata/hivesft.inf $(BOOTCD_DIR)/reactos/hivesft.inf
199 $(HALFVERBOSEECHO) [RLINE] bootdata/hivesys.inf to $(BOOTCD_DIR)/reactos/hivesys.inf
200 $(RLINE) bootdata/hivesys.inf $(BOOTCD_DIR)/reactos/hivesys.inf
201 $(HALFVERBOSEECHO) [RLINE] bootdata/txtsetup.sif to $(BOOTCD_DIR)/reactos/txtsetup.sif
202 $(RLINE) bootdata/txtsetup.sif $(BOOTCD_DIR)/reactos/txtsetup.sif
203 $(HALFVERBOSEECHO) [COPY] bootdata/icon.ico to $(BOOTCD_DIR)/icon.ico
204 $(CP) bootdata/icon.ico $(BOOTCD_DIR)/icon.ico
205 $(HALFVERBOSEECHO) [COPY] subsys/system/welcome/welcome.exe to $(BOOTCD_DIR)/reactos/welcome.exe
206 $(CP) subsys/system/welcome/welcome.exe $(BOOTCD_DIR)/reactos/welcome.exe
207 $(HALFVERBOSEECHO) [COPY] subsys/system/reactos/reactos.exe to $(BOOTCD_DIR)/reactos/reactos.exe
208 $(CP) subsys/system/reactos/reactos.exe $(BOOTCD_DIR)/reactos/reactos.exe
209 $(HALFVERBOSEECHO) [COPY] media/nls/c_1252.nls to $(BOOTCD_DIR)/reactos/c_1252.nls
210 $(CP) media/nls/c_1252.nls $(BOOTCD_DIR)/reactos/c_1252.nls
211 $(HALFVERBOSEECHO) [COPY] media/nls/c_437.nls to $(BOOTCD_DIR)/reactos/c_437.nls
212 $(CP) media/nls/c_437.nls $(BOOTCD_DIR)/reactos/c_437.nls
213 $(HALFVERBOSEECHO) [COPY] media/nls/l_intl.nls to $(BOOTCD_DIR)/reactos/l_intl.nls
214 $(CP) media/nls/l_intl.nls $(BOOTCD_DIR)/reactos/l_intl.nls
215 $(HALFVERBOSEECHO) [COPY] media/drivers/etc/services to $(BOOTCD_DIR)/reactos/services
216 $(CP) media/drivers/etc/services $(BOOTCD_DIR)/reactos/services
217
218 bootcd_basic: bootcd_directory_layout bootcd_bootstrap_files bootcd_install_before
219
220 bootcd_makecd:
221 $(CABMAN) /C bootdata/packages/reactos.dff /L $(BOOTCD_DIR)/reactos /I
222 $(CABMAN) /C bootdata/packages/reactos.dff /RC $(BOOTCD_DIR)/reactos/reactos.inf /L $(BOOTCD_DIR)/reactos /N
223 - $(RM) $(BOOTCD_DIR)/reactos/reactos.inf
224 $(HALFVERBOSEECHO) [CDMAKE] ReactOS.iso
225 $(CDMAKE) -v -m -b $(BOOTCD_DIR)/../isoboot.bin $(BOOTCD_DIR) REACTOS ReactOS.iso
226
227 ubootcd_unattend:
228 $(HALFVERBOSEECHO) [COPY] bootdata/unattend.inf to $(BOOTCD_DIR)/reactos/unattend.inf
229 $(CP) bootdata/unattend.inf $(BOOTCD_DIR)/reactos/unattend.inf
230
231 livecd_directory_layout:
232 $(HALFVERBOSEECHO) [RMKDIR] $(LIVECD_DIR)
233 $(RMKDIR) $(LIVECD_DIR)
234 $(HALFVERBOSEECHO) [RMKDIR] $(LIVECD_DIR)/loader
235 $(RMKDIR) $(LIVECD_DIR)/loader
236 $(HALFVERBOSEECHO) [RMKDIR] $(LIVECD_DIR)/reactos
237 $(RMKDIR) $(LIVECD_DIR)/reactos
238 $(HALFVERBOSEECHO) [RMKDIR] $(LIVECD_DIR)/Profiles/All\ Users/Desktop
239 $(RMKDIR) $(LIVECD_DIR)/Profiles/All\ Users/Desktop
240 $(HALFVERBOSEECHO) [RMKDIR] $(LIVECD_DIR)/Profiles/Default\ User/Desktop
241 $(RMKDIR) $(LIVECD_DIR)/Profiles/Default\ User/Desktop
242 $(HALFVERBOSEECHO) [RMKDIR] $(LIVECD_DIR)/Profiles/Default\ User/My\ Documents
243 $(RMKDIR) $(LIVECD_DIR)/Profiles/Default\ User/My\ Documents
244 $(HALFVERBOSEECHO) [COPY] ${FREELDR_DIR}/bootsect/isoboot.bin to ${LIVECD_DIR}/../isoboot.bin
245 $(CP) ${FREELDR_DIR}/bootsect/isoboot.bin ${LIVECD_DIR}/../isoboot.bin
246 $(HALFVERBOSEECHO) [COPY] ${FREELDR_DIR}/freeldr/freeldr.sys to ${LIVECD_DIR}/loader/setupldr.sys
247 $(CP) ${FREELDR_DIR}/freeldr/freeldr.sys ${LIVECD_DIR}/loader/setupldr.sys
248 $(HALFVERBOSEECHO) [RLINE] bootdata/livecd.ini to $(LIVECD_DIR)/freeldr.ini
249 $(RLINE) bootdata/livecd.ini $(LIVECD_DIR)/freeldr.ini
250
251 livecd_bootstrap_files:
252 $(MAKE) LIVECD_INSTALL=yes fastinstall
253
254 livecd_install_before:
255 $(MKHIVE) bootdata $(LIVECD_DIR)/reactos/system32/config bootdata/livecd.inf bootdata/hiveinst.inf
256
257 livecd_basic: livecd_directory_layout livecd_bootstrap_files livecd_install_before
258
259 livecd_makecd:
260 $(HALFVERBOSEECHO) [CDMAKE] roslive.iso
261 $(CDMAKE) -m -j -b $(LIVECD_DIR)/../isoboot.bin $(LIVECD_DIR) REACTOS roslive.iso
262
263 bootcd: bootcd_basic bootcd_makecd
264
265 ubootcd: bootcd_basic ubootcd_unattend bootcd_makecd
266
267 livecd: livecd_basic livecd_makecd
268
269 registry: tools
270 $(MKHIVE) bootdata $(INSTALL_DIR)/system32/config bootdata/hiveinst.inf
271
272 .PHONY: all bootstrap depends implib test clean clean_before install bootcd_directory_layout \
273 bootcd_bootstrap_files bootcd_install_before bootcd_basic bootcd_makecd ubootcd_unattend bootcd
274
275
276 #
277 # Boot Loaders
278 #
279 $(BOOT_LOADERS): %:
280 $(MAKE) -C boot/$*
281
282 $(BOOT_LOADERS:%=%_test): %_test:
283 $(MAKE) -C boot/$* test
284
285 $(BOOT_LOADERS:%=%_clean): %_clean:
286 $(MAKE) -C boot/$* clean
287
288 $(BOOT_LOADERS:%=%_bootcd): %_bootcd:
289 $(MAKE) -C boot/$* bootcd
290
291 .PHONY: $(BOOT_LOADERS) $(BOOT_LOADERS:%=%_test) $(BOOT_LOADERS:%=%_clean) \
292 $(BOOT_LOADERS:%=%_bootcd)
293
294 $(COMPONENTS): dk
295
296 #
297 # System Applications
298 #
299 $(SYS_APPS): %: $(IMPLIB)
300 $(MAKE) -C subsys/system/$*
301
302 $(SYS_APPS:%=%_implib): %_implib: dk
303 $(MAKE) --silent -C subsys/system/$* implib
304
305 $(SYS_APPS:%=%_test): %_test:
306 $(MAKE) -C subsys/system/$* test
307
308 $(SYS_APPS:%=%_clean): %_clean:
309 $(MAKE) -C subsys/system/$* clean
310
311 $(SYS_APPS:%=%_install): %_install:
312 $(MAKE) -C subsys/system/$* install
313
314 $(SYS_APPS:%=%_bootcd): %_bootcd:
315 $(MAKE) -C subsys/system/$* bootcd
316
317 .PHONY: $(SYS_APPS) $(SYS_APPS:%=%_implib) $(SYS_APPS:%=%_test) \
318 $(SYS_APPS:%=%_clean) $(SYS_APPS:%=%_install) $(SYS_APPS:%=%_bootcd)
319
320 #
321 # System Services
322 #
323 $(SYS_SVC): %: $(IMPLIB)
324 $(MAKE) -C services/$*
325
326 $(SYS_SVC:%=%_depends): %_depends:
327 $(MAKE) -C services/$* depends
328
329 $(SYS_SVC:%=%_implib): %_implib: dk
330 $(MAKE) --silent -C services/$* implib
331
332 $(SYS_SVC:%=%_test): %_test:
333 $(MAKE) -C services/$* test
334
335 $(SYS_SVC:%=%_clean): %_clean:
336 $(MAKE) -C services/$* clean
337
338 $(SYS_SVC:%=%_install): %_install:
339 $(MAKE) -C services/$* install
340
341 .PHONY: $(SYS_SVC) $(SYS_SVC:%=%_depends) $(SYS_SVC:%=%_implib) \
342 $(SYS_SVC:%=%_test) $(SYS_SVC:%=%_clean) $(SYS_SVC:%=%_install)
343
344
345 #
346 # Applications
347 #
348 #
349 # Extra (optional system) Applications
350 #
351 $(APPS): %: $(IMPLIB)
352 $(MAKE) -C apps/$*
353
354 # Not needed
355 # $(APPS:%=%_implib): %_implib: dk
356 # $(MAKE) --silent -C apps/$* implib
357
358 $(APPS:%=%_test): %_test:
359 $(MAKE) -C apps/$* test
360
361 $(APPS:%=%_clean): %_clean:
362 $(MAKE) -C apps/$* clean
363
364 $(APPS:%=%_install): %_install:
365 $(MAKE) -C apps/$* install
366
367 .PHONY: $(APPS) $(APPS:%=%_test) $(APPS:%=%_clean) $(APPS:%=%_install)
368
369
370 #
371 # External ports and subsystem personalities
372 #
373 $(EXTERNALS): %:
374 $(MAKE) -C $(ROOT_PATH)/$*
375
376 $(EXTERNALS:%=%_depends): %_depends:
377 $(MAKE) -C $(ROOT_PATH)/$* depends
378
379 $(EXTERNALS:%=%_implib): %_implib: dk
380 $(MAKE) --silent -C $(ROOT_PATH)/$* implib
381
382 $(EXTERNALS:%=%_clean): %_clean:
383 $(MAKE) -C $(ROOT_PATH)/$* clean
384
385 $(EXTERNALS:%=%_install): %_install:
386 $(MAKE) -C $(ROOT_PATH)/$* install
387
388 .PHONY: $(EXTERNALS) $(EXTERNALS:%=%_depends) $(EXTERNALS:%=%_implib) $(EXTERNALS:%=%_clean) $(EXTERNALS:%=%_install)
389
390
391 #
392 # Tools
393 #
394 tools:
395 $(MAKE) --silent -C tools
396
397 tools_implib:
398
399
400 tools_test:
401
402
403 tools_clean:
404 $(MAKE) -C tools clean
405
406 tools_install:
407
408 .PHONY: tools tools_implib tools_test tools_clean tools_install
409
410
411 #
412 # Developer Kits
413 #
414 dk: tools
415 @$(RMKDIR) $(DK_PATH)
416 @$(RMKDIR) $(DDK_PATH)
417 @$(RMKDIR) $(DDK_PATH_LIB)
418 @$(RMKDIR) $(DDK_PATH_INC)
419 @$(RMKDIR) $(SDK_PATH)
420 @$(RMKDIR) $(SDK_PATH_LIB)
421 @$(RMKDIR) $(SDK_PATH_INC)
422 @$(RMKDIR) $(XDK_PATH)
423 @$(RMKDIR) $(XDK_PATH_LIB)
424 # @$(RMKDIR) $(XDK_PATH_INC)
425
426 dk_implib:
427
428 # WARNING! Be very sure that there are no important files
429 # in these directories before cleaning them!!!
430 dk_clean:
431 $(HALFVERBOSEECHO) [RM] $(DDK_PATH_LIB)/*.a
432 $(RM) $(DDK_PATH_LIB)/*.a
433 # $(HALFVERBOSEECHO) [RM] $(DDK_PATH_INC)/*.h
434 # $(RM) $(DDK_PATH_INC)/*.h
435 $(HALFVERBOSEECHO) [RMDIR] $(DDK_PATH_LIB)
436 $(RMDIR) $(DDK_PATH_LIB)
437 # $(HALFVERBOSEECHO) [RMDIR] $(DDK_PATH_INC)
438 # $(RMDIR) $(DDK_PATH_INC)
439 $(HALFVERBOSEECHO) [RM] $(SDK_PATH_LIB)/*.a
440 $(RM) $(SDK_PATH_LIB)/*.a
441 # $(HALFVERBOSEECHO) [RM] $(SDK_PATH_INC)/*.h
442 # $(RM) $(SDK_PATH_INC)/*.h
443 $(HALFVERBOSEECHO) [RMDIR] $(SDK_PATH_LIB)
444 $(RMDIR) $(SDK_PATH_LIB)
445 # $(HALFVERBOSEECHO) [RMDIR] $(SDK_PATH_INC)
446 # $(RMDIR) $(SDK_PATH_INC)
447 $(HALFVERBOSEECHO) [RM] $(XDK_PATH_LIB)/*.a
448 $(RM) $(XDK_PATH_LIB)/*.a
449 # $(HALFVERBOSEECHO) [RM] $(XDK_PATH_INC)/*.h
450 # $(RM) $(XDK_PATH_INC)/*.h
451 $(HALFVERBOSEECHO) [RMDIR] $(XDK_PATH_LIB)
452 $(RMDIR) $(XDK_PATH_LIB)
453 # $(HALFVERBOSEECHO) [RMDIR] $(XDK_PATH_INC)
454 # $(RMDIR) $(XDK_PATH_INC)
455
456 dk_install:
457
458 .PHONY: dk dk_implib dk_clean dk_install
459
460
461 #
462 # Interfaces
463 #
464 iface_native:
465 $(MAKE) --silent -C tools/nci
466
467 iface_native_implib:
468
469 iface_native_test:
470
471 iface_native_clean:
472 $(MAKE) --silent -C tools/nci clean
473
474 iface_native_install:
475
476 iface_native_bootcd:
477
478 .PHONY: iface_native iface_native_implib iface_native_test iface_native_clean \
479 iface_native_install iface_native_bootcd
480
481
482 #
483 # Bus driver rules
484 #
485 $(BUS): %: $(IMPLIB)
486 $(MAKE) -C drivers/bus/$*
487
488 $(BUS:%=%_implib): %_implib: dk
489 $(MAKE) --silent -C drivers/bus/$* implib
490
491 $(BUS:%=%_test): %_test:
492 $(MAKE) -C drivers/bus/$* test
493
494 $(BUS:%=%_clean): %_clean:
495 $(MAKE) -C drivers/bus/$* clean
496
497 $(BUS:%=%_install): %_install:
498 $(MAKE) -C drivers/bus/$* install
499
500 $(BUS:%=%_bootcd): %_bootcd:
501 $(MAKE) -C drivers/bus/$* bootcd
502
503 .PHONY: $(BUS) $(BUS:%=%_implib) $(BUS:%=%_clean) \
504 $(BUS:%=%_install) $(BUS:%=%_bootcd)
505
506
507 #
508 # Driver support libraries rules
509 #
510 $(DRIVERS_LIB): %: $(IMPLIB)
511 $(MAKE) -C drivers/lib/$*
512
513 $(DRIVERS_LIB:%=%_implib): %_implib: dk
514 $(MAKE) --silent -C drivers/lib/$* implib
515
516 $(DRIVERS_LIB:%=%_test): %_test:
517 $(MAKE) -C drivers/lib/$* test
518
519 $(DRIVERS_LIB:%=%_clean): %_clean:
520 $(MAKE) -C drivers/lib/$* clean
521
522 $(DRIVERS_LIB:%=%_install): %_install:
523 $(MAKE) -C drivers/lib/$* install
524
525 $(DRIVERS_LIB:%=%_bootcd): %_bootcd:
526 $(MAKE) -C drivers/lib/$* bootcd
527
528 .PHONY: $(DRIVERS_LIB) $(DRIVERS_LIB:%=%_implib) $(DRIVERS_LIB:%=%_test) \
529 $(DRIVERS_LIB:%=%_clean) $(DRIVERS_LIB:%=%_install) $(DRIVERS_LIB:%=%_bootcd)
530
531
532 #
533 # Device driver rules
534 #
535 $(DEVICE_DRIVERS): %: $(IMPLIB)
536 $(MAKE) -C drivers/dd/$*
537
538 $(DEVICE_DRIVERS:%=%_implib): %_implib: dk
539 $(MAKE) --silent -C drivers/dd/$* implib
540
541 $(DEVICE_DRIVERS:%=%_test): %_test:
542 $(MAKE) -C drivers/dd/$* test
543
544 $(DEVICE_DRIVERS:%=%_clean): %_clean:
545 $(MAKE) -C drivers/dd/$* clean
546
547 $(DEVICE_DRIVERS:%=%_install): %_install:
548 $(MAKE) -C drivers/dd/$* install
549
550 $(DEVICE_DRIVERS:%=%_bootcd): %_bootcd:
551 $(MAKE) -C drivers/dd/$* bootcd
552
553 .PHONY: $(DEVICE_DRIVERS) $(DEVICE_DRIVERS:%=%_implib) $(DEVICE_DRIVERS:%=%_test) \
554 $(DEVICE_DRIVERS:%=%_clean) $(DEVICE_DRIVERS:%=%_install) $(DEVICE_DRIVERS:%=%_bootcd)
555
556
557 #
558 # Video device driver rules
559 #
560 VIDEO_DRIVERS: $(IMPLIB)
561 $(MAKE) -C drivers/video
562
563 VIDEO_DRIVERS_implib: dk
564 $(MAKE) --silent -C drivers/video implib
565
566 VIDEO_DRIVERS_test:
567 $(MAKE) -C drivers/video test
568
569 VIDEO_DRIVERS_clean:
570 $(MAKE) -C drivers/video clean
571
572 VIDEO_DRIVERS_install:
573 $(MAKE) -C drivers/video install
574
575 VIDEO_DRIVERS_bootcd:
576 $(MAKE) -C drivers/video bootcd
577
578 .PHONY: VIDEO_DRIVERS VIDEO_DRIVERS_implib VIDEO_DRIVERS_test\
579 VIDEO_DRIVERS_clean VIDEO_DRIVERS_install VIDEO_DRIVERS_bootcd
580
581 #
582 # USB device driver rules
583 #
584 USB_DRIVERS: $(IMPLIB)
585 $(MAKE) -C drivers/usb
586
587 USB_DRIVERS_implib: dk
588 $(MAKE) --silent -C drivers/usb implib
589
590 USB_DRIVERS_test:
591 $(MAKE) -C drivers/usb test
592
593 USB_DRIVERS_clean:
594 $(MAKE) -C drivers/usb clean
595
596 USB_DRIVERS_install:
597 $(MAKE) -C drivers/usb install
598
599 USB_DRIVERS_bootcd:
600 $(MAKE) -C drivers/usb bootcd
601
602 .PHONY: USB_DRIVERS USB_DRIVERS_implib USB_DRIVERS_test\
603 USB_DRIVERS_clean USB_DRIVERS_install USB_DRIVERS_bootcd
604
605
606 #
607 # Input driver rules
608 #
609 $(INPUT_DRIVERS): %: $(IMPLIB)
610 $(MAKE) -C drivers/input/$*
611
612 $(INPUT_DRIVERS:%=%_implib): %_implib: dk
613 $(MAKE) --silent -C drivers/input/$* implib
614
615 $(INPUT_DRIVERS:%=%_test): %_test:
616 $(MAKE) -C drivers/input/$* test
617
618 $(INPUT_DRIVERS:%=%_clean): %_clean:
619 $(MAKE) -C drivers/input/$* clean
620
621 $(INPUT_DRIVERS:%=%_install): %_install:
622 $(MAKE) -C drivers/input/$* install
623
624 $(INPUT_DRIVERS:%=%_bootcd): %_bootcd:
625 $(MAKE) -C drivers/input/$* bootcd
626
627 .PHONY: $(INPUT_DRIVERS) $(INPUT_DRIVERS:%=%_implib) $(INPUT_DRIVERS:%=%_test) \
628 $(INPUT_DRIVERS:%=%_clean) $(INPUT_DRIVERS:%=%_install) $(INPUT_DRIVERS:%=%_bootcd)
629
630 #
631 # Filesystem driver rules
632 #
633 $(FS_DRIVERS): %: $(IMPLIB)
634 $(MAKE) -C drivers/fs/$*
635
636 $(FS_DRIVERS:%=%_implib): %_implib: dk
637 $(MAKE) --silent -C drivers/fs/$* implib
638
639 $(FS_DRIVERS:%=%_test): %_test:
640 $(MAKE) -C drivers/fs/$* test
641
642 $(FS_DRIVERS:%=%_clean): %_clean:
643 $(MAKE) -C drivers/fs/$* clean
644
645 $(FS_DRIVERS:%=%_install): %_install:
646 $(MAKE) -C drivers/fs/$* install
647
648 $(FS_DRIVERS:%=%_bootcd): %_bootcd:
649 $(MAKE) -C drivers/fs/$* bootcd
650
651 .PHONY: $(FS_DRIVERS) $(FS_DRIVERS:%=%_implib) $(FS_DRIVERS:%=%_test) \
652 $(FS_DRIVERS:%=%_clean) $(FS_DRIVERS:%=%_install) $(FS_DRIVERS:%=%_bootcd)
653
654
655 #
656 # Network driver rules
657 #
658 $(NET_DRIVERS): %: $(IMPLIB)
659 $(MAKE) -C drivers/net/$*
660
661 $(NET_DRIVERS:%=%_implib): %_implib: dk
662 $(MAKE) --silent -C drivers/net/$* implib
663
664 $(NET_DRIVERS:%=%_test): %_test:
665 $(MAKE) -C drivers/net/$* test
666
667 $(NET_DRIVERS:%=%_clean): %_clean:
668 $(MAKE) -C drivers/net/$* clean
669
670 $(NET_DRIVERS:%=%_install): %_install:
671 $(MAKE) -C drivers/net/$* install
672
673 $(NET_DRIVERS:%=%_bootcd): %_bootcd:
674 $(MAKE) -C drivers/net/$* bootcd
675
676 .PHONY: $(NET_DRIVERS) $(NET_DRIVERS:%=%_implib) $(NET_DRIVERS:%=%_test) \
677 $(NET_DRIVERS:%=%_clean) $(NET_DRIVERS:%=%_install) $(NET_DRIVERS:%=%_bootcd)
678
679
680 #
681 # Network device driver rules
682 #
683 $(NET_DEVICE_DRIVERS): %: $(IMPLIB)
684 $(MAKE) -C drivers/net/dd/$*
685
686 $(NET_DEVICE_DRIVERS:%=%_implib): %_implib: dk
687 $(MAKE) --silent -C drivers/net/dd/$* implib
688
689 $(NET_DEVICE_DRIVERS:%=%_test): %_test:
690 $(MAKE) -C drivers/net/dd/$* test
691
692 $(NET_DEVICE_DRIVERS:%=%_clean): %_clean:
693 $(MAKE) -C drivers/net/dd/$* clean
694
695 $(NET_DEVICE_DRIVERS:%=%_install): %_install:
696 $(MAKE) -C drivers/net/dd/$* install
697
698 $(NET_DEVICE_DRIVERS:%=%_bootcd): %_bootcd:
699 $(MAKE) -C drivers/net/dd/$* bootcd
700
701 .PHONY: $(NET_DEVICE_DRIVERS) $(NET_DEVICE_DRIVERS:%=%_clean) \
702 $(NET_DEVICE_DRIVERS:%=%_implib) $(NET_DEVICE_DRIVERS:%=%_test) \
703 $(NET_DEVICE_DRIVERS:%=%_install) $(NET_DEVICE_DRIVERS:%=%_bootcd)
704
705
706 #
707 # storage driver rules
708 #
709 $(STORAGE_DRIVERS): %: $(IMPLIB)
710 $(MAKE) -C drivers/storage/$*
711
712 $(STORAGE_DRIVERS:%=%_implib): %_implib: dk
713 $(MAKE) --silent -C drivers/storage/$* implib
714
715 $(STORAGE_DRIVERS:%=%_test): %_test:
716 $(MAKE) -C drivers/storage/$* test
717
718 $(STORAGE_DRIVERS:%=%_clean): %_clean:
719 $(MAKE) -C drivers/storage/$* clean
720
721 $(STORAGE_DRIVERS:%=%_install): %_install:
722 $(MAKE) -C drivers/storage/$* install
723
724 $(STORAGE_DRIVERS:%=%_bootcd): %_bootcd:
725 $(MAKE) -C drivers/storage/$* bootcd
726
727 .PHONY: $(STORAGE_DRIVERS) $(STORAGE_DRIVERS:%=%_clean) \
728 $(STORAGE_DRIVERS:%=%_implib) $(STORAGE_DRIVERS:%=%_test) \
729 $(STORAGE_DRIVERS:%=%_install) $(STORAGE_DRIVERS:%=%_bootcd)
730
731
732 #
733 # Required system components
734 #
735 ntoskrnl: bootstrap
736 $(MAKE) -C ntoskrnl
737
738 ntoskrnl_implib: dk
739 $(MAKE) --silent -C ntoskrnl implib
740
741 ntoskrnl_test:
742 $(MAKE) -C ntoskrnl test
743
744 ntoskrnl_clean:
745 $(MAKE) -C ntoskrnl clean
746
747 ntoskrnl_install:
748 $(MAKE) -C ntoskrnl install
749
750 ntoskrnl_bootcd:
751 $(MAKE) -C ntoskrnl bootcd
752
753 .PHONY: ntoskrnl ntoskrnl_implib ntoskrnl_test \
754 ntoskrnl_clean ntoskrnl_install ntoskrnl_bootcd
755
756
757 #
758 # Hardware Abstraction Layer import library
759 #
760 hallib: $(PATH_TO_TOP)/include/roscfg.h ntoskrnl_implib
761 $(MAKE) --silent -C hal/hal
762
763 hallib_implib: dk ntoskrnl_implib
764 $(MAKE) --silent -C hal/hal implib
765
766 hallib_test:
767 $(MAKE) -C hal/hal test
768
769 hallib_clean:
770 $(MAKE) -C hal/hal clean
771
772 hallib_install:
773 $(MAKE) -C hal/hal install
774
775 hallib_bootcd:
776 $(MAKE) -C hal/hal bootcd
777
778 .PHONY: hallib hallib_implib hallib_test hallib_clean \
779 hallib_install hallib_bootcd
780
781
782 #
783 # Hardware Abstraction Layers
784 #
785 ifeq ($(CONFIG_SMP),1)
786 halx86: halx86/mp
787 else
788 halx86: halx86/up
789 endif
790
791 $(HALS): %: $(IMPLIB)
792 $(MAKE) -C hal/$*
793
794 $(HALS:%=%_implib): %_implib: dk
795 $(MAKE) --silent -C hal/$* implib
796
797 $(HALS:%=%_test): %_test:
798 $(MAKE) -C hal/$* test
799
800 $(HALS:%=%_clean): %_clean:
801 $(MAKE) -C hal/$* clean
802
803 $(HALS:%=%_install): %_install:
804 $(MAKE) -C hal/$* install
805
806 $(HALS:%=%_bootcd): %_bootcd:
807 $(MAKE) -C hal/$* bootcd
808
809 .PHONY: $(HALS) $(HALS:%=%_implib) $(HALS:%=%_test) \
810 $(HALS:%=%_clean) $(HALS:%=%_install) $(HALS:%=%_bootcd)
811
812
813 #
814 # File system libraries
815 #
816 $(LIB_FSLIB): %: dk
817 $(MAKE) -C lib/fslib/$*
818
819 $(LIB_FSLIB:%=%_depends): %_depends:
820 $(MAKE) -C lib/fslib/$* depends
821
822 $(LIB_FSLIB:%=%_implib): %_implib: dk
823 $(MAKE) --silent -C lib/fslib/$* implib
824
825 $(LIB_FSLIB:%=%_test): %_test:
826 $(MAKE) -C lib/fslib/$* test
827
828 $(LIB_FSLIB:%=%_clean): %_clean:
829 $(MAKE) -C lib/fslib/$* clean
830
831 $(LIB_FSLIB:%=%_install): %_install:
832 $(MAKE) -C lib/fslib/$* install
833
834 $(LIB_FSLIB:%=%_bootcd): %_bootcd:
835 $(MAKE) -C lib/fslib/$* bootcd
836
837 .PHONY: $(LIB_FSLIB) $(LIB_FSLIB:%=%_depends) $(LIB_FSLIB:%=%_implib) \
838 $(LIB_FSLIB:%=%_test) $(LIB_FSLIB:%=%_clean) \
839 $(LIB_FSLIB:%=%_install) $(LIB_FSLIB:%=%_bootcd)
840
841
842 #
843 # Static libraries
844 #
845 $(LIB_STATIC): %: dk
846 $(MAKE) --silent -C lib/$*
847
848 $(LIB_STATIC:%=%_depends): %_depends:
849 $(MAKE) -C lib/string depends
850
851 $(LIB_STATIC:%=%_implib): %_implib: dk
852 $(MAKE) --silent -C lib/$* implib
853
854 $(LIB_STATIC:%=%_test): %_test:
855 $(MAKE) -C lib/$* test
856
857 $(LIB_STATIC:%=%_clean): %_clean:
858 $(MAKE) -C lib/$* clean
859
860 $(LIB_STATIC:%=%_install): %_install:
861 $(MAKE) -C lib/$* install
862
863 $(LIB_STATIC:%=%_bootcd): %_bootcd:
864 $(MAKE) -C lib/$* bootcd
865
866 .PHONY: $(LIB_STATIC) $(LIB_STATIC:%=%_depends) $(LIB_STATIC:%=%_implib) \
867 $(LIB_STATIC:%=%_test) $(LIB_STATIC:%=%_clean) \
868 $(LIB_STATIC:%=%_install) $(LIB_STATIC:%=%_bootcd)
869
870
871 #
872 # MSVCRT is seperate since CRTDLL depend on this
873 #
874 msvcrt: $(IMPLIB)
875 $(MAKE) -C lib/msvcrt
876
877 msvcrt_depends:
878 $(MAKE) -C lib/msvcrt depends
879
880 msvcrt_implib: dk
881 $(MAKE) --silent -C lib/msvcrt implib
882
883 msvcrt_test:
884 $(MAKE) -C lib/msvcrt test
885
886 msvcrt_clean:
887 $(MAKE) -C lib/msvcrt clean
888
889 msvcrt_install:
890 $(MAKE) -C lib/msvcrt install
891
892 msvcrt_bootcd:
893 $(MAKE) -C lib/msvcrt bootcd
894
895 .PHONY: msvcrt msvcrt_depends msvcrt_implib msvcrt_test \
896 msvcrt_clean msvcrt_install msvcrt_bootcd
897
898
899 #
900 # DLLs
901 #
902 $(DLLS): %: $(IMPLIB) msvcrt
903 $(MAKE) -C lib/$*
904
905 $(DLLS:%=%_depends): %_depends:
906 $(MAKE) -C lib/$* depends
907
908 $(DLLS:%=%_implib): %_implib: dk
909 $(MAKE) --silent -C lib/$* implib
910
911 $(DLLS:%=%_test): %_test:
912 $(MAKE) -C lib/$* test
913
914 $(DLLS:%=%_clean): %_clean:
915 $(MAKE) -C lib/$* clean
916
917 $(DLLS:%=%_install): %_install:
918 $(MAKE) -C lib/$* install
919
920 $(DLLS:%=%_bootcd): %_bootcd:
921 $(MAKE) -C lib/$* bootcd
922
923 .PHONY: $(DLLS) $(DLLS:%=%_depends) $(DLLS:%=%_implib) $(DLLS:%=%_test) \
924 $(DLLS:%=%_clean) $(DLLS:%=%_install) $(DLLS:%=%_bootcd)
925
926
927 #
928 # Subsystem support modules
929 #
930 $(SUBSYS): %: $(IMPLIB)
931 $(MAKE) -C subsys/$*
932
933 $(SUBSYS:%=%_depends): %_depends:
934 $(MAKE) -C subsys/$* depends
935
936 $(SUBSYS:%=%_implib): %_implib: dk
937 $(MAKE) --silent -C subsys/$* implib
938
939 $(SUBSYS:%=%_test): %_test:
940 $(MAKE) -C subsys/$* test
941
942 $(SUBSYS:%=%_clean): %_clean:
943 $(MAKE) -C subsys/$* clean
944
945 $(SUBSYS:%=%_install): %_install:
946 $(MAKE) -C subsys/$* install
947
948 $(SUBSYS:%=%_bootcd): %_bootcd:
949 $(MAKE) -C subsys/$* bootcd
950
951 .PHONY: $(SUBSYS) $(SUBSYS:%=%_depends) $(SUBSYS:%=%_implib) $(SUBSYS:%=%_test) \
952 $(SUBSYS:%=%_clean) $(SUBSYS:%=%_install) $(SUBSYS:%=%_bootcd)
953
954 #
955 # Regression testsuite
956 #
957
958 $(REGTESTS): %: $(IMPLIB)
959 $(MAKE) --silent -C regtests
960
961 $(REGTESTS:%=%_implib): %_implib: dk
962 $(MAKE) --silent -C regtests implib
963
964 $(REGTESTS:%=%_clean): %_clean:
965 $(MAKE) -C regtests clean
966
967 $(REGTESTS:%=%_install): %_install:
968 $(MAKE) -C regtests install
969
970 .PHONY: $(REGTESTS) $(REGTESTS:%=%_depends) $(SUBSYS:%=%_clean) $(REGTESTS:%=%_install)
971
972
973 #
974 # Create an installation
975 #
976
977 install_clean:
978 $(HALFVERBOSEECHO) [RM] $(INSTALL_DIR)/system32/drivers/*.*
979 $(RM) $(INSTALL_DIR)/system32/drivers/*.*
980 $(HALFVERBOSEECHO) [RM] $(INSTALL_DIR)/system32/config/*.*
981 $(RM) $(INSTALL_DIR)/system32/config/*.*
982 $(HALFVERBOSEECHO) [RM] $(INSTALL_DIR)/system32/*.*
983 $(RM) $(INSTALL_DIR)/system32/*.*
984 $(HALFVERBOSEECHO) [RM] $(INSTALL_DIR)/symbols/*.*
985 $(RM) $(INSTALL_DIR)/symbols/*.*
986 $(HALFVERBOSEECHO) [RM] $(INSTALL_DIR)/media/fonts/*.*
987 $(RM) $(INSTALL_DIR)/media/fonts/*.*
988 $(HALFVERBOSEECHO) [RM] $(INSTALL_DIR)/media/*.*
989 $(RM) $(INSTALL_DIR)/media/*.*
990 $(HALFVERBOSEECHO) [RM] $(INSTALL_DIR)/inf/*.*
991 $(RM) $(INSTALL_DIR)/inf/*.*
992 $(HALFVERBOSEECHO) [RM] $(INSTALL_DIR)/bin/*.*
993 $(RM) $(INSTALL_DIR)/bin/*.*
994 $(HALFVERBOSEECHO) [RMDIR] $(INSTALL_DIR)/system32/drivers
995 $(RMDIR) $(INSTALL_DIR)/system32/drivers
996 $(HALFVERBOSEECHO) [RMDIR] $(INSTALL_DIR)/system32/config
997 $(RMDIR) $(INSTALL_DIR)/system32/config
998 $(HALFVERBOSEECHO) [RMDIR] $(INSTALL_DIR)/system32
999 $(RMDIR) $(INSTALL_DIR)/system32
1000 $(HALFVERBOSEECHO) [RMDIR] $(INSTALL_DIR)/symbols
1001 $(RMDIR) $(INSTALL_DIR)/symbols
1002 $(HALFVERBOSEECHO) [RMDIR] $(INSTALL_DIR)/media/fonts
1003 $(RMDIR) $(INSTALL_DIR)/media/fonts
1004 $(HALFVERBOSEECHO) [RMDIR] $(INSTALL_DIR)/media
1005 $(RMDIR) $(INSTALL_DIR)/media
1006 $(HALFVERBOSEECHO) [RMDIR] $(INSTALL_DIR)/inf
1007 $(RMDIR) $(INSTALL_DIR)/inf
1008 $(HALFVERBOSEECHO) [RMDIR] $(INSTALL_DIR)/bin
1009 $(RMDIR) $(INSTALL_DIR)/bin
1010 $(HALFVERBOSEECHO) [RMDIR] $(INSTALL_DIR)
1011 $(RMDIR) $(INSTALL_DIR)
1012
1013 install_dirs:
1014 $(HALFVERBOSEECHO) [RMKDIR] $(INSTALL_DIR)
1015 $(RMKDIR) $(INSTALL_DIR)
1016 $(HALFVERBOSEECHO) [RMKDIR] $(INSTALL_DIR)/bin
1017 $(RMKDIR) $(INSTALL_DIR)/bin
1018 $(HALFVERBOSEECHO) [RMKDIR] $(INSTALL_DIR)/inf
1019 $(RMKDIR) $(INSTALL_DIR)/inf
1020 $(HALFVERBOSEECHO) [RMKDIR] $(INSTALL_DIR)/media
1021 $(RMKDIR) $(INSTALL_DIR)/media
1022 $(HALFVERBOSEECHO) [RMKDIR] $(INSTALL_DIR)/media/fonts
1023 $(RMKDIR) $(INSTALL_DIR)/media/fonts
1024 $(HALFVERBOSEECHO) [RMKDIR] $(INSTALL_DIR)/symbols
1025 $(RMKDIR) $(INSTALL_DIR)/symbols
1026 $(HALFVERBOSEECHO) [RMKDIR] $(INSTALL_DIR)/system32
1027 $(RMKDIR) $(INSTALL_DIR)/system32
1028 $(HALFVERBOSEECHO) [RMKDIR] $(INSTALL_DIR)/system32/config
1029 $(RMKDIR) $(INSTALL_DIR)/system32/config
1030 $(HALFVERBOSEECHO) [RMKDIR] $(INSTALL_DIR)/system32/drivers
1031 $(RMKDIR) $(INSTALL_DIR)/system32/drivers
1032 $(HALFVERBOSEECHO) [RMKDIR] $(INSTALL_DIR)/system32/drivers/etc
1033 $(RMKDIR) $(INSTALL_DIR)/system32/drivers/etc
1034
1035 install_before:
1036 $(HALFVERBOSEECHO) [INSTALL] media/inf to $(INSTALL_DIR)/inf
1037 $(CP) media/inf $(INSTALL_DIR)/inf
1038 $(HALFVERBOSEECHO) [INSTALL] media/fonts to $(INSTALL_DIR)/media/fonts
1039 $(CP) media/fonts $(INSTALL_DIR)/media/fonts
1040 $(HALFVERBOSEECHO) [INSTALL] media/nls to $(INSTALL_DIR)/system32
1041 $(CP) media/nls $(INSTALL_DIR)/system32
1042 $(HALFVERBOSEECHO) [INSTALL] media/nls/c_1252.nls to $(INSTALL_DIR)/system32/ansi.nls
1043 $(CP) media/nls/c_1252.nls $(INSTALL_DIR)/system32/ansi.nls
1044 $(HALFVERBOSEECHO) [INSTALL] media/nls/c_437.nls to $(INSTALL_DIR)/system32/oem.nls
1045 $(CP) media/nls/c_437.nls $(INSTALL_DIR)/system32/oem.nls
1046 $(HALFVERBOSEECHO) [INSTALL] media/nls/l_intl.nls to $(INSTALL_DIR)/system32/casemap.nls
1047 $(CP) media/nls/l_intl.nls $(INSTALL_DIR)/system32/casemap.nls
1048 $(HALFVERBOSEECHO) [INSTALL] media/drivers/etc/services to $(INSTALL_DIR)/system32/drivers/etc/services
1049 $(CP) media/drivers/etc/services $(INSTALL_DIR)/system32/drivers/etc/services
1050
1051 .PHONY: install_clean install_dirs install_before
1052
1053
1054 etags:
1055 find . -name "*.[ch]" -print | etags --language=c -
1056
1057
1058 docu:
1059 echo generating ReactOS NTOSKRNL documentation ...
1060 $(MAKE) -C ntoskrnl docu
1061
1062 echo generating ReactOS drivers documentation ...
1063 $(MAKE) -C drivers docu
1064
1065 echo generating ReactOS NTDLL documentation ...
1066 $(MAKE) -C lib/ntdll docu
1067
1068 echo generating ReactOS Freetype documentation ...
1069 $(MAKE) -C lib/freetype docu
1070
1071 echo generating ReactOS libs documentation ...
1072 $(MAKE) -C lib docu
1073
1074 echo generating ReactOS WIN32K documentation ...
1075 $(MAKE) -C subsys/win32k docu
1076
1077 echo generating ReactOS apps+tools documentation ...
1078 $(MAKE) -C apps docu
1079
1080 echo generating ReactOS explorer documentation ...
1081 $(MAKE) -C subsys/system/explorer full-docu
1082
1083 echo generating remaining ReactOS documentation ...
1084 doxygen Doxyfile
1085
1086 .PHONY: docu
1087
1088 include $(TOOLS_PATH)/config.mk