]>
Commit | Line | Data |
---|---|---|
1 | <?xml version="1.0" ?> | |
2 | <!-- $Id$ --> | |
3 | ||
4 | <makefile> | |
5 | ||
6 | <set var="IS_MSVC_PRJ"> | |
7 | $(FORMAT in ['msvc6prj','msevc4prj','msvs2003prj','msvs2005prj','msvs2008prj']) | |
8 | </set> | |
9 | <set var="IS_MSVC"> | |
10 | $(IS_MSVC_PRJ=='1' or FORMAT=='msvc') | |
11 | </set> | |
12 | ||
13 | ||
14 | <set var="BUILDING_LIB" overwrite="0">0</set> | |
15 | ||
16 | <set var="CPP_DEFAULT_VALUE"> | |
17 | <if cond="FORMAT=='borland'"> | |
18 | cpp32 -Sr -oCON | |
19 | </if> | |
20 | <if cond="FORMAT=='mingw'"> | |
21 | $(DOLLAR)(CC) -E | |
22 | </if> | |
23 | <if cond="FORMAT=='msvc'"> | |
24 | $(DOLLAR)(CC) /EP /nologo | |
25 | </if> | |
26 | <if cond="FORMAT=='watcom'"> | |
27 | $(DOLLAR)(CC) -p | |
28 | </if> | |
29 | </set> | |
30 | <option name="CPP"> | |
31 | <default-value> | |
32 | $(CPP_DEFAULT_VALUE) | |
33 | </default-value> | |
34 | <description> | |
35 | The C preprocessor | |
36 | </description> | |
37 | </option> | |
38 | ||
39 | <option name="SHARED"> | |
40 | <values>0,1</values> | |
41 | <values-description>,DLL</values-description> | |
42 | <default-value>0</default-value> | |
43 | <description> | |
44 | What type of library to build? | |
45 | </description> | |
46 | </option> | |
47 | ||
48 | <option name="WXUNIV"> | |
49 | <values>0,1</values> | |
50 | <values-description>,Universal</values-description> | |
51 | <default-value>0</default-value> | |
52 | <description> | |
53 | Build wxUniversal instead of native port? | |
54 | </description> | |
55 | </option> | |
56 | ||
57 | <!-- don't include ANSI configuration in project files, it's going to be | |
58 | eventually removed anyway and it only doubles the number of build | |
59 | configs in projects: --> | |
60 | <if cond="IS_MSVC_PRJ=='1'"> | |
61 | <set var="UNICODE">1</set> | |
62 | </if> | |
63 | <if cond="IS_MSVC_PRJ=='0'"> | |
64 | <option name="UNICODE"> | |
65 | <values>0,1</values> | |
66 | <values-description>,Unicode</values-description> | |
67 | <default-value>1</default-value> | |
68 | <description> | |
69 | Compile Unicode build of wxWidgets? | |
70 | </description> | |
71 | </option> | |
72 | </if> | |
73 | ||
74 | <if cond="FORMAT!='autoconf' and FORMAT!='watcom'"> | |
75 | <option name="MSLU"> | |
76 | <values>0,1</values> | |
77 | <default-value>0</default-value> | |
78 | <description> | |
79 | Use MSLU library when building Unicode version. | |
80 | </description> | |
81 | </option> | |
82 | </if> | |
83 | <if cond="FORMAT=='autoconf' or FORMAT=='watcom'"> | |
84 | <set var="MSLU">0</set> | |
85 | </if> | |
86 | ||
87 | <option name="BUILD"> | |
88 | <values>debug,release</values> | |
89 | <values-description>Debug,Release</values-description> | |
90 | <default-value>debug</default-value> | |
91 | <description> | |
92 | Type of compiled binaries | |
93 | </description> | |
94 | </option> | |
95 | ||
96 | <if cond="FORMAT=='msvc'"> | |
97 | <option name="TARGET_CPU"> | |
98 | <default-value>$(DOLLAR)(CPU)</default-value> | |
99 | <description> | |
100 | The target processor architecture must be specified when it is not X86. | |
101 | This does not affect the compiler output, so you still need to make sure | |
102 | your environment is set up appropriately with the correct compiler in the | |
103 | PATH. Rather it affects some options passed to some of the common build | |
104 | utilities such as the resource compiler and the linker. | |
105 | ||
106 | Accepted values: IA64, X64 | |
107 | (AMD64 accepted as synonym for X64 but should not be used any more). | |
108 | </description> | |
109 | </option> | |
110 | </if> | |
111 | <if cond="FORMAT!='msvc'"> | |
112 | <set var="TARGET_CPU"/> | |
113 | </if> | |
114 | ||
115 | <!-- | |
116 | For MSVC enable debug information in all builds: it is needed to be | |
117 | able to debug the crash dumps produced by wxDebugReport and as it | |
118 | generates it in separate PDB files it doesn't cost us much to enable it | |
119 | (except for disk space...). | |
120 | --> | |
121 | <set var="DEBUG_INFO_DEFAULT"> | |
122 | <if cond="IS_MSVC=='1'">1</if> | |
123 | <if cond="IS_MSVC=='0'">default</if> | |
124 | </set> | |
125 | ||
126 | <option name="DEBUG_INFO"> | |
127 | <values>0,1,default</values> | |
128 | <default-value>$(DEBUG_INFO_DEFAULT)</default-value> | |
129 | <description> | |
130 | Should debugging info be included in the executables? The default value | |
131 | "default" means that debug info will be included if BUILD=debug | |
132 | and not included if BUILD=release. | |
133 | </description> | |
134 | </option> | |
135 | ||
136 | <option name="DEBUG_FLAG"> | |
137 | <values>0,1,default</values> | |
138 | <default-value>1</default-value> | |
139 | <description> | |
140 | Value of wxDEBUG_LEVEL. The default value is the same as 1 and means that all | |
141 | but expensive assert checks are enabled, use 0 to completely remove debugging | |
142 | code. | |
143 | </description> | |
144 | </option> | |
145 | ||
146 | <if cond="FORMAT=='msvc'"> | |
147 | <option name="DEBUG_RUNTIME_LIBS"> | |
148 | <values>0,1,default</values> | |
149 | <default-value>default</default-value> | |
150 | <description> | |
151 | Link against debug (e.g. msvcrtd.dll) or release (msvcrt.dll) RTL? | |
152 | Default is to use debug CRT if and only if BUILD==debug. | |
153 | </description> | |
154 | </option> | |
155 | </if> | |
156 | <if cond="FORMAT!='msvc'"> | |
157 | <set var="DEBUG_RUNTIME_LIBS">default</set> | |
158 | </if> | |
159 | ||
160 | <set var="MONOLITHIC_DEFAULT"> | |
161 | <if cond="FORMAT=='watcom'">1</if> | |
162 | <if cond="FORMAT!='watcom'">0</if> | |
163 | </set> | |
164 | <option name="MONOLITHIC"> | |
165 | <values>0,1</values> | |
166 | <values-description>Multilib,Monolithic</values-description> | |
167 | <default-value>$(MONOLITHIC_DEFAULT)</default-value> | |
168 | <description> | |
169 | Multiple libraries or single huge monolithic one? | |
170 | </description> | |
171 | </option> | |
172 | ||
173 | <if cond="FORMAT=='autoconf'"> <!-- FIXME - temporary --> | |
174 | <option name="USE_PLUGINS"> | |
175 | <values>0,1</values> | |
176 | <default-value>1</default-value> | |
177 | <description> | |
178 | Build parts of the library as dynamically loadable plugins | |
179 | (only supported in multilib build)? | |
180 | </description> | |
181 | </option> | |
182 | </if> | |
183 | <if cond="FORMAT!='autoconf'"> | |
184 | <set var="USE_PLUGINS">0</set> <!-- FIXME - temporary --> | |
185 | </if> | |
186 | ||
187 | <option name="USE_GUI"> | |
188 | <values>0,1</values> | |
189 | <values-description>Base,GUI</values-description> | |
190 | <default-value>1</default-value> | |
191 | <description> | |
192 | Build GUI libraries? | |
193 | </description> | |
194 | </option> | |
195 | ||
196 | <option name="USE_HTML"> | |
197 | <values>0,1</values> | |
198 | <default-value>1</default-value> | |
199 | <description> | |
200 | Build wxHTML library (USE_GUI must be 1)? | |
201 | </description> | |
202 | </option> | |
203 | ||
204 | <option name="USE_WEBVIEW"> | |
205 | <values>0,1</values> | |
206 | <default-value>1</default-value> | |
207 | <description> | |
208 | Build wxWebView library (USE_GUI must be 1)? | |
209 | </description> | |
210 | </option> | |
211 | ||
212 | <option name="USE_MEDIA"> | |
213 | <values>0,1</values> | |
214 | <default-value>1</default-value> | |
215 | <description> | |
216 | Build multimedia library (USE_GUI must be 1)? | |
217 | </description> | |
218 | </option> | |
219 | ||
220 | <option name="USE_XRC"> | |
221 | <values>0,1</values> | |
222 | <default-value>1</default-value> | |
223 | <description> | |
224 | Build wxXRC library (USE_GUI must be 1)? | |
225 | </description> | |
226 | </option> | |
227 | ||
228 | <option name="USE_AUI"> | |
229 | <values>0,1</values> | |
230 | <default-value>1</default-value> | |
231 | <description> | |
232 | Build wxAUI library (USE_GUI must be 1)? | |
233 | </description> | |
234 | </option> | |
235 | ||
236 | <option name="USE_RIBBON"> | |
237 | <values>0,1</values> | |
238 | <default-value>1</default-value> | |
239 | <description> | |
240 | Build wxRibbon library (USE_GUI must be 1)? | |
241 | </description> | |
242 | </option> | |
243 | ||
244 | <option name="USE_PROPGRID"> | |
245 | <values>0,1</values> | |
246 | <default-value>1</default-value> | |
247 | <description> | |
248 | Build wxPropertyGrid library (USE_GUI must be 1)? | |
249 | </description> | |
250 | </option> | |
251 | ||
252 | <option name="USE_RICHTEXT"> | |
253 | <values>0,1</values> | |
254 | <default-value>1</default-value> | |
255 | <description> | |
256 | Build wxRichTextCtrl library (USE_GUI must be 1)? | |
257 | </description> | |
258 | </option> | |
259 | ||
260 | <option name="USE_STC"> | |
261 | <values>0,1</values> | |
262 | <default-value>1</default-value> | |
263 | <description> | |
264 | Build wxStyledTextCtrl library (USE_GUI must be 1)? | |
265 | </description> | |
266 | </option> | |
267 | ||
268 | <option name="USE_OPENGL"> | |
269 | <values>0,1</values> | |
270 | <default-value>1</default-value> | |
271 | <description> | |
272 | Build OpenGL canvas library (USE_GUI must be 1)? | |
273 | </description> | |
274 | </option> | |
275 | ||
276 | <!-- currently only VC++ can compile wxDebugReport which is in QA lib --> | |
277 | <set var="USE_QA_DEFAULT"> | |
278 | <if cond="FORMAT in ['msvc','msvc6prj','msvs2003prj','msvs2005prj','msvs2008prj']">1</if> | |
279 | <if cond="FORMAT not in ['msvc','msvc6prj','msvs2003prj','msvs2005prj','msvs2008prj']">0</if> | |
280 | </set> | |
281 | <option name="USE_QA"> | |
282 | <values>0,1</values> | |
283 | <default-value>$(USE_QA_DEFAULT)</default-value> | |
284 | <description> | |
285 | Build quality assurance classes library (USE_GUI must be 1)? | |
286 | </description> | |
287 | </option> | |
288 | ||
289 | <option name="USE_EXCEPTIONS"> | |
290 | <values>0,1</values> | |
291 | <default-value>1</default-value> | |
292 | <description> | |
293 | Enable exceptions in compiled code. | |
294 | </description> | |
295 | </option> | |
296 | ||
297 | <option name="USE_RTTI"> | |
298 | <values>0,1</values> | |
299 | <default-value>1</default-value> | |
300 | <description> | |
301 | Enable run-time type information (RTTI) in compiled code. | |
302 | </description> | |
303 | </option> | |
304 | ||
305 | <option name="USE_THREADS"> | |
306 | <values>0,1</values> | |
307 | <default-value>1</default-value> | |
308 | <description> | |
309 | Enable threading in compiled code. | |
310 | </description> | |
311 | </option> | |
312 | ||
313 | <option name="USE_CAIRO"> | |
314 | <values>0,1</values> | |
315 | <default-value>0</default-value> | |
316 | <description> | |
317 | Enable wxCairoContext for platforms other than Linux/GTK. | |
318 | </description> | |
319 | </option> | |
320 | ||
321 | <option name="OFFICIAL_BUILD"> | |
322 | <values>0,1</values> | |
323 | <default-value>0</default-value> | |
324 | <description> | |
325 | Is this official build by wxWidgets developers? | |
326 | </description> | |
327 | </option> | |
328 | <option name="VENDOR"> | |
329 | <default-value>custom</default-value> | |
330 | <description> | |
331 | Use this to name your customized DLLs differently | |
332 | </description> | |
333 | </option> | |
334 | <!-- These basically do what vendor does in the places it didn't. --> | |
335 | <!-- They should all be unified under some suitable descriptor --> | |
336 | <option name="WX_FLAVOUR"> | |
337 | <default-value></default-value> | |
338 | </option> | |
339 | <option name="WX_LIB_FLAVOUR"> | |
340 | <default-value></default-value> | |
341 | </option> | |
342 | ||
343 | <option name="CFG"> | |
344 | <default-value></default-value> | |
345 | <description> | |
346 | Name of your custom configuration. This affects directory | |
347 | where object files are stored as well as the location of | |
348 | compiled .lib files and setup.h under the lib/ toplevel directory. | |
349 | </description> | |
350 | </option> | |
351 | ||
352 | <!-- unit tests support: --> | |
353 | <option name="CPPUNIT_CFLAGS"> | |
354 | <default-value></default-value> | |
355 | <description> | |
356 | Compiler flags needed to compile test suite in tests directory. If you want | |
357 | to run the tests, set it so that the compiler can find CppUnit headers. | |
358 | </description> | |
359 | </option> | |
360 | ||
361 | <option name="CPPUNIT_LIBS"> | |
362 | <default-value></default-value> | |
363 | <description> | |
364 | Linker flags needed to link test suite in tests directory. If you want | |
365 | to run the tests, include CppUnit library here. | |
366 | </description> | |
367 | </option> | |
368 | ||
369 | ||
370 | <!-- ================================================================== --> | |
371 | <!-- Autoconf --> | |
372 | <!-- ================================================================== --> | |
373 | ||
374 | <if cond="FORMAT=='autoconf'"> | |
375 | <option name="DEREZ"/> | |
376 | <option name="TOOLKIT"/> | |
377 | <option name="TOOLKIT_LOWERCASE"/> | |
378 | <option name="TOOLKIT_VERSION"/> | |
379 | <option name="TOOLCHAIN_NAME"/> | |
380 | <option name="TOOLCHAIN_FULLNAME"/> | |
381 | <option name="EXTRALIBS"/> | |
382 | <option name="EXTRALIBS_XML"/> | |
383 | <option name="EXTRALIBS_HTML"/> | |
384 | <option name="EXTRALIBS_MEDIA"/> | |
385 | <option name="EXTRALIBS_GUI"/> | |
386 | <option name="EXTRALIBS_OPENGL"/> | |
387 | <option name="EXTRALIBS_SDL"/> | |
388 | <option name="EXTRALIBS_GNOMEPRINT"/> | |
389 | <option name="CXXWARNINGS"/> | |
390 | <option name="HOST_SUFFIX"/> | |
391 | <option name="DYLIB_RPATH_INSTALL"/> | |
392 | <option name="DYLIB_RPATH_POSTLINK"/> | |
393 | <option name="SAMPLES_RPATH_FLAG"/> | |
394 | ||
395 | <!-- see configure.in; it's required by some samples on Mac OS X --> | |
396 | <option name="HEADER_PAD_OPTION"/> | |
397 | ||
398 | <set var="TOP_SRCDIR">$(top_srcdir)/</set> | |
399 | <set var="RUNTIME_LIBS">dynamic</set> | |
400 | <set var="WXTOPDIR"/> <!-- to be overridden on bakefile cmd line --> | |
401 | ||
402 | <option name="WITH_PLUGIN_SDL"> | |
403 | <values>0,1</values> | |
404 | </option> | |
405 | ||
406 | <option name="wx_top_builddir"/> | |
407 | </if> | |
408 | ||
409 | ||
410 | <!-- ================================================================== --> | |
411 | <!-- windows/dos/os2 compilers --> | |
412 | <!-- ================================================================== --> | |
413 | ||
414 | <if cond="FORMAT!='autoconf'"> | |
415 | <option name="RUNTIME_LIBS"> | |
416 | <values>dynamic,static</values> | |
417 | <default-value>dynamic</default-value> | |
418 | <description> | |
419 | Version of C runtime library to use. You can change this to | |
420 | static if SHARED=0, but it is highly recommended to not do | |
421 | it if SHARED=1 unless you know what you are doing. | |
422 | </description> | |
423 | </option> | |
424 | ||
425 | <set var="WXTOPDIR"/> <!-- to be overridden on bakefile cmd line --> | |
426 | ||
427 | <set var="TOOLKIT" overwrite="0"> | |
428 | <if cond="FORMAT=='msevc4prj'">WINCE</if> | |
429 | <if cond="FORMAT=='msvs2005prj' and MSVS_PLATFORMS=='pocketpc2003'">WINCE</if> | |
430 | <if cond="FORMAT=='msvs2008prj' and MSVS_PLATFORMS=='pocketpc2003'">WINCE</if> | |
431 | <if cond="FORMAT=='msvs2005prj' and MSVS_PLATFORMS=='win32'">MSW</if> | |
432 | <if cond="FORMAT=='msvs2008prj' and MSVS_PLATFORMS=='win32'">MSW</if> | |
433 | <if cond="FORMAT not in ['msevc4prj','msvs2005prj','msvs2008prj'] and PLATFORM_WIN32=='1'">MSW</if> | |
434 | <if cond="PLATFORM_OS2=='1'">PM</if> | |
435 | </set> | |
436 | <set var="TOOLKIT_LOWERCASE">$(TOOLKIT.lower())</set> | |
437 | <set var="TOOLKIT_VERSION"/> | |
438 | <set var="HOST_SUFFIX"/> | |
439 | <set var="EXTRACFLAGS"/> | |
440 | <set var="EXTRALIBS"/> | |
441 | <set var="EXTRALIBS_XML"/> | |
442 | <set var="EXTRALIBS_HTML"/> | |
443 | <set var="EXTRALIBS_MEDIA"/> | |
444 | <set var="EXTRALIBS_GUI"/> | |
445 | <set var="EXTRALIBS_OPENGL"> | |
446 | <if cond="COMPILER=='wat' and TOOLKIT=='MSW'">opengl32.lib glu32.lib</if> | |
447 | <if cond="COMPILER in ['vc','evc']">opengl32.lib glu32.lib</if> | |
448 | <if cond="COMPILER=='gcc'">-lopengl32 -lglu32</if> | |
449 | </set> | |
450 | <set var="EXTRALIBS_SDL"/> | |
451 | <set var="EXTRALIBS_GNOMEPRINT"/> | |
452 | ||
453 | <set var="WITH_PLUGIN_SDL">0</set> | |
454 | ||
455 | <if cond="BUILDING_LIB=='1'"> | |
456 | <set-srcdir>../..</set-srcdir> | |
457 | </if> | |
458 | <set var="TOP_SRCDIR">$(SRCDIR)/$(WXTOPDIR)</set> | |
459 | </if> | |
460 | ||
461 | <if cond="FORMAT=='mingw'"> | |
462 | <option name="GCC_VERSION"> | |
463 | <values>3,2.95</values> | |
464 | <default-value>3</default-value> | |
465 | <description> | |
466 | Set the version of your Mingw installation here. | |
467 | "3" ...... this is for Mingw 2.0 or newer (comes with gcc3) | |
468 | "2.95" ... for Mingw 1.1 or any of the older versions | |
469 | </description> | |
470 | </option> | |
471 | <set var="GCCFLAGS"> | |
472 | <if cond="GCC_VERSION=='2.95'">-fvtable-thunks</if> | |
473 | </set> | |
474 | <set var="EXTRACFLAGS">$(GCCFLAGS) -DHAVE_W32API_H</set> | |
475 | </if> | |
476 | ||
477 | ||
478 | <!-- ================================================================== --> | |
479 | <!-- Project files - hardcode some defaults --> | |
480 | <!-- ================================================================== --> | |
481 | ||
482 | <if cond="FORMAT_SUPPORTS_CONDITIONS=='0'"> | |
483 | <set var="RUNTIME_LIBS">dynamic</set> | |
484 | <set var="OFFICIAL_BUILD">0</set> | |
485 | <set var="USE_AUI">1</set> | |
486 | <set var="USE_RIBBON">1</set> | |
487 | <set var="USE_PROPGRID">1</set> | |
488 | <set var="USE_RICHTEXT">1</set> | |
489 | <set var="USE_STC">1</set> | |
490 | <set var="USE_HTML">1</set> | |
491 | <set var="USE_WEBVIEW">1</set> | |
492 | <set var="USE_MEDIA">1</set> | |
493 | <set var="USE_XRC">1</set> | |
494 | <set var="USE_OPENGL">1</set> | |
495 | <set var="USE_QA">1</set> | |
496 | <set var="MONOLITHIC">0</set> | |
497 | <set var="USE_GUI">1</set> | |
498 | <set var="USE_EXCEPTIONS">1</set> | |
499 | <set var="USE_RTTI">1</set> | |
500 | <set var="USE_THREADS">1</set> | |
501 | <set var="USE_CAIRO">0</set> | |
502 | <set var="DEBUG_INFO">$(DEBUG_INFO_DEFAULT)</set> | |
503 | <set var="DEBUG_FLAG">default</set> | |
504 | <set var="MSLU">0</set> | |
505 | </if> | |
506 | ||
507 | ||
508 | <!-- DigitalMars make is braindead, it doesn't have conditional | |
509 | processing: --> | |
510 | <if cond="FORMAT=='dmars'"> | |
511 | <set var="RUNTIME_LIBS">static</set> | |
512 | <set var="BUILD">debug</set> | |
513 | <set var="SHARED">0</set> | |
514 | <set var="WXUNIV">0</set> | |
515 | <set var="UNICODE">1</set> | |
516 | <!-- Free version does not distribute OpenGL, | |
517 | in commercial distribution better use dmars_smake format --> | |
518 | <set var="USE_OPENGL">0</set> | |
519 | </if> | |
520 | ||
521 | <!-- No need for wxUniv on embedded devices (yet): --> | |
522 | <if cond="FORMAT=='msevc4prj' or (FORMAT=='msvs2005prj' and MSVS_PLATFORMS=='pocketpc2003') or (FORMAT=='msvs2008prj' and MSVS_PLATFORMS=='pocketpc2003')"> | |
523 | <set var="WXUNIV">0</set> | |
524 | <!-- Uploading debug reports from PDAs seems impractical --> | |
525 | <set var="USE_QA">0</set> | |
526 | <set var="MONOLITHIC">1</set> <!-- sic! --> | |
527 | <set var="USE_OPENGL">0</set> <!-- need OpenGL ES support first --> | |
528 | <!-- RTTI and exceptions need separate cccrtti.lib with eVC4 --> | |
529 | <if cond="FORMAT=='msevc4prj'"> | |
530 | <set var="USE_RTTI">0</set> | |
531 | <set var="USE_EXCEPTIONS">0</set> | |
532 | </if> | |
533 | </if> | |
534 | ||
535 | </makefile> |