Sync with trunk r43123
[reactos.git] / reactos / ReactOS-amd64.rbuild
1 <?xml version="1.0"?>
2 <!DOCTYPE project SYSTEM "tools/rbuild/project.dtd">
3 <project name="ReactOS" makefile="makefile-amd64.auto" xmlns:xi="http://www.w3.org/2001/XInclude">
4 <xi:include href="config-amd64.rbuild">
5 <xi:fallback>
6 <xi:include href="config-amd64.template.rbuild" />
7 </xi:fallback>
8 </xi:include>
9
10 <define name="_M_AMD64" />
11 <define name="_AMD64_" />
12 <define name="_M_AXP64" />
13 <define name="__x86_64__" />
14 <!-- define name="_X86AMD64_" / FIXME: what is this used for? -->
15 <define name="_WIN64" />
16 <define name="TARGET_amd64" host="true" />
17
18 <define name="USE_COMPILER_EXCEPTIONS" />
19
20 <property name="PLATFORM" value="PC"/>
21 <property name="usewrc" value="false"/>
22 <property name="WINEBUILD_FLAGS" value="--kill-at"/>
23 <property name="NTOSKRNL_SHARED" value="-shared"/>
24
25 <if property="OPTIMIZE" value="1">
26 <compilerflag>-Os</compilerflag>
27 <compilerflag>-ftracer</compilerflag>
28 <compilerflag>-momit-leaf-frame-pointer</compilerflag>
29 </if>
30 <if property="OPTIMIZE" value="2">
31 <compilerflag>-Os</compilerflag>
32 </if>
33 <if property="OPTIMIZE" value="3">
34 <compilerflag>-O1</compilerflag>
35 </if>
36 <if property="OPTIMIZE" value="4">
37 <compilerflag>-O2</compilerflag>
38 </if>
39 <if property="OPTIMIZE" value="5">
40 <compilerflag>-O3</compilerflag>
41 </if>
42
43 <compilerflag>-U_X86_</compilerflag>
44 <compilerflag>-mpreferred-stack-boundary=4</compilerflag>
45 <compilerflag>-fno-strict-aliasing</compilerflag>
46 <compilerflag>-Wno-strict-aliasing</compilerflag>
47 <compilerflag>-Wpointer-arith</compilerflag>
48 <compilerflag>-Wno-multichar</compilerflag>
49 <!-- compilerflag>-H</compilerflag> enable this for header traces -->
50 <linkerflag>-disable-stdcall-fixup</linkerflag>
51 <linkerflag>-static</linkerflag>
52 <linkerflag>--unique=.eh_frame</linkerflag>
53
54 <!-- Here starts <xi:include href="ReactOS-generic.rbuild" /> -->
55
56 <xi:include href="baseaddress.rbuild" />
57
58 <define name="__REACTOS__" />
59 <define name="__REACTOS__" host="true" />
60
61 <if property="DBG" value="1">
62 <define name="DBG">1</define>
63 <define name="_SEH_ENABLE_TRACE" />
64 <property name="DBG_OR_KDBG" value="true" />
65 </if>
66 <if property="DBG" value="0">
67 <define name="DBG">0</define>
68 </if>
69
70 <if property="KDBG" value="1">
71 <define name="KDBG">1</define>
72 <property name="DBG_OR_KDBG" value="true" />
73 </if>
74
75 <!-- The version target valid values are: Nt4 , NT5 , NT51 -->
76 <property name="VERSION_TARGET" value="NT52" />
77
78 <if property="VERSION_TARGET" value="NT4">
79 <define name="WINVER">0x400</define>
80 <define name="_WIN32_IE">0x600</define>
81 <define name="_WIN32_WINNT">0x400</define>
82 <define name="_WIN32_WINDOWS">0x400</define>
83 <define name="_SETUPAPI_VER">0x400</define>
84 </if>
85
86 <if property="VERSION_TARGET" value="NT5">
87 <define name="WINVER">0x500</define>
88 <define name="_WIN32_IE">0x600</define>
89 <define name="_WIN32_WINNT">0x500</define>
90 <define name="_WIN32_WINDOWS">0x500</define>
91 <define name="_SETUPAPI_VER">0x500</define>
92 </if>
93
94 <if property="VERSION_TARGET" value="NT51">
95 <define name="WINVER">0x501</define>
96 <define name="_WIN32_IE">0x600</define>
97 <define name="_WIN32_WINNT">0x501</define>
98 <define name="_WIN32_WINDOWS">0x501</define>
99 <define name="_SETUPAPI_VER">0x501</define>
100 </if>
101
102 <if property="VERSION_TARGET" value="NT52">
103 <define name="WINVER">0x502</define>
104 <define name="_WIN32_IE">0x600</define>
105 <define name="_WIN32_WINNT">0x502</define>
106 <define name="_WIN32_WINDOWS">0x502</define>
107 <define name="_SETUPAPI_VER">0x502</define>
108 </if>
109
110 <if property="VERSION_TARGET" value="NT6">
111 <define name="WINVER">0x600</define>
112 <define name="_WIN32_IE">0x600</define>
113 <define name="_WIN32_WINNT">0x600</define>
114 <define name="_WIN32_WINDOWS">0x600</define>
115 <define name="_SETUPAPI_VER">0x600</define>
116 </if>
117
118 <include>.</include>
119 <include>include</include>
120 <include root="intermediate">include</include>
121 <include>include/psdk</include>
122 <include root="intermediate">include/psdk</include>
123 <include>include/dxsdk</include>
124 <include root="intermediate">include/dxsdk</include>
125 <include>include/crt</include>
126 <include>include/crt/mingw32</include>
127 <include>include/ddk</include>
128 <include>include/GL</include>
129 <include>include/ndk</include>
130 <include>include/reactos</include>
131 <include root="intermediate">include/reactos</include>
132 <include root="intermediate">include/reactos/mc</include>
133 <include>include/reactos/libs</include>
134
135 <include host="true">include</include>
136 <include host="true" root="intermediate">include</include>
137 <include host="true">include/reactos</include>
138 <include host="true">include/reactos/wine</include>
139
140 <if property="USERMODE" value="1">
141 <directory name="base">
142 <xi:include href="base/base.rbuild" />
143 </directory>
144
145 <directory name="dll">
146 <xi:include href="dll/dll.rbuild" />
147 </directory>
148 </if>
149
150 <directory name="boot">
151 <xi:include href="boot/boot.rbuild" />
152 </directory>
153
154 <directory name="drivers">
155 <directory name="base">
156 <xi:include href="drivers/base/directory.rbuild" />
157 </directory>
158 <directory name="bus">
159 <xi:include href="drivers/bus/directory.rbuild" />
160 </directory>
161 <directory name="directx">
162 <xi:include href="drivers/directx/directory.rbuild" />
163 </directory>
164 <directory name="filesystems">
165 <xi:include href="drivers/filesystems/directory.rbuild" />
166 </directory>
167 <directory name="input">
168 <xi:include href="drivers/input/directory.rbuild" />
169 </directory>
170 <directory name="ksfilter">
171 <xi:include href="drivers/ksfilter/directory.rbuild" />
172 </directory>
173
174 <!-- directory name="multimedia">
175 <xi:include href="drivers/multimedia/directory.rbuild" />
176 </directory -->
177
178 <directory name="network">
179 <xi:include href="drivers/network/directory.rbuild" />
180 </directory>
181 <directory name="parallel">
182 <xi:include href="drivers/parallel/directory.rbuild" />
183 </directory>
184 <directory name="serial">
185 <xi:include href="drivers/serial/directory.rbuild" />
186 </directory>
187 <directory name="setup">
188 <xi:include href="drivers/setup/directory.rbuild" />
189 </directory>
190 <directory name="storage">
191 <xi:include href="drivers/storage/directory.rbuild" />
192 </directory>
193 <directory name="usb">
194 <xi:include href="drivers/usb/directory.rbuild" />
195 </directory>
196 <directory name="video">
197 <xi:include href="drivers/video/directory.rbuild" />
198 </directory>
199 <directory name="wdm">
200 <xi:include href="drivers/wdm/wdm.rbuild" />
201 </directory>
202 <directory name="wmi">
203 <xi:include href="drivers/wmi/wmilib.rbuild" />
204 </directory>
205 </directory>
206
207 <directory name="hal">
208 <xi:include href="hal/hal.rbuild" />
209 </directory>
210
211 <directory name="include">
212 <xi:include href="include/directory.rbuild" />
213 </directory>
214
215 <directory name="lib">
216 <directory name="3rdparty">
217 <directory name="adns">
218 <xi:include href="lib/3rdparty/adns/adns.rbuild" />
219 </directory>
220 <directory name="bzip2">
221 <xi:include href="lib/3rdparty/bzip2/bzip2.rbuild" />
222 </directory>
223 <directory name="expat">
224 <xi:include href="lib/3rdparty/expat/expat.rbuild" />
225 </directory>
226 <directory name="freetype">
227 <xi:include href="lib/3rdparty/freetype/freetype.rbuild" />
228 </directory>
229 <directory name="icu4ros">
230 <xi:include href="lib/3rdparty/icu4ros/icu4ros.rbuild" />
231 </directory>
232 <directory name="libsamplerate">
233 <xi:include href="lib/3rdparty/libsamplerate/libsamplerate.rbuild" />
234 </directory>
235 <directory name="libwine">
236 <xi:include href="lib/3rdparty/libwine/libwine.rbuild" />
237 </directory>
238 <directory name="libxml2">
239 <xi:include href="lib/3rdparty/libxml2/libxml2.rbuild" />
240 </directory>
241
242 <if property="USERMODE" value="1">
243 <directory name="mingw">
244 <xi:include href="lib/3rdparty/mingw/mingw.rbuild" />
245 </directory>
246 </if>
247 <directory name="zlib">
248 <xi:include href="lib/3rdparty/zlib/zlib.rbuild" />
249 </directory>
250 </directory>
251 <directory name="sdk">
252 <xi:include href="lib/sdk/sdk.rbuild" />
253 </directory>
254 <directory name="cmlib">
255 <xi:include href="lib/cmlib/cmlib.rbuild" />
256 </directory>
257 <directory name="debugsup">
258 <xi:include href="lib/debugsup/debugsup.rbuild" />
259 </directory>
260 <directory name="drivers">
261 <xi:include href="lib/drivers/directory.rbuild" />
262 </directory>
263 <directory name="epsapi">
264 <xi:include href="lib/epsapi/epsapi.rbuild" />
265 </directory>
266 <directory name="fslib">
267 <xi:include href="lib/fslib/directory.rbuild" />
268 </directory>
269 <directory name="host">
270 <xi:include href="lib/host/directory.rbuild" />
271 </directory>
272 <directory name="inflib">
273 <xi:include href="lib/inflib/inflib.rbuild" />
274 </directory>
275 <directory name="nls">
276 <xi:include href="lib/nls/nls.rbuild" />
277 </directory>
278 <directory name="ntdllsys">
279 <xi:include href="lib/ntdllsys/ntdllsys.rbuild" />
280 </directory>
281 <directory name="pseh">
282 <xi:include href="lib/pseh/pseh.rbuild" />
283 </directory>
284 <directory name="recyclebin">
285 <xi:include href="lib/recyclebin/recyclebin.rbuild" />
286 </directory>
287 <directory name="rossym">
288 <xi:include href="lib/rossym/rossym.rbuild" />
289 </directory>
290 <directory name="rtl">
291 <xi:include href="lib/rtl/rtl.rbuild" />
292 </directory>
293 <directory name="smlib">
294 <xi:include href="lib/smlib/smlib.rbuild" />
295 </directory>
296 <directory name="win32ksys">
297 <xi:include href="lib/win32ksys/win32ksys.rbuild" />
298 </directory>
299 </directory>
300
301 <directory name="media">
302 <xi:include href="media/media.rbuild" />
303 </directory>
304
305 <directory name="ntoskrnl">
306 <xi:include href="ntoskrnl/ntoskrnl.rbuild" />
307 </directory>
308
309 <directory name="subsystems">
310 <xi:include href="subsystems/subsystems.rbuild" />
311 </directory>
312
313 <directory name="tools">
314 <xi:include href="tools/tools.rbuild" />
315 </directory>
316
317 <!-- Here ends <xi:include href="ReactOS-generic.rbuild" /> -->
318
319 </project>