]> git.saurik.com Git - wxWidgets.git/blame - build/bakefiles/config.bkl
Refactor DND code into Carbon and Cocoa parts, and provide a basic OS X Cocoa impleme...
[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
557002cf
VZ
203 <option name="USE_MEDIA">
204 <values>0,1</values>
205 <default-value>1</default-value>
206 <description>
207 Build multimedia library (USE_GUI must be 1)?
208 </description>
209 </option>
210
3849327b
VS
211 <option name="USE_XRC">
212 <values>0,1</values>
213 <default-value>1</default-value>
214 <description>
215 Build wxXRC library (USE_GUI must be 1)?
216 </description>
217 </option>
61639efb 218
50acee04
JS
219 <option name="USE_AUI">
220 <values>0,1</values>
221 <default-value>1</default-value>
222 <description>
223 Build wxAUI library (USE_GUI must be 1)?
224 </description>
225 </option>
226
3c3ead1d
PC
227 <option name="USE_RIBBON">
228 <values>0,1</values>
229 <default-value>1</default-value>
230 <description>
231 Build wxRibbon library (USE_GUI must be 1)?
232 </description>
233 </option>
234
1c4293cb
VZ
235 <option name="USE_PROPGRID">
236 <values>0,1</values>
237 <default-value>1</default-value>
238 <description>
239 Build wxPropertyGrid library (USE_GUI must be 1)?
240 </description>
241 </option>
242
3b2cb431
JS
243 <option name="USE_RICHTEXT">
244 <values>0,1</values>
245 <default-value>1</default-value>
246 <description>
247 Build wxRichTextCtrl library (USE_GUI must be 1)?
248 </description>
249 </option>
250
54429bb3
RD
251 <option name="USE_STC">
252 <values>0,1</values>
253 <default-value>1</default-value>
254 <description>
255 Build wxStyledTextCtrl library (USE_GUI must be 1)?
256 </description>
257 </option>
258
4d264332 259 <option name="USE_OPENGL">
6990514b 260 <values>0,1</values>
671683c4 261 <default-value>1</default-value>
4d264332
VS
262 <description>
263 Build OpenGL canvas library (USE_GUI must be 1)?
264 </description>
265 </option>
61639efb 266
aae7e12e
VZ
267 <!-- currently only VC++ can compile wxDebugReport which is in QA lib -->
268 <set var="USE_QA_DEFAULT">
7da8bfe3
VZ
269 <if cond="FORMAT in ['msvc','msvc6prj','msvs2003prj','msvs2005prj','msvs2008prj']">1</if>
270 <if cond="FORMAT not in ['msvc','msvc6prj','msvs2003prj','msvs2005prj','msvs2008prj']">0</if>
aae7e12e 271 </set>
61639efb
VZ
272 <option name="USE_QA">
273 <values>0,1</values>
b1ac62dd 274 <default-value>$(USE_QA_DEFAULT)</default-value>
61639efb
VZ
275 <description>
276 Build quality assurance classes library (USE_GUI must be 1)?
277 </description>
278 </option>
279
9833a21a
VS
280 <option name="USE_EXCEPTIONS">
281 <values>0,1</values>
282 <default-value>1</default-value>
283 <description>
284 Enable exceptions in compiled code.
285 </description>
286 </option>
61639efb 287
c2efd890
VZ
288 <option name="USE_RTTI">
289 <values>0,1</values>
290 <default-value>1</default-value>
291 <description>
292 Enable run-time type information (RTTI) in compiled code.
293 </description>
294 </option>
61639efb 295
d1e5aa07
VS
296 <option name="USE_THREADS">
297 <values>0,1</values>
298 <default-value>1</default-value>
299 <description>
300 Enable threading in compiled code.
301 </description>
302 </option>
61639efb 303
f82b7036
KO
304 <option name="USE_CAIRO">
305 <values>0,1</values>
306 <default-value>0</default-value>
307 <description>
308 Enable wxCairoContext for platforms other than Linux/GTK.
309 </description>
310 </option>
311
2713e629
RD
312 <if cond="FORMAT!='autoconf'">
313 <option name="USE_GDIPLUS">
314 <values>0,1</values>
315 <default-value>0</default-value>
316 <description>
317 Link with gdiplus.lib? (Needed for wxGraphicsContext, will also set wxUSE_GRAPHICS_CONTEXT)
318 </description>
c6684d42 319 </option>
2713e629
RD
320 </if>
321
4fc5f509 322 <option name="OFFICIAL_BUILD">
6990514b 323 <values>0,1</values>
4fc5f509
VS
324 <default-value>0</default-value>
325 <description>
77ffb593 326 Is this official build by wxWidgets developers?
4fc5f509
VS
327 </description>
328 </option>
329 <option name="VENDOR">
330 <default-value>custom</default-value>
331 <description>
332 Use this to name your customized DLLs differently
333 </description>
334 </option>
589e20d0
RL
335 <!-- These basically do what vendor does in the places it didn't. -->
336 <!-- They should all be unified under some suitable descriptor -->
337 <option name="WX_FLAVOUR">
338 <default-value></default-value>
339 </option>
340 <option name="WX_LIB_FLAVOUR">
341 <default-value></default-value>
342 </option>
cff5df9f
VS
343
344 <option name="CFG">
345 <default-value></default-value>
346 <description>
4f6e1dac
VS
347Name of your custom configuration. This affects directory
348where object files are stored as well as the location of
349compiled .lib files and setup.h under the lib/ toplevel directory.
cff5df9f 350 </description>
670ec357
VS
351 </option>
352
353 <!-- unit tests support: -->
354 <option name="CPPUNIT_CFLAGS">
355 <default-value></default-value>
356 <description>
357Compiler flags needed to compile test suite in tests directory. If you want
358to run the tests, set it so that the compiler can find CppUnit headers.
359 </description>
360 </option>
61639efb 361
670ec357
VS
362 <option name="CPPUNIT_LIBS">
363 <default-value></default-value>
364 <description>
365Linker flags needed to link test suite in tests directory. If you want
366to run the tests, include CppUnit library here.
367 </description>
cff5df9f 368 </option>
61639efb
VZ
369
370
eefdc53a
VS
371 <!-- ================================================================== -->
372 <!-- Autoconf -->
373 <!-- ================================================================== -->
61639efb
VZ
374
375 <if cond="FORMAT=='autoconf'">
ddf98968
VS
376 <option name="DEREZ"/>
377 <option name="TOOLKIT"/>
378 <option name="TOOLKIT_LOWERCASE"/>
379 <option name="TOOLKIT_VERSION"/>
157a3440 380 <option name="TOOLCHAIN_NAME"/>
ceec2216 381 <option name="TOOLCHAIN_FULLNAME"/>
ddf98968 382 <option name="EXTRALIBS"/>
a69544bf 383 <option name="EXTRALIBS_XML"/>
c839485c 384 <option name="EXTRALIBS_HTML"/>
2f8711ed 385 <option name="EXTRALIBS_MEDIA"/>
c74dc163 386 <option name="EXTRALIBS_GUI"/>
34b08d2c 387 <option name="EXTRALIBS_OPENGL"/>
c79241a2 388 <option name="EXTRALIBS_SDL"/>
7fcba069 389 <option name="EXTRALIBS_GNOMEPRINT"/>
b1b592ad 390 <option name="CXXWARNINGS"/>
ea66c762 391 <option name="HOST_SUFFIX"/>
19beefa6
KO
392 <option name="DYLIB_RPATH_INSTALL"/>
393 <option name="DYLIB_RPATH_POSTLINK"/>
ef0add05 394 <option name="SAMPLES_RPATH_FLAG"/>
61639efb 395
516cf181
FM
396 <!-- see configure.in; it's required by some samples on Mac OS X -->
397 <option name="HEADER_PAD_OPTION"/>
398
4843dc4c 399 <set var="TOP_SRCDIR">$(top_srcdir)/</set>
4b44ea2b 400 <set var="RUNTIME_LIBS">dynamic</set>
e54bb212 401 <set var="WXTOPDIR"/> <!-- to be overriden on bakefile cmd line -->
61639efb 402
c79241a2
VS
403 <option name="WITH_PLUGIN_SDL">
404 <values>0,1</values>
405 </option>
6589dc98
VS
406
407 <option name="wx_top_builddir"/>
ddf98968
VS
408 </if>
409
61639efb 410
eefdc53a 411 <!-- ================================================================== -->
1dba7b4c 412 <!-- windows/dos/os2 compilers -->
eefdc53a
VS
413 <!-- ================================================================== -->
414
ddf98968 415 <if cond="FORMAT!='autoconf'">
4b44ea2b 416 <option name="RUNTIME_LIBS">
6990514b 417 <values>dynamic,static</values>
4b44ea2b
VS
418 <default-value>dynamic</default-value>
419 <description>
4f6e1dac
VS
420Version of C runtime library to use. You can change this to
421static if SHARED=0, but it is highly recommended to not do
422it if SHARED=1 unless you know what you are doing.
4b44ea2b
VS
423 </description>
424 </option>
61639efb 425
4843dc4c
VS
426 <set var="WXTOPDIR"/> <!-- to be overriden on bakefile cmd line -->
427
a92d711e 428 <set var="TOOLKIT" overwrite="0">
af594eca 429 <if cond="FORMAT=='msevc4prj'">WINCE</if>
00b20999 430 <if cond="FORMAT=='msvs2005prj' and MSVS_PLATFORMS=='pocketpc2003'">WINCE</if>
7da8bfe3 431 <if cond="FORMAT=='msvs2008prj' and MSVS_PLATFORMS=='pocketpc2003'">WINCE</if>
00b20999 432 <if cond="FORMAT=='msvs2005prj' and MSVS_PLATFORMS=='win32'">MSW</if>
7da8bfe3
VZ
433 <if cond="FORMAT=='msvs2008prj' and MSVS_PLATFORMS=='win32'">MSW</if>
434 <if cond="FORMAT not in ['msevc4prj','msvs2005prj','msvs2008prj'] and PLATFORM_WIN32=='1'">MSW</if>
b8af111f 435 <if cond="PLATFORM_MSDOS=='1'">MGL</if>
1dba7b4c 436 <if cond="PLATFORM_OS2=='1'">PM</if>
af594eca 437 </set>
eefdc53a
VS
438 <set var="TOOLKIT_LOWERCASE">$(TOOLKIT.lower())</set>
439 <set var="TOOLKIT_VERSION"/>
ea66c762 440 <set var="HOST_SUFFIX"/>
22cef566 441 <set var="EXTRACFLAGS"/>
6f53cd7c 442 <set var="EXTRALIBS"/>
a69544bf 443 <set var="EXTRALIBS_XML"/>
c839485c 444 <set var="EXTRALIBS_HTML"/>
2f8711ed 445 <set var="EXTRALIBS_MEDIA"/>
c74dc163 446 <set var="EXTRALIBS_GUI"/>
22cef566 447 <set var="EXTRALIBS_OPENGL">
43b0b6bc 448 <if cond="COMPILER=='wat' and TOOLKIT=='MSW'">opengl32.lib glu32.lib</if>
af594eca 449 <if cond="COMPILER in ['vc','evc']">opengl32.lib glu32.lib</if>
22cef566
VS
450 <if cond="COMPILER=='gcc'">-lopengl32 -lglu32</if>
451 </set>
c79241a2 452 <set var="EXTRALIBS_SDL"/>
7fcba069 453 <set var="EXTRALIBS_GNOMEPRINT"/>
c79241a2
VS
454
455 <set var="WITH_PLUGIN_SDL">0</set>
eefdc53a 456
2275c732
VS
457 <if cond="BUILDING_LIB=='1'">
458 <set-srcdir>../..</set-srcdir>
459 </if>
4843dc4c 460 <set var="TOP_SRCDIR">$(SRCDIR)/$(WXTOPDIR)</set>
ddf98968 461 </if>
61639efb 462
65fb1c11
VS
463 <if cond="FORMAT=='mingw'">
464 <option name="GCC_VERSION">
6990514b 465 <values>3,2.95</values>
65fb1c11
VS
466 <default-value>3</default-value>
467 <description>
4f6e1dac
VS
468Set 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
65fb1c11
VS
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>
d17bdeab 478
328f5196 479
d17bdeab
VS
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>
32a52290 487 <set var="USE_AUI">1</set>
3c3ead1d 488 <set var="USE_RIBBON">1</set>
1c4293cb 489 <set var="USE_PROPGRID">1</set>
3b2cb431 490 <set var="USE_RICHTEXT">1</set>
54429bb3 491 <set var="USE_STC">1</set>
d17bdeab 492 <set var="USE_HTML">1</set>
32a52290 493 <set var="USE_MEDIA">1</set>
3849327b 494 <set var="USE_XRC">1</set>
d17bdeab 495 <set var="USE_OPENGL">1</set>
61639efb 496 <set var="USE_QA">1</set>
d17bdeab
VS
497 <set var="MONOLITHIC">0</set>
498 <set var="USE_GUI">1</set>
9833a21a 499 <set var="USE_EXCEPTIONS">1</set>
c2efd890 500 <set var="USE_RTTI">1</set>
d1e5aa07 501 <set var="USE_THREADS">1</set>
f82b7036 502 <set var="USE_CAIRO">0</set>
2713e629 503 <if cond="FORMAT!='autoconf'"><set var="USE_GDIPLUS">0</set></if>
9d33d6b8 504 <set var="DEBUG_INFO">$(DEBUG_INFO_DEFAULT)</set>
d17bdeab
VS
505 <set var="DEBUG_FLAG">default</set>
506 <set var="MSLU">0</set>
507 </if>
508
e6e885fd
VS
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>
4fc1c0f0 517 <set var="UNICODE">1</set>
f46a065c
WS
518 <!-- Free version does not distribute OpenGL,
519 in commercial distribution better use dmars_smake format -->
520 <set var="USE_OPENGL">0</set>
e6e885fd
VS
521 </if>
522
af594eca 523 <!-- No need for wxUniv on embedded devices (yet): -->
7da8bfe3 524 <if cond="FORMAT=='msevc4prj' or (FORMAT=='msvs2005prj' and MSVS_PLATFORMS=='pocketpc2003') or (FORMAT=='msvs2008prj' and MSVS_PLATFORMS=='pocketpc2003')">
af594eca 525 <set var="WXUNIV">0</set>
1dba7b4c 526 <!-- Uploading debug reports from PDAs seems impractical -->
61639efb 527 <set var="USE_QA">0</set>
bc858dcf 528 <set var="MONOLITHIC">1</set> <!-- sic! -->
00b20999 529 <set var="USE_OPENGL">0</set> <!-- need OpenGL ES support first -->
5bcb84f8 530 <!-- RTTI and exceptions need separate cccrtti.lib with eVC4 -->
00b20999
VZ
531 <if cond="FORMAT=='msevc4prj'">
532 <set var="USE_RTTI">0</set>
533 <set var="USE_EXCEPTIONS">0</set>
534 </if>
af594eca
VS
535 </if>
536
b8af111f 537 <!-- Need for wxUniv within wxMGL: -->
4c4863db 538 <if cond="FORMAT!='autoconf' and TOOLKIT=='MGL'">
b8af111f 539 <set var="WXUNIV">1</set>
43b0b6bc 540 <set var="USE_THREADS">0</set>
7ee1ea9d 541 <set var="RUNTIME_LIBS">static</set>
b8af111f
WS
542 </if>
543
ddf98968 544</makefile>