]>
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: AMD64, IA64. | |
107 | </description> | |
108 | </option> | |
109 | </if> | |
110 | <if cond="FORMAT!='msvc'"> | |
111 | <set var="TARGET_CPU"/> | |
112 | </if> | |
113 | ||
114 | <!-- | |
115 | For MSVC enable debug information in all builds: it is needed to be | |
116 | able to debug the crash dumps produced by wxDebugReport and as it | |
117 | generates it in separate PDB files it doesn't cost us much to enable it | |
118 | (except for disk space...). | |
119 | --> | |
120 | <set var="DEBUG_INFO_DEFAULT"> | |
121 | <if cond="IS_MSVC=='1'">1</if> | |
122 | <if cond="IS_MSVC=='0'">default</if> | |
123 | </set> | |
124 | ||
125 | <option name="DEBUG_INFO"> | |
126 | <values>0,1,default</values> | |
127 | <default-value>$(DEBUG_INFO_DEFAULT)</default-value> | |
128 | <description> | |
129 | Should debugging info be included in the executables? The default value | |
130 | "default" means that debug info will be included if BUILD=debug | |
131 | and not included if BUILD=release. | |
132 | </description> | |
133 | </option> | |
134 | ||
135 | <option name="DEBUG_FLAG"> | |
136 | <values>0,1,default</values> | |
137 | <default-value>1</default-value> | |
138 | <description> | |
139 | Value of wxDEBUG_LEVEL. The default value is the same as 1 and means that all | |
140 | but expensive assert checks are enabled, use 0 to completely remove debugging | |
141 | code. | |
142 | </description> | |
143 | </option> | |
144 | ||
145 | <if cond="FORMAT=='msvc'"> | |
146 | <option name="DEBUG_RUNTIME_LIBS"> | |
147 | <values>0,1,default</values> | |
148 | <default-value>default</default-value> | |
149 | <description> | |
150 | Link against debug (e.g. msvcrtd.dll) or release (msvcrt.dll) RTL? | |
151 | Default is to use debug CRT if and only if BUILD==debug. | |
152 | </description> | |
153 | </option> | |
154 | </if> | |
155 | <if cond="FORMAT!='msvc'"> | |
156 | <set var="DEBUG_RUNTIME_LIBS">default</set> | |
157 | </if> | |
158 | ||
159 | <set var="MONOLITHIC_DEFAULT"> | |
160 | <if cond="FORMAT=='watcom'">1</if> | |
161 | <if cond="FORMAT!='watcom'">0</if> | |
162 | </set> | |
163 | <option name="MONOLITHIC"> | |
164 | <values>0,1</values> | |
165 | <values-description>Multilib,Monolithic</values-description> | |
166 | <default-value>$(MONOLITHIC_DEFAULT)</default-value> | |
167 | <description> | |
168 | Multiple libraries or single huge monolithic one? | |
169 | </description> | |
170 | </option> | |
171 | ||
172 | <if cond="FORMAT=='autoconf'"> <!-- FIXME - temporary --> | |
173 | <option name="USE_PLUGINS"> | |
174 | <values>0,1</values> | |
175 | <default-value>1</default-value> | |
176 | <description> | |
177 | Build parts of the library as dynamically loadable plugins | |
178 | (only supported in multilib build)? | |
179 | </description> | |
180 | </option> | |
181 | </if> | |
182 | <if cond="FORMAT!='autoconf'"> | |
183 | <set var="USE_PLUGINS">0</set> <!-- FIXME - temporary --> | |
184 | </if> | |
185 | ||
186 | <option name="USE_GUI"> | |
187 | <values>0,1</values> | |
188 | <values-description>Base,GUI</values-description> | |
189 | <default-value>1</default-value> | |
190 | <description> | |
191 | Build GUI libraries? | |
192 | </description> | |
193 | </option> | |
194 | ||
195 | <option name="USE_HTML"> | |
196 | <values>0,1</values> | |
197 | <default-value>1</default-value> | |
198 | <description> | |
199 | Build wxHTML library (USE_GUI must be 1)? | |
200 | </description> | |
201 | </option> | |
202 | ||
203 | <option name="USE_WEB"> | |
204 | <values>0,1</values> | |
205 | <default-value>1</default-value> | |
206 | <description> | |
207 | Build wxWeb library (USE_GUI must be 1)? | |
208 | </description> | |
209 | </option> | |
210 | ||
211 | <option name="USE_MEDIA"> | |
212 | <values>0,1</values> | |
213 | <default-value>1</default-value> | |
214 | <description> | |
215 | Build multimedia library (USE_GUI must be 1)? | |
216 | </description> | |
217 | </option> | |
218 | ||
219 | <option name="USE_XRC"> | |
220 | <values>0,1</values> | |
221 | <default-value>1</default-value> | |
222 | <description> | |
223 | Build wxXRC library (USE_GUI must be 1)? | |
224 | </description> | |
225 | </option> | |
226 | ||
227 | <option name="USE_AUI"> | |
228 | <values>0,1</values> | |
229 | <default-value>1</default-value> | |
230 | <description> | |
231 | Build wxAUI library (USE_GUI must be 1)? | |
232 | </description> | |
233 | </option> | |
234 | ||
235 | <option name="USE_RIBBON"> | |
236 | <values>0,1</values> | |
237 | <default-value>1</default-value> | |
238 | <description> | |
239 | Build wxRibbon library (USE_GUI must be 1)? | |
240 | </description> | |
241 | </option> | |
242 | ||
243 | <option name="USE_PROPGRID"> | |
244 | <values>0,1</values> | |
245 | <default-value>1</default-value> | |
246 | <description> | |
247 | Build wxPropertyGrid library (USE_GUI must be 1)? | |
248 | </description> | |
249 | </option> | |
250 | ||
251 | <option name="USE_RICHTEXT"> | |
252 | <values>0,1</values> | |
253 | <default-value>1</default-value> | |
254 | <description> | |
255 | Build wxRichTextCtrl library (USE_GUI must be 1)? | |
256 | </description> | |
257 | </option> | |
258 | ||
259 | <option name="USE_STC"> | |
260 | <values>0,1</values> | |
261 | <default-value>1</default-value> | |
262 | <description> | |
263 | Build wxStyledTextCtrl library (USE_GUI must be 1)? | |
264 | </description> | |
265 | </option> | |
266 | ||
267 | <option name="USE_OPENGL"> | |
268 | <values>0,1</values> | |
269 | <default-value>1</default-value> | |
270 | <description> | |
271 | Build OpenGL canvas library (USE_GUI must be 1)? | |
272 | </description> | |
273 | </option> | |
274 | ||
275 | <!-- currently only VC++ can compile wxDebugReport which is in QA lib --> | |
276 | <set var="USE_QA_DEFAULT"> | |
277 | <if cond="FORMAT in ['msvc','msvc6prj','msvs2003prj','msvs2005prj','msvs2008prj']">1</if> | |
278 | <if cond="FORMAT not in ['msvc','msvc6prj','msvs2003prj','msvs2005prj','msvs2008prj']">0</if> | |
279 | </set> | |
280 | <option name="USE_QA"> | |
281 | <values>0,1</values> | |
282 | <default-value>$(USE_QA_DEFAULT)</default-value> | |
283 | <description> | |
284 | Build quality assurance classes library (USE_GUI must be 1)? | |
285 | </description> | |
286 | </option> | |
287 | ||
288 | <option name="USE_EXCEPTIONS"> | |
289 | <values>0,1</values> | |
290 | <default-value>1</default-value> | |
291 | <description> | |
292 | Enable exceptions in compiled code. | |
293 | </description> | |
294 | </option> | |
295 | ||
296 | <option name="USE_RTTI"> | |
297 | <values>0,1</values> | |
298 | <default-value>1</default-value> | |
299 | <description> | |
300 | Enable run-time type information (RTTI) in compiled code. | |
301 | </description> | |
302 | </option> | |
303 | ||
304 | <option name="USE_THREADS"> | |
305 | <values>0,1</values> | |
306 | <default-value>1</default-value> | |
307 | <description> | |
308 | Enable threading in compiled code. | |
309 | </description> | |
310 | </option> | |
311 | ||
312 | <option name="USE_CAIRO"> | |
313 | <values>0,1</values> | |
314 | <default-value>0</default-value> | |
315 | <description> | |
316 | Enable wxCairoContext for platforms other than Linux/GTK. | |
317 | </description> | |
318 | </option> | |
319 | ||
320 | <option name="OFFICIAL_BUILD"> | |
321 | <values>0,1</values> | |
322 | <default-value>0</default-value> | |
323 | <description> | |
324 | Is this official build by wxWidgets developers? | |
325 | </description> | |
326 | </option> | |
327 | <option name="VENDOR"> | |
328 | <default-value>custom</default-value> | |
329 | <description> | |
330 | Use this to name your customized DLLs differently | |
331 | </description> | |
332 | </option> | |
333 | <!-- These basically do what vendor does in the places it didn't. --> | |
334 | <!-- They should all be unified under some suitable descriptor --> | |
335 | <option name="WX_FLAVOUR"> | |
336 | <default-value></default-value> | |
337 | </option> | |
338 | <option name="WX_LIB_FLAVOUR"> | |
339 | <default-value></default-value> | |
340 | </option> | |
341 | ||
342 | <option name="CFG"> | |
343 | <default-value></default-value> | |
344 | <description> | |
345 | Name of your custom configuration. This affects directory | |
346 | where object files are stored as well as the location of | |
347 | compiled .lib files and setup.h under the lib/ toplevel directory. | |
348 | </description> | |
349 | </option> | |
350 | ||
351 | <!-- unit tests support: --> | |
352 | <option name="CPPUNIT_CFLAGS"> | |
353 | <default-value></default-value> | |
354 | <description> | |
355 | Compiler flags needed to compile test suite in tests directory. If you want | |
356 | to run the tests, set it so that the compiler can find CppUnit headers. | |
357 | </description> | |
358 | </option> | |
359 | ||
360 | <option name="CPPUNIT_LIBS"> | |
361 | <default-value></default-value> | |
362 | <description> | |
363 | Linker flags needed to link test suite in tests directory. If you want | |
364 | to run the tests, include CppUnit library here. | |
365 | </description> | |
366 | </option> | |
367 | ||
368 | ||
369 | <!-- ================================================================== --> | |
370 | <!-- Autoconf --> | |
371 | <!-- ================================================================== --> | |
372 | ||
373 | <if cond="FORMAT=='autoconf'"> | |
374 | <option name="DEREZ"/> | |
375 | <option name="TOOLKIT"/> | |
376 | <option name="TOOLKIT_LOWERCASE"/> | |
377 | <option name="TOOLKIT_VERSION"/> | |
378 | <option name="TOOLCHAIN_NAME"/> | |
379 | <option name="TOOLCHAIN_FULLNAME"/> | |
380 | <option name="EXTRALIBS"/> | |
381 | <option name="EXTRALIBS_XML"/> | |
382 | <option name="EXTRALIBS_HTML"/> | |
383 | <option name="EXTRALIBS_WEB"/> | |
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_MSDOS=='1'">MGL</if> | |
435 | <if cond="PLATFORM_OS2=='1'">PM</if> | |
436 | </set> | |
437 | <set var="TOOLKIT_LOWERCASE">$(TOOLKIT.lower())</set> | |
438 | <set var="TOOLKIT_VERSION"/> | |
439 | <set var="HOST_SUFFIX"/> | |
440 | <set var="EXTRACFLAGS"/> | |
441 | <set var="EXTRALIBS"/> | |
442 | <set var="EXTRALIBS_XML"/> | |
443 | <set var="EXTRALIBS_HTML"/> | |
444 | <set var="EXTRALIBS_WEB"/> | |
445 | <set var="EXTRALIBS_MEDIA"/> | |
446 | <set var="EXTRALIBS_GUI"/> | |
447 | <set var="EXTRALIBS_OPENGL"> | |
448 | <if cond="COMPILER=='wat' and TOOLKIT=='MSW'">opengl32.lib glu32.lib</if> | |
449 | <if cond="COMPILER in ['vc','evc']">opengl32.lib glu32.lib</if> | |
450 | <if cond="COMPILER=='gcc'">-lopengl32 -lglu32</if> | |
451 | </set> | |
452 | <set var="EXTRALIBS_SDL"/> | |
453 | <set var="EXTRALIBS_GNOMEPRINT"/> | |
454 | ||
455 | <set var="WITH_PLUGIN_SDL">0</set> | |
456 | ||
457 | <if cond="BUILDING_LIB=='1'"> | |
458 | <set-srcdir>../..</set-srcdir> | |
459 | </if> | |
460 | <set var="TOP_SRCDIR">$(SRCDIR)/$(WXTOPDIR)</set> | |
461 | </if> | |
462 | ||
463 | <if cond="FORMAT=='mingw'"> | |
464 | <option name="GCC_VERSION"> | |
465 | <values>3,2.95</values> | |
466 | <default-value>3</default-value> | |
467 | <description> | |
468 | Set the version of your Mingw installation here. | |
469 | "3" ...... this is for Mingw 2.0 or newer (comes with gcc3) | |
470 | "2.95" ... for Mingw 1.1 or any of the older versions | |
471 | </description> | |
472 | </option> | |
473 | <set var="GCCFLAGS"> | |
474 | <if cond="GCC_VERSION=='2.95'">-fvtable-thunks</if> | |
475 | </set> | |
476 | <set var="EXTRACFLAGS">$(GCCFLAGS) -DHAVE_W32API_H</set> | |
477 | </if> | |
478 | ||
479 | ||
480 | <!-- ================================================================== --> | |
481 | <!-- Project files - hardcode some defaults --> | |
482 | <!-- ================================================================== --> | |
483 | ||
484 | <if cond="FORMAT_SUPPORTS_CONDITIONS=='0'"> | |
485 | <set var="RUNTIME_LIBS">dynamic</set> | |
486 | <set var="OFFICIAL_BUILD">0</set> | |
487 | <set var="USE_AUI">1</set> | |
488 | <set var="USE_RIBBON">1</set> | |
489 | <set var="USE_PROPGRID">1</set> | |
490 | <set var="USE_RICHTEXT">1</set> | |
491 | <set var="USE_STC">1</set> | |
492 | <set var="USE_HTML">1</set> | |
493 | <set var="USE_WEB">1</set> | |
494 | <set var="USE_MEDIA">1</set> | |
495 | <set var="USE_XRC">1</set> | |
496 | <set var="USE_OPENGL">1</set> | |
497 | <set var="USE_QA">1</set> | |
498 | <set var="MONOLITHIC">0</set> | |
499 | <set var="USE_GUI">1</set> | |
500 | <set var="USE_EXCEPTIONS">1</set> | |
501 | <set var="USE_RTTI">1</set> | |
502 | <set var="USE_THREADS">1</set> | |
503 | <set var="USE_CAIRO">0</set> | |
504 | <set var="DEBUG_INFO">$(DEBUG_INFO_DEFAULT)</set> | |
505 | <set var="DEBUG_FLAG">default</set> | |
506 | <set var="MSLU">0</set> | |
507 | </if> | |
508 | ||
509 | ||
510 | <!-- DigitalMars make is braindead, it doesn't have conditional | |
511 | processing: --> | |
512 | <if cond="FORMAT=='dmars'"> | |
513 | <set var="RUNTIME_LIBS">static</set> | |
514 | <set var="BUILD">debug</set> | |
515 | <set var="SHARED">0</set> | |
516 | <set var="WXUNIV">0</set> | |
517 | <set var="UNICODE">1</set> | |
518 | <!-- Free version does not distribute OpenGL, | |
519 | in commercial distribution better use dmars_smake format --> | |
520 | <set var="USE_OPENGL">0</set> | |
521 | </if> | |
522 | ||
523 | <!-- No need for wxUniv on embedded devices (yet): --> | |
524 | <if cond="FORMAT=='msevc4prj' or (FORMAT=='msvs2005prj' and MSVS_PLATFORMS=='pocketpc2003') or (FORMAT=='msvs2008prj' and MSVS_PLATFORMS=='pocketpc2003')"> | |
525 | <set var="WXUNIV">0</set> | |
526 | <!-- Uploading debug reports from PDAs seems impractical --> | |
527 | <set var="USE_QA">0</set> | |
528 | <set var="MONOLITHIC">1</set> <!-- sic! --> | |
529 | <set var="USE_OPENGL">0</set> <!-- need OpenGL ES support first --> | |
530 | <!-- RTTI and exceptions need separate cccrtti.lib with eVC4 --> | |
531 | <if cond="FORMAT=='msevc4prj'"> | |
532 | <set var="USE_RTTI">0</set> | |
533 | <set var="USE_EXCEPTIONS">0</set> | |
534 | </if> | |
535 | </if> | |
536 | ||
537 | <!-- Need for wxUniv within wxMGL: --> | |
538 | <if cond="FORMAT!='autoconf' and TOOLKIT=='MGL'"> | |
539 | <set var="WXUNIV">1</set> | |
540 | <set var="USE_THREADS">0</set> | |
541 | <set var="RUNTIME_LIBS">static</set> | |
542 | </if> | |
543 | ||
544 | </makefile> |