Merged mingw32 branch into main trunk
[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 kernel32 ntdll
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 APPS = hello shell
42
43 all: $(COMPONENTS) $(LOADERS) $(KERNEL_SERVICES) $(APPS)
44 .PHONY: all
45
46 clean: $(COMPONENTS:%=%_clean) $(LOADERS:%=%_clean) \
47 $(KERNEL_SERVICES:%=%_clean) $(APPS:%=%_clean)
48 .PHONY: clean
49
50 #
51 # Applications
52 #
53 $(APPS): %:
54 make -C apps/$*
55
56 $(APPS:%=%_clean): %_clean:
57 make -C apps/$* clean
58
59 .PHONY: $(APPS:%=%) $(APPS:%=%_clean)
60
61 #
62 # Interfaces
63 #
64 iface_native:
65 make -C iface/native
66
67 iface_native_clean:
68 make -C iface/native clean
69
70 .PHONY: iface_native iface_native_clean
71
72 #
73 # Device driver rules
74 #
75 vfat: dummy
76 make -C services/fs/vfat
77
78 sdisk: dummy
79 make -C services/dd/sdisk
80
81 minix: dummy
82 make -C services/fs/minix
83
84 template: dummy
85 make -C services/fs/template
86
87 ide-test: dummy
88 make -C services/dd/ide-test
89
90 ide: dummy
91 make -C services/dd/ide
92
93 test: dummy
94 make -C services/dd/test
95
96 test1: dummy
97 make -C services/dd/test1
98
99 null: dummy
100 make -C services/dd/null
101
102 parallel: dummy
103 make -C services/dd/parallel
104
105 keyboard: dummy
106 make -C services/dd/keyboard
107
108 blue: dummy
109 make -C services/dd/blue
110
111 mouse: dummy
112 make -C services/dd/mouse
113
114 serial: dummy
115 make -C services/dd/serial
116
117 sound: dummy
118 make -C services/dd/sound
119
120 #
121 # Kernel loaders
122 #
123
124 dos: dummy
125 make -C loaders/dos
126
127 #
128 # Required system components
129 #
130
131 ntoskrnl: dummy
132 make -C ntoskrnl
133
134 kernel32: dummy
135 make -C lib/kernel32
136
137 ntdll: dummy
138 make -C lib/ntdll
139
140 crtdll: dummy
141 make -C lib/crtdll
142
143 mingw32: dummy
144 make -C lib/mingw32
145
146 dummy: