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