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