]> git.saurik.com Git - wxWidgets.git/blame - build/bakefiles/config.bkl
synchronize GTK2 minimum version in docs
[wxWidgets.git] / build / bakefiles / config.bkl
CommitLineData
ddf98968
VS
1<?xml version="1.0" ?>
2<!-- $Id$ -->
3
4<makefile>
61639efb 5
cc8953a6 6 <set var="IS_MSVC_PRJ">
7da8bfe3 7 $(FORMAT in ['msvc6prj','msevc4prj','msvs2003prj','msvs2005prj','msvs2008prj'])
cc8953a6 8 </set>
0c4311ca
VZ
9 <set var="IS_MSVC">
10 $(IS_MSVC_PRJ=='1' or FORMAT=='msvc')
11 </set>
12
cc8953a6 13
498368e9
VS
14 <set var="BUILDING_LIB" overwrite="0">0</set>
15
c8d58531
MW
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
6990514b
VS
39 <option name="SHARED">
40 <values>0,1</values>
41 <values-description>,DLL</values-description>
252b53f5 42 <default-value>0</default-value>
6990514b
VS
43 <description>
44 What type of library to build?
45 </description>
46 </option>
61639efb 47
6990514b
VS
48 <option name="WXUNIV">
49 <values>0,1</values>
d3e6602e 50 <values-description>,Universal</values-description>
6990514b
VS
51 <default-value>0</default-value>
52 <description>
53 Build wxUniversal instead of native port?
54 </description>
55 </option>
56
24dfe917
VS
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>
6990514b 73
416f5bc8
VS
74 <if cond="FORMAT!='autoconf' and FORMAT!='watcom'">
75 <option name="MSLU">
76 <values>0,1</values>
61639efb 77 <default-value>0</default-value>
416f5bc8
VS
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
4f6e1dac 87 <option name="BUILD">
6990514b
VS
88 <values>debug,release</values>
89 <values-description>Debug,Release</values-description>
252b53f5 90 <default-value>debug</default-value>
4f6e1dac
VS
91 <description>
92 Type of compiled binaries
93 </description>
94 </option>
1dba7b4c 95
e40b74ba
MW
96 <if cond="FORMAT=='msvc'">
97 <option name="TARGET_CPU">
e40b74ba
MW
98 <default-value>$(DOLLAR)(CPU)</default-value>
99 <description>
100The target processor architecture must be specified when it is not X86.
101This does not affect the compiler output, so you still need to make sure
102your environment is set up appropriately with the correct compiler in the
103PATH. Rather it affects some options passed to some of the common build
104utilities such as the resource compiler and the linker.
b1e411d9
VS
105
106Accepted values: AMD64, IA64.
e40b74ba
MW
107 </description>
108 </option>
109 </if>
110 <if cond="FORMAT!='msvc'">
111 <set var="TARGET_CPU"/>
112 </if>
113
0c4311ca
VZ
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 -->
9d33d6b8 120 <set var="DEBUG_INFO_DEFAULT">
0c4311ca
VZ
121 <if cond="IS_MSVC=='1'">1</if>
122 <if cond="IS_MSVC=='0'">default</if>
9d33d6b8 123 </set>
61639efb 124
4f6e1dac 125 <option name="DEBUG_INFO">
6990514b 126 <values>0,1,default</values>
9d33d6b8 127 <default-value>$(DEBUG_INFO_DEFAULT)</default-value>
4f6e1dac
VS
128 <description>
129Should debugging info be included in the executables? The default value
130"default" means that debug info will be included if BUILD=debug
131and not included if BUILD=release.
132 </description>
133 </option>
61639efb 134
4f6e1dac 135 <option name="DEBUG_FLAG">
6990514b 136 <values>0,1,default</values>
c6684d42 137 <default-value>1</default-value>
4f6e1dac 138 <description>
c6684d42
VZ
139Value of wxDEBUG_LEVEL. The default value is the same as 1 and means that all
140but expensive assert checks are enabled, use 0 to completely remove debugging
141code.
4f6e1dac
VS
142 </description>
143 </option>
144
145 <if cond="FORMAT=='msvc'">
146 <option name="DEBUG_RUNTIME_LIBS">
6990514b 147 <values>0,1,default</values>
4f6e1dac
VS
148 <default-value>default</default-value>
149 <description>
c6684d42
VZ
150Link against debug (e.g. msvcrtd.dll) or release (msvcrt.dll) RTL?
151Default is to use debug CRT if and only if BUILD==debug.
4f6e1dac
VS
152 </description>
153 </option>
154 </if>
155 <if cond="FORMAT!='msvc'">
156 <set var="DEBUG_RUNTIME_LIBS">default</set>
157 </if>
8998a324
VS
158
159 <set var="MONOLITHIC_DEFAULT">
160 <if cond="FORMAT=='watcom'">1</if>
161 <if cond="FORMAT!='watcom'">0</if>
162 </set>
ddf98968 163 <option name="MONOLITHIC">
6990514b
VS
164 <values>0,1</values>
165 <values-description>Multilib,Monolithic</values-description>
8998a324 166 <default-value>$(MONOLITHIC_DEFAULT)</default-value>
ddf98968
VS
167 <description>
168 Multiple libraries or single huge monolithic one?
169 </description>
170 </option>
61639efb 171
c79241a2
VS
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>
61639efb 185
ddf98968 186 <option name="USE_GUI">
6990514b
VS
187 <values>0,1</values>
188 <values-description>Base,GUI</values-description>
ddf98968
VS
189 <default-value>1</default-value>
190 <description>
191 Build GUI libraries?
192 </description>
193 </option>
61639efb 194
4d264332 195 <option name="USE_HTML">
6990514b 196 <values>0,1</values>
4d264332
VS
197 <default-value>1</default-value>
198 <description>
199 Build wxHTML library (USE_GUI must be 1)?
200 </description>
201 </option>
61639efb 202
467d261e 203 <option name="USE_WEBVIEW">
cfcf1d6e
SL
204 <values>0,1</values>
205 <default-value>1</default-value>
206 <description>
467d261e 207 Build wxWebView library (USE_GUI must be 1)?
cfcf1d6e
SL
208 </description>
209 </option>
210
557002cf
VZ
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
3849327b
VS
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>
61639efb 226
50acee04
JS
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
3c3ead1d
PC
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
1c4293cb
VZ
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
3b2cb431
JS
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
54429bb3
RD
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
4d264332 267 <option name="USE_OPENGL">
6990514b 268 <values>0,1</values>
671683c4 269 <default-value>1</default-value>
4d264332
VS
270 <description>
271 Build OpenGL canvas library (USE_GUI must be 1)?
272 </description>
273 </option>
61639efb 274
aae7e12e
VZ
275 <!-- currently only VC++ can compile wxDebugReport which is in QA lib -->
276 <set var="USE_QA_DEFAULT">
7da8bfe3
VZ
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>
aae7e12e 279 </set>
61639efb
VZ
280 <option name="USE_QA">
281 <values>0,1</values>
b1ac62dd 282 <default-value>$(USE_QA_DEFAULT)</default-value>
61639efb
VZ
283 <description>
284 Build quality assurance classes library (USE_GUI must be 1)?
285 </description>
286 </option>
287
9833a21a
VS
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>
61639efb 295
c2efd890
VZ
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>
61639efb 303
d1e5aa07
VS
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>
61639efb 311
f82b7036
KO
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
4fc5f509 320 <option name="OFFICIAL_BUILD">
6990514b 321 <values>0,1</values>
4fc5f509
VS
322 <default-value>0</default-value>
323 <description>
77ffb593 324 Is this official build by wxWidgets developers?
4fc5f509
VS
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>
589e20d0
RL
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>
cff5df9f
VS
341
342 <option name="CFG">
343 <default-value></default-value>
344 <description>
4f6e1dac
VS
345Name of your custom configuration. This affects directory
346where object files are stored as well as the location of
347compiled .lib files and setup.h under the lib/ toplevel directory.
cff5df9f 348 </description>
670ec357
VS
349 </option>
350
351 <!-- unit tests support: -->
352 <option name="CPPUNIT_CFLAGS">
353 <default-value></default-value>
354 <description>
355Compiler flags needed to compile test suite in tests directory. If you want
356to run the tests, set it so that the compiler can find CppUnit headers.
357 </description>
358 </option>
61639efb 359
670ec357
VS
360 <option name="CPPUNIT_LIBS">
361 <default-value></default-value>
362 <description>
363Linker flags needed to link test suite in tests directory. If you want
364to run the tests, include CppUnit library here.
365 </description>
cff5df9f 366 </option>
61639efb
VZ
367
368
eefdc53a
VS
369 <!-- ================================================================== -->
370 <!-- Autoconf -->
371 <!-- ================================================================== -->
61639efb
VZ
372
373 <if cond="FORMAT=='autoconf'">
ddf98968
VS
374 <option name="DEREZ"/>
375 <option name="TOOLKIT"/>
376 <option name="TOOLKIT_LOWERCASE"/>
377 <option name="TOOLKIT_VERSION"/>
157a3440 378 <option name="TOOLCHAIN_NAME"/>
ceec2216 379 <option name="TOOLCHAIN_FULLNAME"/>
ddf98968 380 <option name="EXTRALIBS"/>
a69544bf 381 <option name="EXTRALIBS_XML"/>
c839485c 382 <option name="EXTRALIBS_HTML"/>
2f8711ed 383 <option name="EXTRALIBS_MEDIA"/>
c74dc163 384 <option name="EXTRALIBS_GUI"/>
34b08d2c 385 <option name="EXTRALIBS_OPENGL"/>
c79241a2 386 <option name="EXTRALIBS_SDL"/>
7fcba069 387 <option name="EXTRALIBS_GNOMEPRINT"/>
b1b592ad 388 <option name="CXXWARNINGS"/>
ea66c762 389 <option name="HOST_SUFFIX"/>
19beefa6
KO
390 <option name="DYLIB_RPATH_INSTALL"/>
391 <option name="DYLIB_RPATH_POSTLINK"/>
ef0add05 392 <option name="SAMPLES_RPATH_FLAG"/>
61639efb 393
516cf181
FM
394 <!-- see configure.in; it's required by some samples on Mac OS X -->
395 <option name="HEADER_PAD_OPTION"/>
396
4843dc4c 397 <set var="TOP_SRCDIR">$(top_srcdir)/</set>
4b44ea2b 398 <set var="RUNTIME_LIBS">dynamic</set>
4c51a665 399 <set var="WXTOPDIR"/> <!-- to be overridden on bakefile cmd line -->
61639efb 400
c79241a2
VS
401 <option name="WITH_PLUGIN_SDL">
402 <values>0,1</values>
403 </option>
6589dc98
VS
404
405 <option name="wx_top_builddir"/>
ddf98968
VS
406 </if>
407
61639efb 408
eefdc53a 409 <!-- ================================================================== -->
1dba7b4c 410 <!-- windows/dos/os2 compilers -->
eefdc53a
VS
411 <!-- ================================================================== -->
412
ddf98968 413 <if cond="FORMAT!='autoconf'">
4b44ea2b 414 <option name="RUNTIME_LIBS">
6990514b 415 <values>dynamic,static</values>
4b44ea2b
VS
416 <default-value>dynamic</default-value>
417 <description>
4f6e1dac
VS
418Version of C runtime library to use. You can change this to
419static if SHARED=0, but it is highly recommended to not do
420it if SHARED=1 unless you know what you are doing.
4b44ea2b
VS
421 </description>
422 </option>
61639efb 423
4c51a665 424 <set var="WXTOPDIR"/> <!-- to be overridden on bakefile cmd line -->
4843dc4c 425
a92d711e 426 <set var="TOOLKIT" overwrite="0">
af594eca 427 <if cond="FORMAT=='msevc4prj'">WINCE</if>
00b20999 428 <if cond="FORMAT=='msvs2005prj' and MSVS_PLATFORMS=='pocketpc2003'">WINCE</if>
7da8bfe3 429 <if cond="FORMAT=='msvs2008prj' and MSVS_PLATFORMS=='pocketpc2003'">WINCE</if>
00b20999 430 <if cond="FORMAT=='msvs2005prj' and MSVS_PLATFORMS=='win32'">MSW</if>
7da8bfe3
VZ
431 <if cond="FORMAT=='msvs2008prj' and MSVS_PLATFORMS=='win32'">MSW</if>
432 <if cond="FORMAT not in ['msevc4prj','msvs2005prj','msvs2008prj'] and PLATFORM_WIN32=='1'">MSW</if>
1dba7b4c 433 <if cond="PLATFORM_OS2=='1'">PM</if>
af594eca 434 </set>
eefdc53a
VS
435 <set var="TOOLKIT_LOWERCASE">$(TOOLKIT.lower())</set>
436 <set var="TOOLKIT_VERSION"/>
ea66c762 437 <set var="HOST_SUFFIX"/>
22cef566 438 <set var="EXTRACFLAGS"/>
6f53cd7c 439 <set var="EXTRALIBS"/>
a69544bf 440 <set var="EXTRALIBS_XML"/>
c839485c 441 <set var="EXTRALIBS_HTML"/>
2f8711ed 442 <set var="EXTRALIBS_MEDIA"/>
c74dc163 443 <set var="EXTRALIBS_GUI"/>
22cef566 444 <set var="EXTRALIBS_OPENGL">
43b0b6bc 445 <if cond="COMPILER=='wat' and TOOLKIT=='MSW'">opengl32.lib glu32.lib</if>
af594eca 446 <if cond="COMPILER in ['vc','evc']">opengl32.lib glu32.lib</if>
22cef566
VS
447 <if cond="COMPILER=='gcc'">-lopengl32 -lglu32</if>
448 </set>
c79241a2 449 <set var="EXTRALIBS_SDL"/>
7fcba069 450 <set var="EXTRALIBS_GNOMEPRINT"/>
c79241a2
VS
451
452 <set var="WITH_PLUGIN_SDL">0</set>
eefdc53a 453
2275c732
VS
454 <if cond="BUILDING_LIB=='1'">
455 <set-srcdir>../..</set-srcdir>
456 </if>
4843dc4c 457 <set var="TOP_SRCDIR">$(SRCDIR)/$(WXTOPDIR)</set>
ddf98968 458 </if>
61639efb 459
65fb1c11
VS
460 <if cond="FORMAT=='mingw'">
461 <option name="GCC_VERSION">
6990514b 462 <values>3,2.95</values>
65fb1c11
VS
463 <default-value>3</default-value>
464 <description>
4f6e1dac
VS
465Set the version of your Mingw installation here.
466 "3" ...... this is for Mingw 2.0 or newer (comes with gcc3)
467 "2.95" ... for Mingw 1.1 or any of the older versions
65fb1c11
VS
468 </description>
469 </option>
470 <set var="GCCFLAGS">
471 <if cond="GCC_VERSION=='2.95'">-fvtable-thunks</if>
472 </set>
473 <set var="EXTRACFLAGS">$(GCCFLAGS) -DHAVE_W32API_H</set>
474 </if>
d17bdeab 475
328f5196 476
d17bdeab
VS
477 <!-- ================================================================== -->
478 <!-- Project files - hardcode some defaults -->
479 <!-- ================================================================== -->
480
481 <if cond="FORMAT_SUPPORTS_CONDITIONS=='0'">
482 <set var="RUNTIME_LIBS">dynamic</set>
483 <set var="OFFICIAL_BUILD">0</set>
32a52290 484 <set var="USE_AUI">1</set>
3c3ead1d 485 <set var="USE_RIBBON">1</set>
1c4293cb 486 <set var="USE_PROPGRID">1</set>
3b2cb431 487 <set var="USE_RICHTEXT">1</set>
54429bb3 488 <set var="USE_STC">1</set>
d17bdeab 489 <set var="USE_HTML">1</set>
467d261e 490 <set var="USE_WEBVIEW">1</set>
32a52290 491 <set var="USE_MEDIA">1</set>
3849327b 492 <set var="USE_XRC">1</set>
d17bdeab 493 <set var="USE_OPENGL">1</set>
61639efb 494 <set var="USE_QA">1</set>
d17bdeab
VS
495 <set var="MONOLITHIC">0</set>
496 <set var="USE_GUI">1</set>
9833a21a 497 <set var="USE_EXCEPTIONS">1</set>
c2efd890 498 <set var="USE_RTTI">1</set>
d1e5aa07 499 <set var="USE_THREADS">1</set>
f82b7036 500 <set var="USE_CAIRO">0</set>
9d33d6b8 501 <set var="DEBUG_INFO">$(DEBUG_INFO_DEFAULT)</set>
d17bdeab
VS
502 <set var="DEBUG_FLAG">default</set>
503 <set var="MSLU">0</set>
504 </if>
505
e6e885fd
VS
506
507 <!-- DigitalMars make is braindead, it doesn't have conditional
508 processing: -->
509 <if cond="FORMAT=='dmars'">
510 <set var="RUNTIME_LIBS">static</set>
511 <set var="BUILD">debug</set>
512 <set var="SHARED">0</set>
513 <set var="WXUNIV">0</set>
4fc1c0f0 514 <set var="UNICODE">1</set>
f46a065c
WS
515 <!-- Free version does not distribute OpenGL,
516 in commercial distribution better use dmars_smake format -->
517 <set var="USE_OPENGL">0</set>
e6e885fd
VS
518 </if>
519
af594eca 520 <!-- No need for wxUniv on embedded devices (yet): -->
7da8bfe3 521 <if cond="FORMAT=='msevc4prj' or (FORMAT=='msvs2005prj' and MSVS_PLATFORMS=='pocketpc2003') or (FORMAT=='msvs2008prj' and MSVS_PLATFORMS=='pocketpc2003')">
af594eca 522 <set var="WXUNIV">0</set>
1dba7b4c 523 <!-- Uploading debug reports from PDAs seems impractical -->
61639efb 524 <set var="USE_QA">0</set>
bc858dcf 525 <set var="MONOLITHIC">1</set> <!-- sic! -->
00b20999 526 <set var="USE_OPENGL">0</set> <!-- need OpenGL ES support first -->
5bcb84f8 527 <!-- RTTI and exceptions need separate cccrtti.lib with eVC4 -->
00b20999
VZ
528 <if cond="FORMAT=='msevc4prj'">
529 <set var="USE_RTTI">0</set>
530 <set var="USE_EXCEPTIONS">0</set>
531 </if>
af594eca
VS
532 </if>
533
ddf98968 534</makefile>