]>
Commit | Line | Data |
---|---|---|
1 | <?xml version="1.0" ?> | |
2 | <!-- $Id$ --> | |
3 | ||
4 | <makefile> | |
5 | ||
6 | <set var="BUILDING_LIB" overwrite="0">0</set> | |
7 | ||
8 | <option name="SHARED"> | |
9 | <values>0,1</values> | |
10 | <values-description>,DLL</values-description> | |
11 | <default-value>0</default-value> | |
12 | <description> | |
13 | What type of library to build? | |
14 | </description> | |
15 | </option> | |
16 | ||
17 | <option name="WXUNIV"> | |
18 | <values>0,1</values> | |
19 | <values-description>,Universal</values-description> | |
20 | <default-value>0</default-value> | |
21 | <description> | |
22 | Build wxUniversal instead of native port? | |
23 | </description> | |
24 | </option> | |
25 | ||
26 | <option name="UNICODE"> | |
27 | <values>0,1</values> | |
28 | <values-description>,Unicode</values-description> | |
29 | <default-value>0</default-value> | |
30 | <description> | |
31 | Compile Unicode build of wxWidgets? | |
32 | </description> | |
33 | </option> | |
34 | ||
35 | <if cond="FORMAT!='autoconf' and FORMAT!='watcom'"> | |
36 | <option name="MSLU"> | |
37 | <values>0,1</values> | |
38 | <default-value>0</default-value> | |
39 | <description> | |
40 | Use MSLU library when building Unicode version. | |
41 | </description> | |
42 | </option> | |
43 | </if> | |
44 | <if cond="FORMAT=='autoconf' or FORMAT=='watcom'"> | |
45 | <set var="MSLU">0</set> | |
46 | </if> | |
47 | ||
48 | <option name="BUILD"> | |
49 | <values>debug,release</values> | |
50 | <values-description>Debug,Release</values-description> | |
51 | <default-value>debug</default-value> | |
52 | <description> | |
53 | Type of compiled binaries | |
54 | </description> | |
55 | </option> | |
56 | ||
57 | <!-- FIXME: restore this once bakefile is fixed to not use | |
58 | /Gm /GZ (incompatible with /O2) w/ debug-info --> | |
59 | <set var="DEBUG_INFO_DEFAULT"> | |
60 | <if cond="FORMAT in ['msvc','msvc6prj','msevc4prj']">1</if> | |
61 | <if cond="FORMAT not in ['msvc','msvc6prj','msevc4prj']">default</if> | |
62 | </set> | |
63 | --> | |
64 | <set var="DEBUG_INFO_DEFAULT">default</set> | |
65 | ||
66 | <option name="DEBUG_INFO"> | |
67 | <values>0,1,default</values> | |
68 | <default-value>$(DEBUG_INFO_DEFAULT)</default-value> | |
69 | <description> | |
70 | Should debugging info be included in the executables? The default value | |
71 | "default" means that debug info will be included if BUILD=debug | |
72 | and not included if BUILD=release. | |
73 | </description> | |
74 | </option> | |
75 | ||
76 | <option name="DEBUG_FLAG"> | |
77 | <values>0,1,default</values> | |
78 | <default-value>default</default-value> | |
79 | <description> | |
80 | Should __WXDEBUG__ be defined? The default value "default" means that it will | |
81 | be defined if BUILD=debug and not defined if BUILD=release. | |
82 | </description> | |
83 | </option> | |
84 | ||
85 | <if cond="FORMAT=='msvc'"> | |
86 | <option name="DEBUG_RUNTIME_LIBS"> | |
87 | <values>0,1,default</values> | |
88 | <default-value>default</default-value> | |
89 | <description> | |
90 | Should link against debug RTL (msvcrtd.dll) or release (msvcrt.dll)? | |
91 | Acts according to BUILD by default. | |
92 | </description> | |
93 | </option> | |
94 | </if> | |
95 | <if cond="FORMAT!='msvc'"> | |
96 | <set var="DEBUG_RUNTIME_LIBS">default</set> | |
97 | </if> | |
98 | ||
99 | <set var="MONOLITHIC_DEFAULT"> | |
100 | <if cond="FORMAT=='watcom'">1</if> | |
101 | <if cond="FORMAT!='watcom'">0</if> | |
102 | </set> | |
103 | <option name="MONOLITHIC"> | |
104 | <values>0,1</values> | |
105 | <values-description>Multilib,Monolithic</values-description> | |
106 | <default-value>$(MONOLITHIC_DEFAULT)</default-value> | |
107 | <description> | |
108 | Multiple libraries or single huge monolithic one? | |
109 | </description> | |
110 | </option> | |
111 | ||
112 | <if cond="FORMAT=='autoconf'"> <!-- FIXME - temporary --> | |
113 | <option name="USE_PLUGINS"> | |
114 | <values>0,1</values> | |
115 | <default-value>1</default-value> | |
116 | <description> | |
117 | Build parts of the library as dynamically loadable plugins | |
118 | (only supported in multilib build)? | |
119 | </description> | |
120 | </option> | |
121 | </if> | |
122 | <if cond="FORMAT!='autoconf'"> | |
123 | <set var="USE_PLUGINS">0</set> <!-- FIXME - temporary --> | |
124 | </if> | |
125 | ||
126 | <option name="USE_GUI"> | |
127 | <values>0,1</values> | |
128 | <values-description>Base,GUI</values-description> | |
129 | <default-value>1</default-value> | |
130 | <description> | |
131 | Build GUI libraries? | |
132 | </description> | |
133 | </option> | |
134 | ||
135 | <option name="USE_HTML"> | |
136 | <values>0,1</values> | |
137 | <default-value>1</default-value> | |
138 | <description> | |
139 | Build wxHTML library (USE_GUI must be 1)? | |
140 | </description> | |
141 | </option> | |
142 | ||
143 | <option name="USE_XRC"> | |
144 | <values>0,1</values> | |
145 | <default-value>1</default-value> | |
146 | <description> | |
147 | Build wxXRC library (USE_GUI must be 1)? | |
148 | </description> | |
149 | </option> | |
150 | ||
151 | <option name="USE_OPENGL"> | |
152 | <values>0,1</values> | |
153 | <default-value>0</default-value> | |
154 | <description> | |
155 | Build OpenGL canvas library (USE_GUI must be 1)? | |
156 | </description> | |
157 | </option> | |
158 | ||
159 | <option name="USE_ODBC"> | |
160 | <values>0,1</values> | |
161 | <default-value>0</default-value> | |
162 | <description> | |
163 | Build ODBC database classes (USE_GUI must be 1)? | |
164 | </description> | |
165 | </option> | |
166 | ||
167 | <option name="USE_QA"> | |
168 | <values>0,1</values> | |
169 | <default-value>0</default-value> | |
170 | <description> | |
171 | Build quality assurance classes library (USE_GUI must be 1)? | |
172 | </description> | |
173 | </option> | |
174 | ||
175 | <option name="USE_EXCEPTIONS"> | |
176 | <values>0,1</values> | |
177 | <default-value>1</default-value> | |
178 | <description> | |
179 | Enable exceptions in compiled code. | |
180 | </description> | |
181 | </option> | |
182 | ||
183 | <option name="USE_RTTI"> | |
184 | <values>0,1</values> | |
185 | <default-value>1</default-value> | |
186 | <description> | |
187 | Enable run-time type information (RTTI) in compiled code. | |
188 | </description> | |
189 | </option> | |
190 | ||
191 | <option name="USE_THREADS"> | |
192 | <values>0,1</values> | |
193 | <default-value>1</default-value> | |
194 | <description> | |
195 | Enable threading in compiled code. | |
196 | </description> | |
197 | </option> | |
198 | ||
199 | <option name="OFFICIAL_BUILD"> | |
200 | <values>0,1</values> | |
201 | <default-value>0</default-value> | |
202 | <description> | |
203 | Is this official build by wxWidgets developers? | |
204 | </description> | |
205 | </option> | |
206 | <option name="VENDOR"> | |
207 | <default-value>custom</default-value> | |
208 | <description> | |
209 | Use this to name your customized DLLs differently | |
210 | </description> | |
211 | </option> | |
212 | <!-- These basically do what vendor does in the places it didn't. --> | |
213 | <!-- They should all be unified under some suitable descriptor --> | |
214 | <option name="WX_FLAVOUR"> | |
215 | <default-value></default-value> | |
216 | </option> | |
217 | <option name="WX_LIB_FLAVOUR"> | |
218 | <default-value></default-value> | |
219 | </option> | |
220 | ||
221 | <option name="CFG"> | |
222 | <default-value></default-value> | |
223 | <description> | |
224 | Name of your custom configuration. This affects directory | |
225 | where object files are stored as well as the location of | |
226 | compiled .lib files and setup.h under the lib/ toplevel directory. | |
227 | </description> | |
228 | </option> | |
229 | ||
230 | <!-- unit tests support: --> | |
231 | <option name="CPPUNIT_CFLAGS"> | |
232 | <default-value></default-value> | |
233 | <description> | |
234 | Compiler flags needed to compile test suite in tests directory. If you want | |
235 | to run the tests, set it so that the compiler can find CppUnit headers. | |
236 | </description> | |
237 | </option> | |
238 | ||
239 | <option name="CPPUNIT_LIBS"> | |
240 | <default-value></default-value> | |
241 | <description> | |
242 | Linker flags needed to link test suite in tests directory. If you want | |
243 | to run the tests, include CppUnit library here. | |
244 | </description> | |
245 | </option> | |
246 | ||
247 | ||
248 | <!-- ================================================================== --> | |
249 | <!-- Autoconf --> | |
250 | <!-- ================================================================== --> | |
251 | ||
252 | <if cond="FORMAT=='autoconf'"> | |
253 | <option name="DEREZ"/> | |
254 | <option name="TOOLKIT"/> | |
255 | <option name="TOOLKIT_LOWERCASE"/> | |
256 | <option name="TOOLKIT_VERSION"/> | |
257 | <option name="TOOLCHAIN_NAME"/> | |
258 | <option name="TOOLCHAIN_FULLNAME"/> | |
259 | <option name="EXTRALIBS"/> | |
260 | <option name="EXTRALIBS_XML"/> | |
261 | <option name="EXTRALIBS_HTML"/> | |
262 | <option name="EXTRALIBS_ODBC"/> | |
263 | <option name="EXTRALIBS_GUI"/> | |
264 | <option name="EXTRALIBS_OPENGL"/> | |
265 | <option name="EXTRALIBS_SDL"/> | |
266 | <option name="EXTRALIBS_GNOMEPRINT"/> | |
267 | <option name="HOST_SUFFIX"/> | |
268 | <option name="SAMPLES_RPATH_FLAG"/> | |
269 | <option name="SAMPLES_RPATH_POSTLINK"/> | |
270 | ||
271 | <set var="TOP_SRCDIR">$(top_srcdir)/</set> | |
272 | <set var="RUNTIME_LIBS">dynamic</set> | |
273 | <set var="WXTOPDIR"/> <!-- to be overriden on bakefile cmd line --> | |
274 | ||
275 | <option name="WITH_PLUGIN_SDL"> | |
276 | <values>0,1</values> | |
277 | </option> | |
278 | </if> | |
279 | ||
280 | ||
281 | <!-- ================================================================== --> | |
282 | <!-- windows compilers --> | |
283 | <!-- ================================================================== --> | |
284 | ||
285 | <if cond="FORMAT!='autoconf'"> | |
286 | <option name="RUNTIME_LIBS"> | |
287 | <values>dynamic,static</values> | |
288 | <default-value>dynamic</default-value> | |
289 | <description> | |
290 | Version of C runtime library to use. You can change this to | |
291 | static if SHARED=0, but it is highly recommended to not do | |
292 | it if SHARED=1 unless you know what you are doing. | |
293 | </description> | |
294 | </option> | |
295 | ||
296 | <set var="WXTOPDIR"/> <!-- to be overriden on bakefile cmd line --> | |
297 | ||
298 | <set var="TOOLKIT" overwrite="0"> | |
299 | <if cond="FORMAT!='msevc4prj'">MSW</if> | |
300 | <if cond="FORMAT=='msevc4prj'">WINCE</if> | |
301 | </set> | |
302 | <set var="TOOLKIT_LOWERCASE">$(TOOLKIT.lower())</set> | |
303 | <set var="TOOLKIT_VERSION"/> | |
304 | <set var="HOST_SUFFIX"/> | |
305 | <set var="EXTRACFLAGS"/> | |
306 | <set var="EXTRALIBS"/> | |
307 | <set var="EXTRALIBS_XML"/> | |
308 | <set var="EXTRALIBS_HTML"/> | |
309 | <set var="EXTRALIBS_ODBC"/> | |
310 | <set var="EXTRALIBS_GUI"/> | |
311 | <set var="EXTRALIBS_OPENGL"> | |
312 | <if cond="COMPILER=='wat'">opengl32.lib glu32.lib</if> | |
313 | <if cond="COMPILER in ['vc','evc']">opengl32.lib glu32.lib</if> | |
314 | <if cond="COMPILER=='gcc'">-lopengl32 -lglu32</if> | |
315 | </set> | |
316 | <set var="EXTRALIBS_SDL"/> | |
317 | <set var="EXTRALIBS_GNOMEPRINT"/> | |
318 | ||
319 | <set var="WITH_PLUGIN_SDL">0</set> | |
320 | ||
321 | <set var="SRCDIR"> | |
322 | <if cond="BUILDING_LIB=='1'">..$(DIRSEP)..</if> | |
323 | <if cond="BUILDING_LIB=='0'">.</if> | |
324 | </set> | |
325 | <set var="TOP_SRCDIR">$(SRCDIR)/$(WXTOPDIR)</set> | |
326 | </if> | |
327 | ||
328 | <if cond="FORMAT=='mingw'"> | |
329 | <option name="GCC_VERSION"> | |
330 | <values>3,2.95</values> | |
331 | <default-value>3</default-value> | |
332 | <description> | |
333 | Set the version of your Mingw installation here. | |
334 | "3" ...... this is for Mingw 2.0 or newer (comes with gcc3) | |
335 | "2.95" ... for Mingw 1.1 or any of the older versions | |
336 | </description> | |
337 | </option> | |
338 | <set var="GCCFLAGS"> | |
339 | <if cond="GCC_VERSION=='2.95'">-fvtable-thunks</if> | |
340 | </set> | |
341 | <set var="EXTRACFLAGS">$(GCCFLAGS) -DHAVE_W32API_H</set> | |
342 | </if> | |
343 | ||
344 | <if cond="FORMAT=='cbuilderx'"> | |
345 | <set var="EXTRACFLAGS"> | |
346 | <if cond="COMPILER=='gcc'">-DHAVE_W32API_H</if> | |
347 | </set> | |
348 | </if> | |
349 | ||
350 | ||
351 | <!-- ================================================================== --> | |
352 | <!-- Project files - hardcode some defaults --> | |
353 | <!-- ================================================================== --> | |
354 | ||
355 | <if cond="FORMAT_SUPPORTS_CONDITIONS=='0'"> | |
356 | <set var="RUNTIME_LIBS">dynamic</set> | |
357 | <set var="OFFICIAL_BUILD">0</set> | |
358 | <set var="USE_HTML">1</set> | |
359 | <set var="USE_XRC">1</set> | |
360 | <set var="USE_OPENGL">1</set> | |
361 | <set var="USE_ODBC">1</set> | |
362 | <set var="USE_QA">1</set> | |
363 | <set var="MONOLITHIC">0</set> | |
364 | <set var="USE_GUI">1</set> | |
365 | <set var="USE_EXCEPTIONS">1</set> | |
366 | <set var="USE_RTTI">1</set> | |
367 | <set var="USE_THREADS">1</set> | |
368 | <set var="DEBUG_INFO">$(DEBUG_INFO_DEFAULT)</set> | |
369 | <set var="DEBUG_FLAG">default</set> | |
370 | <set var="MSLU">0</set> | |
371 | </if> | |
372 | ||
373 | ||
374 | <!-- FIXME: | |
375 | C++BuilderX supports only wxMSW, monolithic (sic!) static build | |
376 | and the project can't be put into build/msw and store objects in | |
377 | build/msw/something. This *must* be fixed! --> | |
378 | <if cond="FORMAT=='cbuilderx'"> | |
379 | <set var="WXUNIV">0</set> | |
380 | <set var="MONOLITHIC">1</set> | |
381 | <set var="SRCDIR">.</set> | |
382 | <set var="TOP_SRCDIR">$(SRCDIR)/$(WXTOPDIR)</set> | |
383 | <set var="SHARED">0</set> | |
384 | </if> | |
385 | ||
386 | ||
387 | <!-- DigitalMars make is braindead, it doesn't have conditional | |
388 | processing: --> | |
389 | <if cond="FORMAT=='dmars'"> | |
390 | <set var="RUNTIME_LIBS">static</set> | |
391 | <set var="BUILD">debug</set> | |
392 | <set var="SHARED">0</set> | |
393 | <set var="WXUNIV">0</set> | |
394 | <set var="UNICODE">0</set> | |
395 | <!-- Free version does not distribute OpenGL, | |
396 | in commercial distribution better use dmars_smake format --> | |
397 | <set var="USE_OPENGL">0</set> | |
398 | </if> | |
399 | ||
400 | <!-- No need for wxUniv on embedded devices (yet): --> | |
401 | <if cond="FORMAT=='msevc4prj'"> | |
402 | <set var="WXUNIV">0</set> | |
403 | <set var="UNICODE">1</set> | |
404 | <!-- Uploading debug reports from PDAs seems impractical --> | |
405 | <set var="USE_QA">0</set> | |
406 | <set var="MONOLITHIC">1</set> <!-- sic! --> | |
407 | </if> | |
408 | ||
409 | </makefile> |