10 #HOST = mingw32-windows
15 # Required to run the system
17 COMPONENTS = iface_native ntoskrnl
18 DLLS = ntdll kernel32 crtdll user32 fmifs
19 #DLLS = crtdll mingw32
23 # Select the server(s) you want to build
25 SERVERS = win32 posix linux os2
28 # Select the loader(s) you want to build
34 # Select the device drivers and filesystems you want
36 DEVICE_DRIVERS = blue ide keyboard mouse null parallel serial
37 # DEVICE_DRIVERS = beep event floppy ide_test sound test test1
38 FS_DRIVERS = minix vfat ext2
39 # FS_DRIVERS = template
40 KERNEL_SERVICES = $(DEVICE_DRIVERS) $(FS_DRIVERS)
42 APPS = args hello shell test cat bench
45 all: $(COMPONENTS) $(DLLS) $(SUBSYS) $(LOADERS) $(KERNEL_SERVICES) $(APPS)
48 clean: $(COMPONENTS:%=%_clean) $(DLLS:%=%_clean) $(LOADERS:%=%_clean) \
49 $(KERNEL_SERVICES:%=%_clean) $(APPS:%=%_clean)
58 $(APPS:%=%_clean): %_clean:
61 .PHONY: $(APPS) $(APPS:%=%_clean)
70 make -C iface/native clean
72 .PHONY: iface_native iface_native_clean
78 make -C services/dd/$*
80 $(DEVICE_DRIVERS:%=%_clean): %_clean:
81 make -C services/dd/$* clean
83 .PHONY: $(DEVICE_DRIVERS) $(DEVICE_DRIVERS:%=%_clean)
86 make -C services/fs/$*
88 $(FS_DRIVERS:%=%_clean): %_clean:
89 make -C services/fs/$* clean
91 .PHONY: $(FS_DRIVERS) $(FS_DRIVERS:%=%_clean)
100 $(LOADERS:%=%_clean): %_clean:
101 make -C loaders/$* clean
103 .PHONY: $(LOADERS) $(LOADERS:%=%_clean)
106 # Required system components
113 make -C ntoskrnl clean
115 .PHONY: ntoskrnl ntoskrnl_clean
124 $(DLLS:%=%_clean): %_clean:
127 .PHONY: $(DLLS) $(DLLS:%=%_clean)
135 $(SUBSYS:%=%_clean): %_clean:
138 .PHONY: $(SUBSYS) $(SUBSYS:%=%_clean)