Changes to be able to build system
[reactos.git] / reactos / makefile.dos
1 #
2 # Global makefile
3 #
4
5 #
6 # Select your host
7 #
8 #HOST = djgpp-linux
9 #HOST = mingw32-linux
10 #HOST = djgpp-msdos
11 HOST = mingw32-windows
12
13 ifeq ($(HOST),mingw32-windows)
14 TOPDIR := /TEMP/M32/REACTOS
15 endif
16
17 include rules.mak
18
19 #
20 # Required to run the system
21 #
22 COMPONENTS = iface_native ntoskrnl ntdll kernel32
23 # crtdll mingw32
24
25 #
26 # Select the server(s) you want to build
27 #
28 SERVERS = win32 posix linux os2
29
30 #
31 # Select the loader(s) you want to build
32 #
33 LOADERS = dos
34
35 #
36 # Select the device drivers and filesystems you want
37 #
38 KERNEL_SERVICES = blue parallel keyboard null mouse serial sound ide test sdisk \
39 minix vfat
40
41 # cmd
42 APPS = hello shell cmd
43
44 all: $(COMPONENTS) $(LOADERS) $(KERNEL_SERVICES) $(APPS)
45 .PHONY: all
46
47 clean: $(COMPONENTS:%=%_clean) $(LOADERS:%=%_clean) \
48 $(KERNEL_SERVICES:%=%_clean) $(APPS:%=%_clean)
49 .PHONY: clean
50
51 #
52 # Applications
53 #
54 $(APPS): %:
55 make -C apps/$*
56
57 $(APPS:%=%_clean): %_clean:
58 make -C apps/$* clean
59
60 .PHONY: $(APPS:%=%) $(APPS:%=%_clean)
61
62 #
63 # Interfaces
64 #
65 iface_native:
66 make -C iface/native
67
68 iface_native_clean:
69 make -C iface/native clean
70
71 .PHONY: iface_native iface_native_clean
72
73 #
74 # Device driver rules
75 #
76 vfat: dummy
77 make -C services/fs/vfat
78
79 sdisk: dummy
80 make -C services/dd/sdisk
81
82 minix: dummy
83 make -C services/fs/minix
84
85 template: dummy
86 make -C services/fs/template
87
88 ide-test: dummy
89 make -C services/dd/ide-test
90
91 ide: dummy
92 make -C services/dd/ide
93
94 test: dummy
95 make -C services/dd/test
96
97 test1: dummy
98 make -C services/dd/test1
99
100 null: dummy
101 make -C services/dd/null
102
103 parallel: dummy
104 make -C services/dd/parallel
105
106 keyboard: dummy
107 make -C services/dd/keyboard
108
109 blue: dummy
110 make -C services/dd/blue --file=makefile
111
112 mouse: dummy
113 make -C services/dd/mouse
114
115 serial: dummy
116 make -C services/dd/serial
117
118 sound: dummy
119 make -C services/dd/sound
120
121 #
122 # Kernel loaders
123 #
124
125 dos: dummy
126 make -C loaders/dos
127
128 #
129 # Required system components
130 #
131
132 ntoskrnl: dummy
133 make -C ntoskrnl
134
135 kernel32: dummy
136 make -C lib/kernel32
137
138 ntdll: dummy
139 make -C lib/ntdll
140
141 crtdll: dummy
142 make -C lib/crtdll
143
144 mingw32: dummy
145 make -C lib/mingw32
146
147 dummy: