10 HOST = mingw32-windows
15 # Required to run the system
17 COMPONENTS = iface_native ntoskrnl
18 DLLS = ntdll kernel32 crtdll user32 fmifs gdi32
19 #DLLS = crtdll mingw32
23 # Select the server(s) you want to build
26 # SERVERS = posix linux os2
29 # Select the loader(s) you want to build
35 # Select the device drivers and filesystems you want
37 DEVICE_DRIVERS = blue ide keyboard mouse null parallel serial vidport
38 # DEVICE_DRIVERS = beep event floppy ide_test sound test test1
40 # FS_DRIVERS = minix ext2 template
41 KERNEL_SERVICES = $(DEVICE_DRIVERS) $(FS_DRIVERS)
43 APPS = args hello shell test cat bench
46 all: $(COMPONENTS) $(DLLS) $(SUBSYS) $(LOADERS) $(KERNEL_SERVICES) $(APPS)
49 clean: $(COMPONENTS:%=%_clean) $(DLLS:%=%_clean) $(LOADERS:%=%_clean) \
50 $(KERNEL_SERVICES:%=%_clean) $(APPS:%=%_clean)
59 $(APPS:%=%_clean): %_clean:
62 .PHONY: $(APPS) $(APPS:%=%_clean)
71 make -C iface/native clean
73 .PHONY: iface_native iface_native_clean
79 make -C services/dd/$*
81 $(DEVICE_DRIVERS:%=%_clean): %_clean:
82 make -C services/dd/$* clean
84 .PHONY: $(DEVICE_DRIVERS) $(DEVICE_DRIVERS:%=%_clean)
87 make -C services/fs/$*
89 $(FS_DRIVERS:%=%_clean): %_clean:
90 make -C services/fs/$* clean
92 .PHONY: $(FS_DRIVERS) $(FS_DRIVERS:%=%_clean)
101 $(LOADERS:%=%_clean): %_clean:
102 make -C loaders/$* clean
104 .PHONY: $(LOADERS) $(LOADERS:%=%_clean)
107 # Required system components
114 make -C ntoskrnl clean
116 .PHONY: ntoskrnl ntoskrnl_clean
125 $(DLLS:%=%_clean): %_clean:
128 .PHONY: $(DLLS) $(DLLS:%=%_clean)
136 $(SUBSYS:%=%_clean): %_clean:
139 .PHONY: $(SUBSYS) $(SUBSYS:%=%_clean)