]>
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 | ||
10 | <set var="BUILDING_LIB" overwrite="0">0</set> | |
11 | ||
12 | <set var="CPP_DEFAULT_VALUE"> | |
13 | <if cond="FORMAT=='borland'"> | |
14 | cpp32 -Sr -oCON | |
15 | </if> | |
16 | <if cond="FORMAT=='mingw'"> | |
17 | $(DOLLAR)(CC) -E | |
18 | </if> | |
19 | <if cond="FORMAT=='msvc'"> | |
20 | $(DOLLAR)(CC) /EP /nologo | |
21 | </if> | |
22 | <if cond="FORMAT=='watcom'"> | |
23 | $(DOLLAR)(CC) -p | |
24 | </if> | |
25 | </set> | |
26 | <option name="CPP"> | |
27 | <default-value> | |
28 | $(CPP_DEFAULT_VALUE) | |
29 | </default-value> | |
30 | <description> | |
31 | The C preprocessor | |
32 | </description> | |
33 | </option> | |
34 | ||
35 | <option name="SHARED"> | |
36 | <values>0,1</values> | |
37 | <values-description>,DLL</values-description> | |
38 | <default-value>0</default-value> | |
39 | <description> | |
40 | What type of library to build? | |
41 | </description> | |
42 | </option> | |
43 | ||
44 | <option name="WXUNIV"> | |
45 | <values>0,1</values> | |
46 | <values-description>,Universal</values-description> | |
47 | <default-value>0</default-value> | |
48 | <description> | |
49 | Build wxUniversal instead of native port? | |
50 | </description> | |
51 | </option> | |
52 | ||
53 | <!-- don't include ANSI configuration in project files, it's going to be | |
54 | eventually removed anyway and it only doubles the number of build | |
55 | configs in projects: --> | |
56 | <if cond="IS_MSVC_PRJ=='1'"> | |
57 | <set var="UNICODE">1</set> | |
58 | </if> | |
59 | <if cond="IS_MSVC_PRJ=='0'"> | |
60 | <option name="UNICODE"> | |
61 | <values>0,1</values> | |
62 | <values-description>,Unicode</values-description> | |
63 | <default-value>1</default-value> | |
64 | <description> | |
65 | Compile Unicode build of wxWidgets? | |
66 | </description> | |
67 | </option> | |
68 | </if> | |
69 | ||
70 | <if cond="FORMAT!='autoconf' and FORMAT!='watcom'"> | |
71 | <option name="MSLU"> | |
72 | <values>0,1</values> | |
73 | <default-value>0</default-value> | |
74 | <description> | |
75 | Use MSLU library when building Unicode version. | |
76 | </description> | |
77 | </option> | |
78 | </if> | |
79 | <if cond="FORMAT=='autoconf' or FORMAT=='watcom'"> | |
80 | <set var="MSLU">0</set> | |
81 | </if> | |
82 | ||
83 | <option name="BUILD"> | |
84 | <values>debug,release</values> | |
85 | <values-description>Debug,Release</values-description> | |
86 | <default-value>debug</default-value> | |
87 | <description> | |
88 | Type of compiled binaries | |
89 | </description> | |
90 | </option> | |
91 | ||
92 | <if cond="FORMAT=='msvc'"> | |
93 | <option name="TARGET_CPU"> | |
94 | <default-value>$(DOLLAR)(CPU)</default-value> | |
95 | <description> | |
96 | The target processor architecture must be specified when it is not X86. | |
97 | This does not affect the compiler output, so you still need to make sure | |
98 | your environment is set up appropriately with the correct compiler in the | |
99 | PATH. Rather it affects some options passed to some of the common build | |
100 | utilities such as the resource compiler and the linker. | |
101 | ||
102 | Accepted values: AMD64, IA64. | |
103 | </description> | |
104 | </option> | |
105 | </if> | |
106 | <if cond="FORMAT!='msvc'"> | |
107 | <set var="TARGET_CPU"/> | |
108 | </if> | |
109 | ||
110 | <set var="DEBUG_INFO_DEFAULT"> | |
111 | <if cond="IS_MSVC_PRJ=='1'">1</if> | |
112 | <if cond="IS_MSVC_PRJ=='0'">default</if> | |
113 | </set> | |
114 | ||
115 | <option name="DEBUG_INFO"> | |
116 | <values>0,1,default</values> | |
117 | <default-value>$(DEBUG_INFO_DEFAULT)</default-value> | |
118 | <description> | |
119 | Should debugging info be included in the executables? The default value | |
120 | "default" means that debug info will be included if BUILD=debug | |
121 | and not included if BUILD=release. | |
122 | </description> | |
123 | </option> | |
124 | ||
125 | <option name="DEBUG_FLAG"> | |
126 | <values>0,1,default</values> | |
127 | <default-value>default</default-value> | |
128 | <description> | |
129 | Should __WXDEBUG__ be defined? The default value "default" means that it will | |
130 | be defined if BUILD=debug and not defined if BUILD=release. | |
131 | </description> | |
132 | </option> | |
133 | ||
134 | <if cond="FORMAT=='msvc'"> | |
135 | <option name="DEBUG_RUNTIME_LIBS"> | |
136 | <values>0,1,default</values> | |
137 | <default-value>default</default-value> | |
138 | <description> | |
139 | Should link against debug RTL (msvcrtd.dll) or release (msvcrt.dll)? | |
140 | Acts according to BUILD by default. | |
141 | </description> | |
142 | </option> | |
143 | </if> | |
144 | <if cond="FORMAT!='msvc'"> | |
145 | <set var="DEBUG_RUNTIME_LIBS">default</set> | |
146 | </if> | |
147 | ||
148 | <set var="MONOLITHIC_DEFAULT"> | |
149 | <if cond="FORMAT=='watcom'">1</if> | |
150 | <if cond="FORMAT!='watcom'">0</if> | |
151 | </set> | |
152 | <option name="MONOLITHIC"> | |
153 | <values>0,1</values> | |
154 | <values-description>Multilib,Monolithic</values-description> | |
155 | <default-value>$(MONOLITHIC_DEFAULT)</default-value> | |
156 | <description> | |
157 | Multiple libraries or single huge monolithic one? | |
158 | </description> | |
159 | </option> | |
160 | ||
161 | <if cond="FORMAT=='autoconf'"> <!-- FIXME - temporary --> | |
162 | <option name="USE_PLUGINS"> | |
163 | <values>0,1</values> | |
164 | <default-value>1</default-value> | |
165 | <description> | |
166 | Build parts of the library as dynamically loadable plugins | |
167 | (only supported in multilib build)? | |
168 | </description> | |
169 | </option> | |
170 | </if> | |
171 | <if cond="FORMAT!='autoconf'"> | |
172 | <set var="USE_PLUGINS">0</set> <!-- FIXME - temporary --> | |
173 | </if> | |
174 | ||
175 | <option name="USE_GUI"> | |
176 | <values>0,1</values> | |
177 | <values-description>Base,GUI</values-description> | |
178 | <default-value>1</default-value> | |
179 | <description> | |
180 | Build GUI libraries? | |
181 | </description> | |
182 | </option> | |
183 | ||
184 | <option name="USE_HTML"> | |
185 | <values>0,1</values> | |
186 | <default-value>1</default-value> | |
187 | <description> | |
188 | Build wxHTML library (USE_GUI must be 1)? | |
189 | </description> | |
190 | </option> | |
191 | ||
192 | <option name="USE_MEDIA"> | |
193 | <values>0,1</values> | |
194 | <default-value>1</default-value> | |
195 | <description> | |
196 | Build multimedia library (USE_GUI must be 1)? | |
197 | </description> | |
198 | </option> | |
199 | ||
200 | <option name="USE_XRC"> | |
201 | <values>0,1</values> | |
202 | <default-value>1</default-value> | |
203 | <description> | |
204 | Build wxXRC library (USE_GUI must be 1)? | |
205 | </description> | |
206 | </option> | |
207 | ||
208 | <option name="USE_AUI"> | |
209 | <values>0,1</values> | |
210 | <default-value>1</default-value> | |
211 | <description> | |
212 | Build wxAUI library (USE_GUI must be 1)? | |
213 | </description> | |
214 | </option> | |
215 | ||
216 | <option name="USE_PROPGRID"> | |
217 | <values>0,1</values> | |
218 | <default-value>1</default-value> | |
219 | <description> | |
220 | Build wxPropertyGrid library (USE_GUI must be 1)? | |
221 | </description> | |
222 | </option> | |
223 | ||
224 | <option name="USE_RICHTEXT"> | |
225 | <values>0,1</values> | |
226 | <default-value>1</default-value> | |
227 | <description> | |
228 | Build wxRichTextCtrl library (USE_GUI must be 1)? | |
229 | </description> | |
230 | </option> | |
231 | ||
232 | <option name="USE_STC"> | |
233 | <values>0,1</values> | |
234 | <default-value>1</default-value> | |
235 | <description> | |
236 | Build wxStyledTextCtrl library (USE_GUI must be 1)? | |
237 | </description> | |
238 | </option> | |
239 | ||
240 | <option name="USE_OPENGL"> | |
241 | <values>0,1</values> | |
242 | <default-value>0</default-value> | |
243 | <description> | |
244 | Build OpenGL canvas library (USE_GUI must be 1)? | |
245 | </description> | |
246 | </option> | |
247 | ||
248 | <!-- currently only VC++ can compile wxDebugReport which is in QA lib --> | |
249 | <set var="USE_QA_DEFAULT"> | |
250 | <if cond="FORMAT in ['msvc','msvc6prj','msvs2003prj','msvs2005prj','msvs2008prj']">1</if> | |
251 | <if cond="FORMAT not in ['msvc','msvc6prj','msvs2003prj','msvs2005prj','msvs2008prj']">0</if> | |
252 | </set> | |
253 | <option name="USE_QA"> | |
254 | <values>0,1</values> | |
255 | <default-value>$(USE_QA_DEFAULT)</default-value> | |
256 | <description> | |
257 | Build quality assurance classes library (USE_GUI must be 1)? | |
258 | </description> | |
259 | </option> | |
260 | ||
261 | <option name="USE_EXCEPTIONS"> | |
262 | <values>0,1</values> | |
263 | <default-value>1</default-value> | |
264 | <description> | |
265 | Enable exceptions in compiled code. | |
266 | </description> | |
267 | </option> | |
268 | ||
269 | <option name="USE_RTTI"> | |
270 | <values>0,1</values> | |
271 | <default-value>1</default-value> | |
272 | <description> | |
273 | Enable run-time type information (RTTI) in compiled code. | |
274 | </description> | |
275 | </option> | |
276 | ||
277 | <option name="USE_THREADS"> | |
278 | <values>0,1</values> | |
279 | <default-value>1</default-value> | |
280 | <description> | |
281 | Enable threading in compiled code. | |
282 | </description> | |
283 | </option> | |
284 | ||
285 | <if cond="FORMAT!='autoconf'"> | |
286 | <option name="USE_GDIPLUS"> | |
287 | <values>0,1</values> | |
288 | <default-value>0</default-value> | |
289 | <description> | |
290 | Link with gdiplus.lib? (Needed for wxGraphicsContext, will also set wxUSE_GRAPHICS_CONTEXT) | |
291 | </description> | |
292 | </option> | |
293 | </if> | |
294 | ||
295 | <option name="OFFICIAL_BUILD"> | |
296 | <values>0,1</values> | |
297 | <default-value>0</default-value> | |
298 | <description> | |
299 | Is this official build by wxWidgets developers? | |
300 | </description> | |
301 | </option> | |
302 | <option name="VENDOR"> | |
303 | <default-value>custom</default-value> | |
304 | <description> | |
305 | Use this to name your customized DLLs differently | |
306 | </description> | |
307 | </option> | |
308 | <!-- These basically do what vendor does in the places it didn't. --> | |
309 | <!-- They should all be unified under some suitable descriptor --> | |
310 | <option name="WX_FLAVOUR"> | |
311 | <default-value></default-value> | |
312 | </option> | |
313 | <option name="WX_LIB_FLAVOUR"> | |
314 | <default-value></default-value> | |
315 | </option> | |
316 | ||
317 | <option name="CFG"> | |
318 | <default-value></default-value> | |
319 | <description> | |
320 | Name of your custom configuration. This affects directory | |
321 | where object files are stored as well as the location of | |
322 | compiled .lib files and setup.h under the lib/ toplevel directory. | |
323 | </description> | |
324 | </option> | |
325 | ||
326 | <!-- unit tests support: --> | |
327 | <option name="CPPUNIT_CFLAGS"> | |
328 | <default-value></default-value> | |
329 | <description> | |
330 | Compiler flags needed to compile test suite in tests directory. If you want | |
331 | to run the tests, set it so that the compiler can find CppUnit headers. | |
332 | </description> | |
333 | </option> | |
334 | ||
335 | <option name="CPPUNIT_LIBS"> | |
336 | <default-value></default-value> | |
337 | <description> | |
338 | Linker flags needed to link test suite in tests directory. If you want | |
339 | to run the tests, include CppUnit library here. | |
340 | </description> | |
341 | </option> | |
342 | ||
343 | ||
344 | <!-- ================================================================== --> | |
345 | <!-- Autoconf --> | |
346 | <!-- ================================================================== --> | |
347 | ||
348 | <if cond="FORMAT=='autoconf'"> | |
349 | <option name="DEREZ"/> | |
350 | <option name="TOOLKIT"/> | |
351 | <option name="TOOLKIT_LOWERCASE"/> | |
352 | <option name="TOOLKIT_VERSION"/> | |
353 | <option name="TOOLCHAIN_NAME"/> | |
354 | <option name="TOOLCHAIN_FULLNAME"/> | |
355 | <option name="EXTRALIBS"/> | |
356 | <option name="EXTRALIBS_XML"/> | |
357 | <option name="EXTRALIBS_HTML"/> | |
358 | <option name="EXTRALIBS_MEDIA"/> | |
359 | <option name="EXTRALIBS_GUI"/> | |
360 | <option name="EXTRALIBS_OPENGL"/> | |
361 | <option name="EXTRALIBS_SDL"/> | |
362 | <option name="EXTRALIBS_GNOMEPRINT"/> | |
363 | <option name="CXXWARNINGS"/> | |
364 | <option name="HOST_SUFFIX"/> | |
365 | <option name="SAMPLES_RPATH_FLAG"/> | |
366 | <option name="SAMPLES_RPATH_POSTLINK"/> | |
367 | ||
368 | <!-- see configure.in; it's required by some samples on Mac OS X --> | |
369 | <option name="HEADER_PAD_OPTION"/> | |
370 | ||
371 | <set var="TOP_SRCDIR">$(top_srcdir)/</set> | |
372 | <set var="RUNTIME_LIBS">dynamic</set> | |
373 | <set var="WXTOPDIR"/> <!-- to be overriden on bakefile cmd line --> | |
374 | ||
375 | <option name="WITH_PLUGIN_SDL"> | |
376 | <values>0,1</values> | |
377 | </option> | |
378 | ||
379 | <option name="wx_top_builddir"/> | |
380 | </if> | |
381 | ||
382 | ||
383 | <!-- ================================================================== --> | |
384 | <!-- windows/dos/os2 compilers --> | |
385 | <!-- ================================================================== --> | |
386 | ||
387 | <if cond="FORMAT!='autoconf'"> | |
388 | <option name="RUNTIME_LIBS"> | |
389 | <values>dynamic,static</values> | |
390 | <default-value>dynamic</default-value> | |
391 | <description> | |
392 | Version of C runtime library to use. You can change this to | |
393 | static if SHARED=0, but it is highly recommended to not do | |
394 | it if SHARED=1 unless you know what you are doing. | |
395 | </description> | |
396 | </option> | |
397 | ||
398 | <set var="WXTOPDIR"/> <!-- to be overriden on bakefile cmd line --> | |
399 | ||
400 | <set var="TOOLKIT" overwrite="0"> | |
401 | <if cond="FORMAT=='msevc4prj'">WINCE</if> | |
402 | <if cond="FORMAT=='msvs2005prj' and MSVS_PLATFORMS=='pocketpc2003'">WINCE</if> | |
403 | <if cond="FORMAT=='msvs2008prj' and MSVS_PLATFORMS=='pocketpc2003'">WINCE</if> | |
404 | <if cond="FORMAT=='msvs2005prj' and MSVS_PLATFORMS=='win32'">MSW</if> | |
405 | <if cond="FORMAT=='msvs2008prj' and MSVS_PLATFORMS=='win32'">MSW</if> | |
406 | <if cond="FORMAT not in ['msevc4prj','msvs2005prj','msvs2008prj'] and PLATFORM_WIN32=='1'">MSW</if> | |
407 | <if cond="PLATFORM_MSDOS=='1'">MGL</if> | |
408 | <if cond="PLATFORM_OS2=='1'">PM</if> | |
409 | </set> | |
410 | <set var="TOOLKIT_LOWERCASE">$(TOOLKIT.lower())</set> | |
411 | <set var="TOOLKIT_VERSION"/> | |
412 | <set var="HOST_SUFFIX"/> | |
413 | <set var="EXTRACFLAGS"/> | |
414 | <set var="EXTRALIBS"/> | |
415 | <set var="EXTRALIBS_XML"/> | |
416 | <set var="EXTRALIBS_HTML"/> | |
417 | <set var="EXTRALIBS_MEDIA"/> | |
418 | <set var="EXTRALIBS_GUI"/> | |
419 | <set var="EXTRALIBS_OPENGL"> | |
420 | <if cond="COMPILER=='wat' and TOOLKIT=='MSW'">opengl32.lib glu32.lib</if> | |
421 | <if cond="COMPILER in ['vc','evc']">opengl32.lib glu32.lib</if> | |
422 | <if cond="COMPILER=='gcc'">-lopengl32 -lglu32</if> | |
423 | </set> | |
424 | <set var="EXTRALIBS_SDL"/> | |
425 | <set var="EXTRALIBS_GNOMEPRINT"/> | |
426 | ||
427 | <set var="WITH_PLUGIN_SDL">0</set> | |
428 | ||
429 | <if cond="BUILDING_LIB=='1'"> | |
430 | <set-srcdir>../..</set-srcdir> | |
431 | </if> | |
432 | <set var="TOP_SRCDIR">$(SRCDIR)/$(WXTOPDIR)</set> | |
433 | </if> | |
434 | ||
435 | <if cond="FORMAT=='mingw'"> | |
436 | <option name="GCC_VERSION"> | |
437 | <values>3,2.95</values> | |
438 | <default-value>3</default-value> | |
439 | <description> | |
440 | Set the version of your Mingw installation here. | |
441 | "3" ...... this is for Mingw 2.0 or newer (comes with gcc3) | |
442 | "2.95" ... for Mingw 1.1 or any of the older versions | |
443 | </description> | |
444 | </option> | |
445 | <set var="GCCFLAGS"> | |
446 | <if cond="GCC_VERSION=='2.95'">-fvtable-thunks</if> | |
447 | </set> | |
448 | <set var="EXTRACFLAGS">$(GCCFLAGS) -DHAVE_W32API_H</set> | |
449 | </if> | |
450 | ||
451 | ||
452 | <!-- ================================================================== --> | |
453 | <!-- Project files - hardcode some defaults --> | |
454 | <!-- ================================================================== --> | |
455 | ||
456 | <if cond="FORMAT_SUPPORTS_CONDITIONS=='0'"> | |
457 | <set var="RUNTIME_LIBS">dynamic</set> | |
458 | <set var="OFFICIAL_BUILD">0</set> | |
459 | <set var="USE_AUI">1</set> | |
460 | <set var="USE_PROPGRID">1</set> | |
461 | <set var="USE_RICHTEXT">1</set> | |
462 | <set var="USE_STC">1</set> | |
463 | <set var="USE_HTML">1</set> | |
464 | <set var="USE_MEDIA">1</set> | |
465 | <set var="USE_XRC">1</set> | |
466 | <set var="USE_OPENGL">1</set> | |
467 | <set var="USE_QA">1</set> | |
468 | <set var="MONOLITHIC">0</set> | |
469 | <set var="USE_GUI">1</set> | |
470 | <set var="USE_EXCEPTIONS">1</set> | |
471 | <set var="USE_RTTI">1</set> | |
472 | <set var="USE_THREADS">1</set> | |
473 | <if cond="FORMAT!='autoconf'"><set var="USE_GDIPLUS">0</set></if> | |
474 | <set var="DEBUG_INFO">$(DEBUG_INFO_DEFAULT)</set> | |
475 | <set var="DEBUG_FLAG">default</set> | |
476 | <set var="MSLU">0</set> | |
477 | </if> | |
478 | ||
479 | ||
480 | <!-- DigitalMars make is braindead, it doesn't have conditional | |
481 | processing: --> | |
482 | <if cond="FORMAT=='dmars'"> | |
483 | <set var="RUNTIME_LIBS">static</set> | |
484 | <set var="BUILD">debug</set> | |
485 | <set var="SHARED">0</set> | |
486 | <set var="WXUNIV">0</set> | |
487 | <set var="UNICODE">1</set> | |
488 | <!-- Free version does not distribute OpenGL, | |
489 | in commercial distribution better use dmars_smake format --> | |
490 | <set var="USE_OPENGL">0</set> | |
491 | </if> | |
492 | ||
493 | <!-- No need for wxUniv on embedded devices (yet): --> | |
494 | <if cond="FORMAT=='msevc4prj' or (FORMAT=='msvs2005prj' and MSVS_PLATFORMS=='pocketpc2003') or (FORMAT=='msvs2008prj' and MSVS_PLATFORMS=='pocketpc2003')"> | |
495 | <set var="WXUNIV">0</set> | |
496 | <!-- Uploading debug reports from PDAs seems impractical --> | |
497 | <set var="USE_QA">0</set> | |
498 | <set var="MONOLITHIC">1</set> <!-- sic! --> | |
499 | <set var="USE_OPENGL">0</set> <!-- need OpenGL ES support first --> | |
500 | <!-- RTTI and exceptions need separate cccrtti.lib with eVC4 --> | |
501 | <if cond="FORMAT=='msevc4prj'"> | |
502 | <set var="USE_RTTI">0</set> | |
503 | <set var="USE_EXCEPTIONS">0</set> | |
504 | </if> | |
505 | </if> | |
506 | ||
507 | <!-- Need for wxUniv within wxMGL: --> | |
508 | <if cond="FORMAT!='autoconf' and TOOLKIT=='MGL'"> | |
509 | <set var="WXUNIV">1</set> | |
510 | <set var="USE_THREADS">0</set> | |
511 | <set var="RUNTIME_LIBS">static</set> | |
512 | </if> | |
513 | ||
514 | </makefile> |