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
22 # Select the server(s) you want to build
24 SERVERS = win32 posix linux os2
27 # Select the loader(s) you want to build
33 # Select the device drivers and filesystems you want
35 DEVICE_DRIVERS = blue ide keyboard mouse null parallel serial
36 # DEVICE_DRIVERS = beep event floppy ide_test sound test test1
37 FS_DRIVERS = minix vfat ext2
38 # FS_DRIVERS = template
39 KERNEL_SERVICES = $(DEVICE_DRIVERS) $(FS_DRIVERS)
41 APPS = args hello shell test cat bench
44 all: $(COMPONENTS) $(DLLS) $(LOADERS) $(KERNEL_SERVICES) $(APPS)
47 clean: $(COMPONENTS:%=%_clean) $(DLLS:%=%_clean) $(LOADERS:%=%_clean) \
48 $(KERNEL_SERVICES:%=%_clean) $(APPS:%=%_clean)
57 $(APPS:%=%_clean): %_clean:
60 .PHONY: $(APPS) $(APPS:%=%_clean)
69 make -C iface/native clean
71 .PHONY: iface_native iface_native_clean
77 make -C services/dd/$*
79 $(DEVICE_DRIVERS:%=%_clean): %_clean:
80 make -C services/dd/$* clean
82 .PHONY: $(DEVICE_DRIVERS) $(DEVICE_DRIVERS:%=%_clean)
85 make -C services/fs/$*
87 $(FS_DRIVERS:%=%_clean): %_clean:
88 make -C services/fs/$* clean
90 .PHONY: $(FS_DRIVERS) $(FS_DRIVERS:%=%_clean)
99 $(LOADERS:%=%_clean): %_clean:
100 make -C loaders/$* clean
102 .PHONY: $(LOADERS) $(LOADERS:%=%_clean)
105 # Required system components
112 make -C ntoskrnl clean
114 .PHONY: ntoskrnl ntoskrnl_clean
123 $(DLLS:%=%_clean): %_clean:
126 .PHONY: $(DLLS) $(DLLS:%=%_clean)