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