8 # Define to build ReactOS external targets
10 ifeq ($(ROS_BUILD_EXT
),)
16 include $(PATH_TO_TOP
)/rules.mak
18 # Required to run the system
19 COMPONENTS
= iface_native iface_additional hallib ntoskrnl
21 # Hardware Abstraction Layers
29 # Filesystem libraries
33 # User and kernel mode libraries
34 # advapi32 crtdll fmifs gdi32 kernel32 libpcap packet msafd msvcrt ntdll ole32
35 # oleaut32 epsapi psapi rpcrt4 secur32 shell32 user32 version ws2help ws2_32 wsock32 wshirda
36 DLLS
= rosrtl advapi32 crtdll fmifs freetype gdi32 kernel32 packet msafd msvcrt ntdll \
37 epsapi psapi secur32 syssetup user32 version winedbgc winspool ws2help ws2_32 \
40 SUBSYS
= smss win32k csrss ntvdm
43 # Select the server(s) you want to build
45 #SERVERS = posix linux os2
52 # Driver support libraries
56 # Kernel mode device drivers
58 # beep blue floppy null parallel ramdrv serenum serial vga videoprt
59 DEVICE_DRIVERS
= beep blue floppy null serial vga videoprt
61 # Kernel mode input drivers
62 # keyboard mouclass psaux sermouse
63 INPUT_DRIVERS
= keyboard mouclass psaux
65 # Kernel mode file system drivers
66 # cdfs ext2 fs_rec ms np vfat
67 FS_DRIVERS
= cdfs fs_rec ms np vfat mup ntfs
69 # Kernel mode networking drivers
70 # afd ndis npf tcpip tdi wshtcpip
71 NET_DRIVERS
= afd ndis npf tcpip tdi wshtcpip
73 # Kernel mode networking device drivers
75 NET_DEVICE_DRIVERS
= ne2000
77 # Kernel mode storage drivers
78 # atapi cdrom class2 disk scsiport
79 STORAGE_DRIVERS
= atapi cdrom class2 disk scsiport
82 # autochk cmd format gstart services setup usetup winlogon
83 SYS_APPS
= autochk cmd format gstart services setup usetup winlogon
87 SYS_SVC
= rpcss eventlog
89 APPS
= tests testsets utils
92 # External (sub)systems for ReactOS
93 # rosapps wine posix os2 (requires c++) java (non-existant)
94 EXTERNALS
= rosapps wine posix os2
96 ifeq ($(ROS_BUILD_EXT
),yes
)
97 EXT_MODULES
= $(EXTERNALS
)
102 KERNEL_DRIVERS
= $(DRIVERS_LIB
) $(DEVICE_DRIVERS
) $(INPUT_DRIVERS
) $(FS_DRIVERS
) \
103 $(NET_DRIVERS
) $(NET_DEVICE_DRIVERS
) $(STORAGE_DRIVERS
)
105 all: tools dk implib
$(COMPONENTS
) $(HALS
) $(BUS
) $(LIB_FSLIB
) $(DLLS
) $(SUBSYS
) \
106 $(LOADERS
) $(KERNEL_DRIVERS
) $(SYS_APPS
) $(SYS_SVC
) \
107 $(APPS
) $(EXT_MODULES
)
109 #config: $(TOOLS:%=%_config)
111 depends
: $(LIB_FSLIB
:%=%_depends
) $(DLLS
:%=%_depends
) $(SUBSYS
:%=%_depends
) $(SYS_SVC
:%=%_depends
) \
112 $(EXT_MODULES
:%=%_depends
) $(POSIX_LIBS
:%=%_depends
)
114 implib
: $(COMPONENTS
:%=%_implib
) $(HALS
:%=%_implib
) $(BUS
:%=%_implib
) \
115 $(LIB_FSLIB
:%=%_implib
) $(DLLS
:%=%_implib
) $(LOADERS
:%=%_implib
) \
116 $(KERNEL_DRIVERS
:%=%_implib
) $(SUBSYS
:%=%_implib
) \
117 $(SYS_APPS
:%=%_implib
) $(SYS_SVC
:%=%_implib
) \
118 $(APPS
:%=%_implib
) $(EXT_MODULES
:%=%_implib
)
120 clean: tools dk_clean
$(HALS
:%=%_clean
) \
121 $(COMPONENTS
:%=%_clean
) $(BUS
:%=%_clean
) $(LIB_FSLIB
:%=%_clean
) $(DLLS
:%=%_clean
) \
122 $(LOADERS
:%=%_clean
) $(KERNEL_DRIVERS
:%=%_clean
) $(SUBSYS
:%=%_clean
) \
123 $(SYS_APPS
:%=%_clean
) $(SYS_SVC
:%=%_clean
) \
124 $(NET_APPS
:%=%_clean
) \
125 $(APPS
:%=%_clean
) $(EXT_MODULES
:%=%_clean
) \
126 clean_after tools_clean
129 $(RM
) $(PATH_TO_TOP
)/include/roscfg.h
131 install: tools install_dirs install_before \
132 $(COMPONENTS
:%=%_install
) $(HALS
:%=%_install
) $(BUS
:%=%_install
) \
133 $(LIB_FSLIB
:%=%_install
) $(DLLS
:%=%_install
) $(LOADERS
:%=%_install
) \
134 $(KERNEL_DRIVERS
:%=%_install
) $(SUBSYS
:%=%_install
) \
135 $(SYS_APPS
:%=%_install
) $(SYS_SVC
:%=%_install
) \
136 $(APPS
:%=%_install
) $(EXT_MODULES
:%=%_install
)
138 dist: $(TOOLS_PATH
)/rcopy
$(EXE_POSTFIX
) dist_clean dist_dirs \
139 $(HALS
:%=%_dist
) $(COMPONENTS
:%=%_dist
) $(BUS
:%=%_dist
) $(LIB_FSLIB
:%=%_dist
) \
140 $(DLLS
:%=%_dist
) $(LOADERS
:%=%_dist
) $(KERNEL_DRIVERS
:%=%_dist
) $(SUBSYS
:%=%_dist
) \
141 $(SYS_APPS
:%=%_dist
) $(SYS_SVC
:%=%_dist
) \
142 $(NET_APPS
:%=%_dist
) \
143 $(APPS
:%=%_dist
) $(EXT_MODULES
:%=%_dist
)
145 bootcd_directory_layout
:
146 $(RMKDIR
) $(BOOTCD_DIR
)
147 $(RMKDIR
) $(BOOTCD_DIR
)/bootdisk
148 $(RMKDIR
) $(BOOTCD_DIR
)/install
149 $(RMKDIR
) $(BOOTCD_DIR
)/reactos
150 $(RMKDIR
) $(BOOTCD_DIR
)/reactos
/system32
151 $(RMKDIR
) $(BOOTCD_DIR
)/loader
153 bootcd_bootstrap_files
: $(COMPONENTS
:%=%_bootcd
) $(HALS
:%=%_bootcd
) $(BUS
:%=%_bootcd
) \
154 $(LIB_FSLIB
:%=%_bootcd
) $(DLLS
:%=%_bootcd
) $(KERNEL_DRIVERS
:%=%_bootcd
) \
155 $(SUBSYS
:%=%_bootcd
) $(SYS_APPS
:%=%_bootcd
)
157 bootcd
: all bootcd_directory_layout bootcd_bootstrap_files
158 $(MAKE
) install INSTALL_DIR
=$(BOOTCD_DIR
)/install INSTALL_SYMBOLS
=no BOOTCD_INSTALL
=yes
160 .PHONY
: all depends implib
clean clean_before
install dist bootcd_directory_layout \
161 bootcd_bootstrap_files bootcd
165 # System Applications
168 $(MAKE
) -C subsys
/system
/$*
170 $(SYS_APPS
:%=%_implib
): %_implib
:
171 $(MAKE
) -C subsys
/system
/$* implib
173 $(SYS_APPS
:%=%_clean
): %_clean
:
174 $(MAKE
) -C subsys
/system
/$* clean
176 $(SYS_APPS
:%=%_dist
): %_dist
:
177 $(MAKE
) -C subsys
/system
/$* dist
179 $(SYS_APPS
:%=%_install
): %_install
:
180 $(MAKE
) -C subsys
/system
/$* install
182 $(SYS_APPS
:%=%_bootcd
): %_bootcd
:
183 $(MAKE
) -C subsys
/system
/$* bootcd
185 .PHONY
: $(SYS_APPS
) $(SYS_APPS
:%=%_implib
) $(SYS_APPS
:%=%_clean
) $(SYS_APPS
:%=%_install
) $(SYS_APPS
:%=%_dist
) $(SYS_APPS
:%=%_bootcd
)
191 $(MAKE
) -C services
/$*
193 $(SYS_SVC
:%=%_depends
): %_depends
:
194 $(MAKE
) -C services
/$* depends
196 $(SYS_SVC
:%=%_implib
): %_implib
:
197 $(MAKE
) -C services
/$* implib
199 $(SYS_SVC
:%=%_clean
): %_clean
:
200 $(MAKE
) -C services
/$* clean
202 $(SYS_SVC
:%=%_dist
): %_dist
:
203 $(MAKE
) -C services
/$* dist
205 $(SYS_SVC
:%=%_install
): %_install
:
206 $(MAKE
) -C services
/$* install
208 .PHONY
: $(SYS_SVC
) $(SYS_SVC
:%=%_depends
) $(SYS_SVC
:%=%_implib
) $(SYS_SVC
:%=%_clean
) $(SYS_SVC
:%=%_install
) $(SYS_SVC
:%=%_dist
)
215 # Extra (optional system) Applications
220 $(APPS
:%=%_implib
): %_implib
:
221 $(MAKE
) -C apps
/$* implib
223 $(APPS
:%=%_clean
): %_clean
:
224 $(MAKE
) -C apps
/$* clean
226 $(APPS
:%=%_dist
): %_dist
:
227 $(MAKE
) -C apps
/$* dist
229 $(APPS
:%=%_install
): %_install
:
230 $(MAKE
) -C apps
/$* install
232 .PHONY
: $(APPS
) $(APPS
:%=%_implib
) $(APPS
:%=%_clean
) $(APPS
:%=%_install
) $(APPS
:%=%_dist
)
236 # External ports and subsystem personalities
239 $(MAKE
) -C
$(ROOT_PATH
)/$*
241 $(EXTERNALS
:%=%_depends
): %_depends
:
242 $(MAKE
) -C
$(ROOT_PATH
)/$* depends
244 $(EXTERNALS
:%=%_implib
): %_implib
:
245 $(MAKE
) -C
$(ROOT_PATH
)/$* implib
247 $(EXTERNALS
:%=%_clean
): %_clean
:
248 $(MAKE
) -C
$(ROOT_PATH
)/$* clean
250 $(EXTERNALS
:%=%_dist
): %_dist
:
251 $(MAKE
) -C
$(ROOT_PATH
)/$* dist
253 $(EXTERNALS
:%=%_install
): %_install
:
254 $(MAKE
) -C
$(ROOT_PATH
)/$* install
256 .PHONY
: $(EXTERNALS
) $(EXTERNALS
:%=%_depends
) $(EXTERNALS
:%=%_implib
) $(EXTERNALS
:%=%_clean
) $(EXTERNALS
:%=%_install
) $(EXTERNALS
:%=%_dist
)
268 $(MAKE
) -C tools
clean
274 .PHONY
: tools tools_implib tools_clean tools_install tools_dist
282 $(RMKDIR
) $(DDK_PATH
)
283 $(RMKDIR
) $(DDK_PATH_LIB
)
284 $(RMKDIR
) $(DDK_PATH_INC
)
285 $(RMKDIR
) $(SDK_PATH
)
286 $(RMKDIR
) $(SDK_PATH_LIB
)
287 $(RMKDIR
) $(SDK_PATH_INC
)
288 $(RMKDIR
) $(XDK_PATH
)
289 $(RMKDIR
) $(XDK_PATH_LIB
)
290 $(RMKDIR
) $(XDK_PATH_INC
)
294 # WARNING! Be very sure that there are no important files
295 # in these directories before cleaning them!!!
297 $(RM
) $(DDK_PATH_LIB
)/*.a
298 # $(RM) $(DDK_PATH_INC)/*.h
299 $(RMDIR
) $(DDK_PATH_LIB
)
300 # $(RMDIR) $(DDK_PATH_INC)
301 $(RM
) $(SDK_PATH_LIB
)/*.a
302 # $(RM) $(SDK_PATH_INC)/*.h
303 $(RMDIR
) $(SDK_PATH_LIB
)
304 # $(RMDIR) $(SDK_PATH_INC)
305 $(RM
) $(XDK_PATH_LIB
)/*.a
306 # $(RM) $(XDK_PATH_INC)/*.h
307 $(RMDIR
) $(XDK_PATH_LIB
)
308 # $(RMDIR) $(XDK_PATH_INC)
314 .PHONY
: dk dk_implib dk_clean dk_install dk_dist
321 $(MAKE
) -C iface
/native
326 $(MAKE
) -C iface
/native
clean
328 iface_native_install
:
335 $(MAKE
) -C iface
/addsys
337 iface_additional_implib
:
339 iface_additional_clean
:
340 $(MAKE
) -C iface
/addsys
clean
342 iface_additional_install
:
344 iface_additional_dist
:
346 iface_additional_bootcd
:
348 .PHONY
: iface_native iface_native_implib iface_native_clean iface_native_install \
349 iface_native_dist iface_native_bootcd \
350 iface_additional iface_additional_implib iface_additional_clean \
351 iface_additional_install iface_additional_dist iface_additional_bootcd
357 $(MAKE
) -C drivers
/bus
/$*
359 $(BUS
:%=%_implib
): %_implib
:
360 $(MAKE
) -C drivers
/bus
/$* implib
362 $(BUS
:%=%_clean
): %_clean
:
363 $(MAKE
) -C drivers
/bus
/$* clean
365 $(BUS
:%=%_install
): %_install
:
366 $(MAKE
) -C drivers
/bus
/$* install
368 $(BUS
:%=%_dist
): %_dist
:
369 $(MAKE
) -C drivers
/bus
/$* dist
371 $(BUS
:%=%_bootcd
): %_bootcd
:
372 $(MAKE
) -C drivers
/bus
/$* bootcd
374 .PHONY
: $(BUS
) $(BUS
:%=%_implib
) $(BUS
:%=%_clean
) \
375 $(BUS
:%=%_install
) $(BUS
:%=%_dist
) $(BUS
:%=%_bootcd
)
378 # Driver support libraries rules
381 $(MAKE
) -C drivers
/lib
/$*
383 $(DRIVERS_LIB
:%=%_implib
): %_implib
:
384 $(MAKE
) -C drivers
/lib
/$* implib
386 $(DRIVERS_LIB
:%=%_clean
): %_clean
:
387 $(MAKE
) -C drivers
/lib
/$* clean
389 $(DRIVERS_LIB
:%=%_install
): %_install
:
390 $(MAKE
) -C drivers
/lib
/$* install
392 $(DRIVERS_LIB
:%=%_dist
): %_dist
:
393 $(MAKE
) -C drivers
/lib
/$* dist
395 $(DRIVERS_LIB
:%=%_bootcd
): %_bootcd
:
396 $(MAKE
) -C drivers
/lib
/$* bootcd
398 .PHONY
: $(DRIVERS_LIB
) $(DRIVERS_LIB
:%=%_implib
) $(DRIVERS_LIB
:%=%_clean
) \
399 $(DRIVERS_LIB
:%=%_install
) $(DRIVERS_LIB
:%=%_dist
) $(DRIVERS_LIB
:%=%_bootcd
)
402 # Device driver rules
404 $(DEVICE_DRIVERS
): %:
405 $(MAKE
) -C drivers
/dd
/$*
407 $(DEVICE_DRIVERS
:%=%_implib
): %_implib
:
408 $(MAKE
) -C drivers
/dd
/$* implib
410 $(DEVICE_DRIVERS
:%=%_clean
): %_clean
:
411 $(MAKE
) -C drivers
/dd
/$* clean
413 $(DEVICE_DRIVERS
:%=%_install
): %_install
:
414 $(MAKE
) -C drivers
/dd
/$* install
416 $(DEVICE_DRIVERS
:%=%_dist
): %_dist
:
417 $(MAKE
) -C drivers
/dd
/$* dist
419 $(DEVICE_DRIVERS
:%=%_bootcd
): %_bootcd
:
420 $(MAKE
) -C drivers
/dd
/$* bootcd
422 .PHONY
: $(DEVICE_DRIVERS
) $(DEVICE_DRIVERS
:%=%_implib
) $(DEVICE_DRIVERS
:%=%_clean
) \
423 $(DEVICE_DRIVERS
:%=%_install
) $(DEVICE_DRIVERS
:%=%_dist
) $(DEVICE_DRIVERS
:%=%_bootcd
)
429 $(MAKE
) -C drivers
/input
/$*
431 $(INPUT_DRIVERS
:%=%_implib
): %_implib
:
432 $(MAKE
) -C drivers
/input
/$* implib
434 $(INPUT_DRIVERS
:%=%_clean
): %_clean
:
435 $(MAKE
) -C drivers
/input
/$* clean
437 $(INPUT_DRIVERS
:%=%_install
): %_install
:
438 $(MAKE
) -C drivers
/input
/$* install
440 $(INPUT_DRIVERS
:%=%_dist
): %_dist
:
441 $(MAKE
) -C drivers
/input
/$* dist
443 $(INPUT_DRIVERS
:%=%_bootcd
): %_bootcd
:
444 $(MAKE
) -C drivers
/input
/$* bootcd
446 .PHONY
: $(INPUT_DRIVERS
) $(INPUT_DRIVERS
:%=%_implib
) $(INPUT_DRIVERS
:%=%_clean
)\
447 $(INPUT_DRIVERS
:%=%_install
) $(INPUT_DRIVERS
:%=%_dist
) $(INPUT_DRIVERS
:%=%_bootcd
)
450 $(MAKE
) -C drivers
/fs
/$*
452 $(FS_DRIVERS
:%=%_implib
): %_implib
:
453 $(MAKE
) -C drivers
/fs
/$* implib
455 $(FS_DRIVERS
:%=%_clean
): %_clean
:
456 $(MAKE
) -C drivers
/fs
/$* clean
458 $(FS_DRIVERS
:%=%_install
): %_install
:
459 $(MAKE
) -C drivers
/fs
/$* install
461 $(FS_DRIVERS
:%=%_dist
): %_dist
:
462 $(MAKE
) -C drivers
/fs
/$* dist
464 $(FS_DRIVERS
:%=%_bootcd
): %_bootcd
:
465 $(MAKE
) -C drivers
/fs
/$* bootcd
467 .PHONY
: $(FS_DRIVERS
) $(FS_DRIVERS
:%=%_implib
) $(FS_DRIVERS
:%=%_clean
) \
468 $(FS_DRIVERS
:%=%_install
) $(FS_DRIVERS
:%=%_dist
) $(FS_DRIVERS
:%=%_bootcd
)
471 # Network driver rules
474 $(MAKE
) -C drivers
/net
/$*
476 $(NET_DRIVERS
:%=%_implib
): %_implib
:
477 $(MAKE
) -C drivers
/net
/$* implib
479 $(NET_DRIVERS
:%=%_clean
): %_clean
:
480 $(MAKE
) -C drivers
/net
/$* clean
482 $(NET_DRIVERS
:%=%_install
): %_install
:
483 $(MAKE
) -C drivers
/net
/$* install
485 $(NET_DRIVERS
:%=%_dist
): %_dist
:
486 $(MAKE
) -C drivers
/net
/$* dist
488 $(NET_DRIVERS
:%=%_bootcd
): %_bootcd
:
489 $(MAKE
) -C drivers
/net
/$* bootcd
491 .PHONY
: $(NET_DRIVERS
) $(NET_DRIVERS
:%=%_implib
) $(NET_DRIVERS
:%=%_clean
) \
492 $(NET_DRIVERS
:%=%_install
) $(NET_DRIVERS
:%=%_dist
) $(NET_DRIVERS
:%=%_bootcd
)
494 $(NET_DEVICE_DRIVERS
): %:
495 $(MAKE
) -C drivers
/net
/dd
/$*
497 $(NET_DEVICE_DRIVERS
:%=%_implib
): %_implib
:
498 $(MAKE
) -C drivers
/net
/dd
/$* implib
500 $(NET_DEVICE_DRIVERS
:%=%_clean
): %_clean
:
501 $(MAKE
) -C drivers
/net
/dd
/$* clean
503 $(NET_DEVICE_DRIVERS
:%=%_install
): %_install
:
504 $(MAKE
) -C drivers
/net
/dd
/$* install
506 $(NET_DEVICE_DRIVERS
:%=%_dist
): %_dist
:
507 $(MAKE
) -C drivers
/net
/dd
/$* dist
509 $(NET_DEVICE_DRIVERS
:%=%_bootcd
): %_bootcd
:
510 $(MAKE
) -C drivers
/net
/dd
/$* bootcd
512 .PHONY
: $(NET_DEVICE_DRIVERS
) $(NET_DEVICE_DRIVERS
:%=%_clean
) $(NET_DEVICE_DRIVERS
:%=%_implib
) \
513 $(NET_DEVICE_DRIVERS
:%=%_install
) $(NET_DEVICE_DRIVERS
:%=%_dist
) $(NET_DEVICE_DRIVERS
:%=%_bootcd
)
516 # storage driver rules
518 $(STORAGE_DRIVERS
): %:
519 $(MAKE
) -C drivers
/storage
/$*
521 $(STORAGE_DRIVERS
:%=%_implib
): %_implib
:
522 $(MAKE
) -C drivers
/storage
/$* implib
524 $(STORAGE_DRIVERS
:%=%_clean
): %_clean
:
525 $(MAKE
) -C drivers
/storage
/$* clean
527 $(STORAGE_DRIVERS
:%=%_install
): %_install
:
528 $(MAKE
) -C drivers
/storage
/$* install
530 $(STORAGE_DRIVERS
:%=%_dist
): %_dist
:
531 $(MAKE
) -C drivers
/storage
/$* dist
533 $(STORAGE_DRIVERS
:%=%_bootcd
): %_bootcd
:
534 $(MAKE
) -C drivers
/storage
/$* bootcd
536 .PHONY
: $(STORAGE_DRIVERS
) $(STORAGE_DRIVERS
:%=%_clean
) $(STORAGE_DRIVERS
:%=%_implib
) \
537 $(STORAGE_DRIVERS
:%=%_install
) $(STORAGE_DRIVERS
:%=%_dist
) $(STORAGE_DRIVERS
:%=%_bootcd
)
544 $(MAKE
) -C loaders
/$*
546 $(LOADERS
:%=%_implib
): %_implib
:
548 $(LOADERS
:%=%_clean
): %_clean
:
549 $(MAKE
) -C loaders
/$* clean
551 $(LOADERS
:%=%_install
): %_install
:
552 $(MAKE
) -C loaders
/$* install
554 $(LOADERS
:%=%_dist
): %_dist
:
555 $(MAKE
) -C loaders
/$* dist
557 .PHONY
: $(LOADERS
) $(LOADERS
:%=%_implib
) $(LOADERS
:%=%_clean
) $(LOADERS
:%=%_install
) \
561 # Required system components
568 $(MAKE
) -C ntoskrnl implib
571 $(MAKE
) -C ntoskrnl
clean
574 $(MAKE
) -C ntoskrnl
install
577 $(MAKE
) -C ntoskrnl
dist
580 $(MAKE
) -C ntoskrnl bootcd
582 .PHONY
: ntoskrnl ntoskrnl_implib ntoskrnl_clean ntoskrnl_install ntoskrnl_dist ntoskrnl_bootcd
585 # Hardware Abstraction Layer import library
592 $(MAKE
) -C hal
/hal implib
595 $(MAKE
) -C hal
/hal
clean
598 $(MAKE
) -C hal
/hal
install
601 $(MAKE
) -C hal
/hal
dist
604 $(MAKE
) -C hal
/hal bootcd
606 .PHONY
: hallib hallib_implib hallib_clean hallib_install hallib_dist hallib_bootcd
609 # Hardware Abstraction Layers
615 $(HALS
:%=%_implib
): %_implib
:
616 $(MAKE
) -C hal
/$* implib
618 $(HALS
:%=%_clean
): %_clean
:
619 $(MAKE
) -C hal
/$* clean
621 $(HALS
:%=%_install
): %_install
:
622 $(MAKE
) -C hal
/$* install
624 $(HALS
:%=%_dist
): %_dist
:
625 $(MAKE
) -C hal
/$* dist
627 $(HALS
:%=%_bootcd
): %_bootcd
:
628 $(MAKE
) -C hal
/$* bootcd
630 .PHONY
: $(HALS
) $(HALS
:%=%_implib
) $(HALS
:%=%_clean
) $(HALS
:%=%_install
) $(HALS
:%=%_dist
) $(HALS
:%=%_bootcd
)
633 # File system libraries
637 $(MAKE
) -C lib
/fslib
/$*
639 $(LIB_FSLIB
:%=%_depends
): %_depends
:
640 $(MAKE
) -C lib
/fslib
/$* depends
642 $(LIB_FSLIB
:%=%_implib
): %_implib
:
643 $(MAKE
) -C lib
/fslib
/$* implib
645 $(LIB_FSLIB
:%=%_clean
): %_clean
:
646 $(MAKE
) -C lib
/fslib
/$* clean
648 $(LIB_FSLIB
:%=%_install
): %_install
:
649 $(MAKE
) -C lib
/fslib
/$* install
651 $(LIB_FSLIB
:%=%_dist
): %_dist
:
652 $(MAKE
) -C lib
/fslib
/$* dist
654 $(LIB_FSLIB
:%=%_bootcd
): %_bootcd
:
655 $(MAKE
) -C lib
/fslib
/$* bootcd
657 .PHONY
: $(LIB_FSLIB
) $(LIB_FSLIB
:%=%_depends
) $(LIB_FSLIB
:%=%_implib
) $(LIB_FSLIB
:%=%_clean
) \
658 $(LIB_FSLIB
:%=%_install
) $(LIB_FSLIB
:%=%_dist
) $(LIB_FSLIB
:%=%_bootcd
)
667 $(DLLS
:%=%_depends
): %_depends
:
668 $(MAKE
) -C lib
/$* depends
670 $(DLLS
:%=%_implib
): %_implib
:
671 $(MAKE
) -C lib
/$* implib
673 $(DLLS
:%=%_clean
): %_clean
:
674 $(MAKE
) -C lib
/$* clean
676 $(DLLS
:%=%_install
): %_install
:
677 $(MAKE
) -C lib
/$* install
679 $(DLLS
:%=%_dist
): %_dist
:
680 $(MAKE
) -C lib
/$* dist
682 $(DLLS
:%=%_bootcd
): %_bootcd
:
683 $(MAKE
) -C lib
/$* bootcd
685 .PHONY
: $(DLLS
) $(DLLS
:%=%_depends
) $(DLLS
:%=%_implib
) $(DLLS
:%=%_clean
) $(DLLS
:%=%_install
) $(DLLS
:%=%_dist
) $(DLLS
:%=%_bootcd
)
688 # Subsystem support modules
694 $(SUBSYS
:%=%_depends
): %_depends
:
695 $(MAKE
) -C subsys
/$* depends
697 $(SUBSYS
:%=%_implib
): %_implib
:
698 $(MAKE
) -C subsys
/$* implib
700 $(SUBSYS
:%=%_clean
): %_clean
:
701 $(MAKE
) -C subsys
/$* clean
703 $(SUBSYS
:%=%_install
): %_install
:
704 $(MAKE
) -C subsys
/$* install
706 $(SUBSYS
:%=%_dist
): %_dist
:
707 $(MAKE
) -C subsys
/$* dist
709 $(SUBSYS
:%=%_bootcd
): %_bootcd
:
710 $(MAKE
) -C subsys
/$* bootcd
712 .PHONY
: $(SUBSYS
) $(SUBSYS
:%=%_depends
) $(SUBSYS
:%=%_implib
) $(SUBSYS
:%=%_clean
) $(SUBSYS
:%=%_install
) \
713 $(SUBSYS
:%=%_dist
) $(SUBSYS
:%=%_bootcd
)
716 # Create an installation
720 $(RM
) $(INSTALL_DIR
)/system32
/drivers
/*.
*
721 $(RM
) $(INSTALL_DIR
)/system32
/config
/*.
*
722 $(RM
) $(INSTALL_DIR
)/system32
/*.
*
723 $(RM
) $(INSTALL_DIR
)/symbols
/*.
*
724 $(RM
) $(INSTALL_DIR
)/media
/fonts
/*.
*
725 $(RM
) $(INSTALL_DIR
)/media
/*.
*
726 $(RM
) $(INSTALL_DIR
)/bin
/*.
*
727 $(RM
) $(INSTALL_DIR
)/*.com
728 $(RM
) $(INSTALL_DIR
)/*.bat
729 $(RMDIR
) $(INSTALL_DIR
)/system32
/drivers
730 $(RMDIR
) $(INSTALL_DIR
)/system32
/config
731 $(RMDIR
) $(INSTALL_DIR
)/system32
732 $(RMDIR
) $(INSTALL_DIR
)/symbols
733 $(RMDIR
) $(INSTALL_DIR
)/media
/fonts
734 $(RMDIR
) $(INSTALL_DIR
)/media
735 $(RMDIR
) $(INSTALL_DIR
)/bin
736 $(RMDIR
) $(INSTALL_DIR
)
738 ifneq ($(BOOTCD_INSTALL
),)
741 $(RMKDIR
) $(INSTALL_DIR
)
744 # $(CP) bootdata/autorun.inf $(INSTALL_DIR)/../autorun.inf
745 $(CP
) bootdata
/readme.txt
$(INSTALL_DIR
)/..
/readme.txt
746 $(RLINE
) bootdata
/hivecls.inf
$(INSTALL_DIR
)/hivecls.inf
747 $(RLINE
) bootdata
/hivedef.inf
$(INSTALL_DIR
)/hivedef.inf
748 $(RLINE
) bootdata
/hivesft.inf
$(INSTALL_DIR
)/hivesft.inf
749 $(RLINE
) bootdata
/hivesys.inf
$(INSTALL_DIR
)/hivesys.inf
750 $(RLINE
) bootdata
/txtsetup.sif
$(INSTALL_DIR
)/txtsetup.sif
751 $(CP
) system.hiv
$(INSTALL_DIR
)/system.hiv
752 $(CP
) media
/fonts
/helb____.ttf
$(INSTALL_DIR
)/helb____.ttf
753 $(CP
) media
/fonts
/timr____.ttf
$(INSTALL_DIR
)/timr____.ttf
755 else # BOOTCD_INSTALL
758 $(RMKDIR
) $(INSTALL_DIR
)
759 $(RMKDIR
) $(INSTALL_DIR
)/bin
760 $(RMKDIR
) $(INSTALL_DIR
)/media
761 $(RMKDIR
) $(INSTALL_DIR
)/media
/fonts
762 $(RMKDIR
) $(INSTALL_DIR
)/symbols
763 $(RMKDIR
) $(INSTALL_DIR
)/system32
764 $(RMKDIR
) $(INSTALL_DIR
)/system32
/config
765 $(RMKDIR
) $(INSTALL_DIR
)/system32
/drivers
768 $(CP
) bootc.lst
$(INSTALL_DIR
)/bootc.lst
769 $(CP
) boot.bat
$(INSTALL_DIR
)/boot.bat
770 $(CP
) aboot.bat
$(INSTALL_DIR
)/aboot.bat
771 $(CP
) system.hiv
$(INSTALL_DIR
)/system32
/config
/system.hiv
772 $(CP
) media
/fonts
/helb____.ttf
$(INSTALL_DIR
)/media
/fonts
/helb____.ttf
773 $(CP
) media
/fonts
/timr____.ttf
$(INSTALL_DIR
)/media
/fonts
/timr____.ttf
775 endif # BOOTCD_INSTALL
777 .PHONY
: install_clean install_dirs install_before
781 # Make a distribution saveset
785 $(RM
) $(DIST_DIR
)/symbols
/*.sym
786 $(RM
) $(DIST_DIR
)/drivers
/*.sys
787 $(RM
) $(DIST_DIR
)/subsys
/*.exe
788 $(RM
) $(DIST_DIR
)/dlls
/*.dll
789 $(RM
) $(DIST_DIR
)/apps
/*.exe
790 $(RM
) $(DIST_DIR
)/*.exe
791 $(RMDIR
) $(DIST_DIR
)/symbols
792 $(RMDIR
) $(DIST_DIR
)/subsys
793 $(RMDIR
) $(DIST_DIR
)/drivers
794 $(RMDIR
) $(DIST_DIR
)/dlls
795 $(RMDIR
) $(DIST_DIR
)/apps
799 $(RMKDIR
) $(DIST_DIR
)
800 $(RMKDIR
) $(DIST_DIR
)/apps
801 $(RMKDIR
) $(DIST_DIR
)/dlls
802 $(RMKDIR
) $(DIST_DIR
)/drivers
803 $(RMKDIR
) $(DIST_DIR
)/subsys
804 $(RMKDIR
) $(DIST_DIR
)/symbols
806 .PHONY
: dist_clean dist_dirs
810 find .
-name
"*.[ch]" -print | etags
--language
=c
-