]> git.saurik.com Git - wxWidgets.git/blame - build/bakefiles/common.bkl
crush compiler warnings and handle out of memory errors slightly better
[wxWidgets.git] / build / bakefiles / common.bkl
CommitLineData
ddf98968 1<?xml version="1.0" ?>
481290e2
VS
2<!-- $Id$ -->
3
ddf98968 4<makefile>
b6dc1b90 5
a63d2334 6 <requires version="0.1.4"/>
c0608865 7
ddf98968
VS
8 <!-- bakefile modules we need: -->
9 <using module="datafiles"/>
10
11 <!-- load python module with wxwindows helpers: -->
12 <using module="wxwin"/>
13
14 <include file="config.bkl"/>
c79241a2
VS
15
16 <include file="plugins_deps.bkl"/>
ddf98968
VS
17
18 <!-- ================================================================== -->
77ffb593 19 <!-- wxWidgets version numbers: -->
ddf98968
VS
20 <!-- ================================================================== -->
21
22 <set var="WXVER_MAJOR">$(wxwin.getVersionMajor())</set>
23 <set var="WXVER_MINOR">$(wxwin.getVersionMinor())</set>
24 <set var="WXVER_RELEASE">$(wxwin.getVersionRelease())</set>
ceec2216
RL
25 <set var="WX_RELEASE" make_var="1">
26 $(WXVER_MAJOR).$(WXVER_MINOR)
27 </set>
a1bf307a
RL
28 <set var="WX_RELEASE_NODOT" make_var="1">
29 $(WXVER_MAJOR)$(WXVER_MINOR)
30 </set>
31 <set var="WX_VERSION" make_var="1">
32 $(WX_RELEASE).$(WXVER_RELEASE)
33 </set>
34 <set var="WX_VERSION_NODOT" make_var="1">
35 $(WX_RELEASE_NODOT)$(WXVER_RELEASE)
36 </set>
ddf98968 37
bdc408c4
VS
38 <set var="WX_STABLE_BRANCH">$(int(int(WXVER_MINOR) % 2 == 0))</set>
39
40 <set var="WXSOVERSION">
41 <if cond="WX_STABLE_BRANCH=='1'">0.0.0</if>
42 <if cond="WX_STABLE_BRANCH=='0'">$(WXVER_RELEASE).0.0</if>
43 </set>
ddf98968 44 <set var="WXMACVERSION">$(WX_VERSION)</set>
bdc408c4 45 <set var="WXWIN32DLLVERSION">
a1bf307a
RL
46 <if cond="WX_STABLE_BRANCH=='1'">$(WX_RELEASE_NODOT)</if>
47 <if cond="WX_STABLE_BRANCH=='0'">$(WX_VERSION_NODOT)</if>
bdc408c4 48 </set>
ddf98968
VS
49
50
51 <!-- ================================================================== -->
52 <!-- Names of libraries and DLLs: -->
53 <!-- ================================================================== -->
54
55 <set var="PORTNAME">
56 <if cond="USE_GUI=='0'">base</if>
57 <if cond="USE_GUI=='1'">$(TOOLKIT_LOWERCASE)$(TOOLKIT_VERSION)</if>
58 </set>
64a2a46f
VS
59
60 <set var="WXBASEPORT">
61 <if cond="TOOLKIT=='MAC'">_carbon</if>
62 </set>
ddf98968
VS
63
64 <set var="COMPILERORGCC">
65 <if cond="isdefined('COMPILER')">$(COMPILER)</if>
66 <if cond="not isdefined('COMPILER')">gcc</if>
67 </set>
68 <set var="WXCOMPILER">
69 <if cond="PLATFORM_WIN32=='1'">_$(COMPILERORGCC)</if>
70 </set>
4fc5f509
VS
71
72 <set var="VENDORTAG">
cff5df9f
VS
73 <if cond="PLATFORM_WIN32=='1' and OFFICIAL_BUILD=='1'"></if>
74 <if cond="PLATFORM_WIN32=='1' and OFFICIAL_BUILD=='0'">_$(VENDOR)</if>
4fc5f509
VS
75 </set>
76
ddf98968 77 <set var="WXDEBUGFLAG">
4f6e1dac
VS
78 <if cond="BUILD=='debug' and DEBUG_FLAG=='default'">d</if>
79 <if cond="DEBUG_FLAG=='1'">d</if>
ddf98968
VS
80 </set>
81 <set var="WXUNICODEFLAG">
af594eca
VS
82 <!-- WinCE is Unicode-only platform: -->
83 <if cond="UNICODE=='1' and FORMAT!='msevc4prj'">u</if>
ddf98968
VS
84 </set>
85 <set var="WXNAMESUFFIX">
ceec2216 86 $(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)
ddf98968
VS
87 </set>
88
89 <set var="WXUNIVNAME">
90 <if cond="WXUNIV=='1'">univ</if>
91 </set>
92 <set var="WXUNIV_DEFINE">
93 <if cond="WXUNIV=='1'">__WXUNIVERSAL__</if>
94 </set>
95
cdc0282e 96 <if cond="FORMAT=='autoconf'">
64a2a46f 97 <set var="WXNAMEPREFIX">wx_base$(WXBASEPORT)</set>
cdc0282e 98 <set var="WXNAMEPREFIXGUI">wx_$(PORTNAME)$(WXUNIVNAME)</set>
a1bf307a 99 <set var="WXVERSIONTAG">-$(WX_RELEASE)</set>
cdc0282e
VS
100 </if>
101 <if cond="FORMAT!='autoconf'">
64a2a46f 102 <set var="WXNAMEPREFIX">
a1bf307a 103 wxbase$(WXBASEPORT)$(WX_RELEASE_NODOT)
64a2a46f
VS
104 </set>
105 <set var="WXNAMEPREFIXGUI">
a1bf307a 106 wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)</set>
cdc0282e
VS
107 <set var="WXVERSIONTAG"></set>
108 </if>
4fc5f509 109 <set var="WXDLLNAMEPREFIX">
64a2a46f 110 <if cond="PLATFORM_WIN32=='1'">
bdc408c4 111 wxbase$(WXBASEPORT)$(WXWIN32DLLVERSION)
64a2a46f 112 </if>
4fc5f509
VS
113 <if cond="PLATFORM_WIN32=='0'">$(WXNAMEPREFIX)</if>
114 </set>
115 <set var="WXDLLNAMEPREFIXGUI">
116 <if cond="PLATFORM_WIN32=='1'">
bdc408c4 117 wx$(PORTNAME)$(WXUNIVNAME)$(WXWIN32DLLVERSION)
4fc5f509
VS
118 </if>
119 <if cond="PLATFORM_WIN32=='0'">$(WXNAMEPREFIXGUI)</if>
120 </set>
121 <set var="WXDLLVERSIONTAG">
122 <if cond="PLATFORM_WIN32=='1'"></if>
123 <if cond="PLATFORM_WIN32=='0'">$(WXVERSIONTAG)</if>
124 </set>
ddf98968 125
ddf98968
VS
126
127 <!-- =============================================================== -->
128 <!-- Names of component libraries: -->
129 <!-- =============================================================== -->
130
e86e1522
VS
131 <set var="WXLIB_BASE">
132 <if cond="MONOLITHIC=='0'">$(mk.evalExpr(wxwin.mkLibName('base')))</if>
133 </set>
7c4728f6
VS
134 <set var="WXLIB_NET">
135 <if cond="MONOLITHIC=='0'">$(mk.evalExpr(wxwin.mkLibName('net')))</if>
136 </set>
ddf98968
VS
137 <set var="WXLIB_CORE">
138 <if cond="MONOLITHIC=='0'">$(mk.evalExpr(wxwin.mkLibName('core')))</if>
139 </set>
13cb46e0
VS
140 <set var="WXLIB_ADV">
141 <if cond="MONOLITHIC=='0'">$(mk.evalExpr(wxwin.mkLibName('adv')))</if>
142 </set>
fab9850d 143 <set var="WXLIB_HTML">
e86e1522 144 <if cond="MONOLITHIC=='0'">$(mk.evalExpr(wxwin.mkLibName('html')))</if>
fab9850d 145 </set>
a69544bf
VS
146 <set var="WXLIB_XML">
147 <if cond="MONOLITHIC=='0'">$(mk.evalExpr(wxwin.mkLibName('xml')))</if>
148 </set>
a62d8849
WS
149 <set var="WXLIB_XRC">
150 <if cond="MONOLITHIC=='0'">$(mk.evalExpr(wxwin.mkLibName('xrc')))</if>
151 </set>
bb41dcbe 152 <set var="WXLIB_ODBC">
395a1c56
VS
153 <if cond="MONOLITHIC=='0' and USE_ODBC=='1'">
154 $(mk.evalExpr(wxwin.mkLibName('odbc')))
155 </if>
bb41dcbe 156 </set>
45293562
VS
157 <set var="WXLIB_DBGRID">
158 <if cond="MONOLITHIC=='0'">$(mk.evalExpr(wxwin.mkLibName('dbgrid')))</if>
159 </set>
ddf98968
VS
160
161 <set var="WXLIB_MONO">
162 <if cond="MONOLITHIC=='1'">$(mk.evalExpr(wxwin.mkLibName('mono')))</if>
163 </set>
164
165
166 <!-- =============================================================== -->
cff5df9f 167 <!-- Where to store built libraries and objects: -->
ddf98968 168 <!-- =============================================================== -->
4843dc4c 169
af594eca
VS
170 <set var="DIR_SUFFIX_CPU">
171 <if cond="FORMAT=='msevc4prj'">_$(CPU)</if>
172 </set>
cff5df9f
VS
173
174 <if cond="FORMAT!='autoconf'">
175 <set var="WXDLLFLAG">
176 <if cond="SHARED=='1'">dll</if>
177 </set>
178 <set var="CFG_NAME_PART">
179 $(PORTNAME)$(WXUNIVNAME)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WXDLLFLAG)$(CFG)
180 </set>
328f5196 181 <set var="OBJS" make_var="1">
af594eca
VS
182 <if cond="FORMAT!='cbuilderx'">
183 $(COMPILER)_$(CFG_NAME_PART)$(DIR_SUFFIX_CPU)
184 </if>
328f5196
VS
185 <!-- FIXME: waiting for removal after CBX has better ../ dirs
186 support -->
187 <if cond="FORMAT=='cbuilderx'">build_cbx_$(CFG_NAME_PART)</if>
188 </set>
189
cff5df9f
VS
190 <set var="BUILDDIR">$(OBJS)</set>
191 </if>
cff5df9f 192
390c0cfb 193 <set var="LIBDIRNAME" make_var="1">
481290e2 194 <if cond="FORMAT=='autoconf'">$(top_builddir)lib</if>
ee929bcf 195 <if cond="FORMAT!='autoconf' and SHARED=='0'">
af594eca 196 $(nativePaths(TOP_SRCDIR))lib$(DIRSEP)$(COMPILER)$(DIR_SUFFIX_CPU)_lib$(CFG)
ee929bcf
VS
197 </if>
198 <if cond="FORMAT!='autoconf' and SHARED=='1'">
af594eca 199 $(nativePaths(TOP_SRCDIR))lib$(DIRSEP)$(COMPILER)$(DIR_SUFFIX_CPU)_dll$(CFG)
cff5df9f 200 </if>
ddf98968 201 </set>
ee929bcf
VS
202
203 <if cond="FORMAT!='autoconf'">
204 <set var="SETUPHDIR" make_var="1">
205 $(LIBDIRNAME)\$(PORTNAME)$(WXUNIVNAME)$(WXUNICODEFLAG)$(WXDEBUGFLAG)
206 </set>
207 </if>
208
cff5df9f 209
4843dc4c
VS
210
211 <!-- =============================================================== -->
212 <!-- Templates for libs: -->
213 <!-- =============================================================== -->
cdc0282e 214
4f6e1dac
VS
215 <set var="DEBUGINFO">
216 <if cond="BUILD=='debug' and DEBUG_INFO=='default'">on</if>
217 <if cond="DEBUG_INFO=='1'">on</if>
218 <if cond="BUILD=='release' and DEBUG_INFO=='default'">off</if>
219 <if cond="DEBUG_INFO=='0'">off</if>
220 </set>
221 <set var="DEBUGRUNTIME">
222 <if cond="DEBUG_RUNTIME_LIBS=='default'">$(DEBUGINFO)</if>
223 <if cond="DEBUG_RUNTIME_LIBS=='0'">off</if>
224 <if cond="DEBUG_RUNTIME_LIBS=='1'">on</if>
cdc0282e
VS
225 </set>
226 <set var="OPTIMIZEFLAG">
546a7e42
VS
227 <if cond="BUILD=='debug'">off</if>
228 <if cond="BUILD=='release'">speed</if>
cdc0282e 229 </set>
9833a21a
VS
230 <set var="EXCEPTIONSFLAG">
231 <if cond="USE_EXCEPTIONS=='1'">on</if>
232 <if cond="USE_EXCEPTIONS=='0'">off</if>
233 </set>
15b44c69
VS
234
235 <set var="DEBUG_DEFINE">
4f6e1dac
VS
236 <if cond="FORMAT!='autoconf' and BUILD=='debug' and DEBUG_FLAG=='default'">__WXDEBUG__</if>
237 <if cond="FORMAT!='autoconf' and DEBUG_FLAG=='1'">__WXDEBUG__</if>
15b44c69 238 </set>
4435bd42
MB
239 <!-- does not cover all cases, but better than nothing -->
240 <set var="NO_VC_CRTDBG">
241 <if cond="FORMAT=='msvc' and BUILD=='debug' and DEBUG_RUNTIME_LIBS=='0'">__NO_VC_CRTDBG__</if>
242 <if cond="FORMAT=='msvc' and BUILD=='release' and DEBUG_FLAG=='1'">__NO_VC_CRTDBG__</if>
243 </set>
15b44c69 244 <set var="UNICODE_DEFINE">
ed4ccecd 245 <if cond="FORMAT!='autoconf' and UNICODE=='1'">_UNICODE</if>
15b44c69 246 </set>
416f5bc8
VS
247
248 <set var="UNICOWS_LIB">
249 <if cond="MSLU=='1'">unicows</if>
250 </set>
5e3746dc 251
149cc218 252 <template id="common_settings">
4f6e1dac
VS
253 <debug-info>$(DEBUGINFO)</debug-info>
254 <debug-runtime-libs>$(DEBUGRUNTIME)</debug-runtime-libs>
5e3746dc
VS
255 <optimize>$(OPTIMIZEFLAG)</optimize>
256 <threading>multi</threading>
4b44ea2b 257 <runtime-libs>$(RUNTIME_LIBS)</runtime-libs>
9833a21a
VS
258 <cxx-rtti>$(EXCEPTIONSFLAG)</cxx-rtti>
259 <cxx-exceptions>$(EXCEPTIONSFLAG)</cxx-exceptions>
5e3746dc
VS
260 <if cond="FORMAT!='autoconf'">
261 <cppflags>$(EXTRACFLAGS)</cppflags>
262 </if>
4435bd42 263 <define>$(NO_VC_CRTDBG)</define>
5e3746dc 264 </template>
4843dc4c
VS
265
266 <template id="anylib">
4843dc4c
VS
267 <dirname>$(LIBDIRNAME)</dirname>
268 <install-to>$(LIBDIR)</install-to>
269 </template>
270
149cc218 271 <template id="3rdparty_lib" template="common_settings,anylib">
a1bf307a
RL
272 <if cond="FORMAT=='autoconf'">
273 <libname>$(id)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX)</libname>
274 </if>
275 <if cond="FORMAT!='autoconf'">
9c2d002b 276 <libname>$(id)$(WXDEBUGFLAG)$(HOST_SUFFIX)</libname>
a1bf307a 277 </if>
52a5a009
VS
278 <!--
279 we want to install 3rd party libs system-wide only with static
77ffb593 280 version of wxWidgets; otherwise they are embedded in shared libs:
52a5a009
VS
281 -->
282 <install-if>SHARED=='0'</install-if>
af594eca 283 <pic>$(substituteFromDict(SHARED, {'0':'off', '1':'on'}))</pic>
82cb0280 284 </template>
cb9548d9
VS
285
286
287 <!-- deal with the need to copy setup.h here: -->
82cb0280 288
af594eca
VS
289 <set var="IS_MSVC_PRJ">$(FORMAT in ['msvc6prj','msevc4prj'])</set>
290
cb9548d9 291 <define-tag name="msvc-headers" rules="dll,lib">
af594eca 292 <if cond="IS_MSVC_PRJ">
cb9548d9
VS
293 <msvc-project-files>
294 $(addPrefixToList('include\', wxwin.headersOnly(value)))
295 </msvc-project-files>
296 </if>
297 </define-tag>
298
299 <define-tag name="msvc-copy-setup-h" rules="dll,lib">
af594eca
VS
300 <if cond="FORMAT=='msevc4prj'">
301 <msvc-headers>wx/msw/wince/setup.h</msvc-headers>
302 <set var="vc_setup_h">wince\setup.h</set>
303 <set var="vc_setup_h_rule">wince_setup_h</set>
304 </if>
305 <if cond="FORMAT!='msevc4prj'">
cb9548d9 306 <msvc-headers>wx/msw/setup.h</msvc-headers>
af594eca
VS
307 <set var="vc_setup_h">setup.h</set>
308 <set var="vc_setup_h_rule">setup_h</set>
309 </if>
310 <if cond="IS_MSVC_PRJ">
311 <set var="_custom_build_files" append="1">
312 include\wx\msw\$(vc_setup_h)
cb9548d9 313 </set>
af594eca 314 <set var="_custom_build_include_wx_msw_$(vc_setup_h_rule)">
cb9548d9 315Creating $(SETUPHDIR)\wx\setup.h
af594eca 316InputPath=..\include\wx\msw\$(vc_setup_h)
cb9548d9
VS
317
318"$(SETUPHDIR)\wx\setup.h" : $(DOLLAR)(SOURCE) "$(DOLLAR)(INTDIR)" "$(DOLLAR)(OUTDIR)"
319$(TAB)copy "$(DOLLAR)(InputPath)" $(SETUPHDIR)\wx\setup.h
320 </set>
321 </if>
322 </define-tag>
323
324 <template id="msvc_setup_h">
325 <msvc-copy-setup-h/>
326 </template>
ddf98968
VS
327
328 <!-- =============================================================== -->
329 <!-- 3rd party libs: -->
330 <!-- =============================================================== -->
331
332 <!-- 3rd party libraries: -->
333 <include file="regex.bkl"/>
334 <include file="zlib.bkl"/>
335 <include file="png.bkl"/>
336 <include file="jpeg.bkl"/>
337 <include file="tiff.bkl"/>
338 <include file="odbc.bkl"/>
a69544bf 339 <include file="expat.bkl"/>
ddf98968
VS
340
341
342 <!-- =============================================================== -->
77ffb593 343 <!-- Templates for wxWidgets libs: -->
ddf98968 344 <!-- =============================================================== -->
cdc0282e 345
149cc218 346 <template id="wx" template="common_settings">
ddf98968
VS
347 <set var="wxid">$(wxwin.mk_wxid(id))</set>
348 <define>__WX$(TOOLKIT)__</define>
349 <define>$(WXUNIV_DEFINE)</define>
15b44c69
VS
350 <define>$(DEBUG_DEFINE)</define>
351 <define>$(UNICODE_DEFINE)</define>
85ebb95c
VS
352 <!-- this include is added by configure, we need to put other
353 includes before it: -->
354 <include cond="FORMAT!='autoconf'">$(TOP_SRCDIR)include</include>
cdc0282e 355 <lib-path>$(LIBDIRNAME)</lib-path>
ee929bcf 356 <include cond="FORMAT!='autoconf'">$(SETUPHDIR)</include>
432afc17 357 <warnings>max</warnings>
36902029 358 <cppflags-watcom>-wcd=549</cppflags-watcom>
ddf98968
VS
359 </template>
360
c74dc163 361 <!-- for both GUI and wxBase libs/samples: -->
e83a52a2 362 <template id="wx_append_base_nomono">
ddf98968 363 <!-- link against builtin 3rd party libs, if needed: -->
4843dc4c 364 <sys-lib>$(LIB_TIFF)</sys-lib>
ddf98968
VS
365 <sys-lib>$(LIB_JPEG)</sys-lib>
366 <sys-lib>$(LIB_PNG)</sys-lib>
367 <sys-lib>$(LIB_ZLIB)</sys-lib>
ddf98968
VS
368 <sys-lib>$(LIB_ODBC)</sys-lib>
369 <sys-lib>$(LIB_REGEX)</sys-lib>
a69544bf 370 <sys-lib>$(LIB_EXPAT)</sys-lib>
15b44c69
VS
371
372 <ldlibs>$(EXTRALIBS)</ldlibs>
373
374 <!-- system libraries on windows: -->
375 <if cond="FORMAT!='autoconf'">
416f5bc8 376 <sys-lib>$(UNICOWS_LIB)</sys-lib>
328f5196 377 <if cond="FORMAT=='borland'">
cb8bbc13
VS
378 <sys-lib>ole2w32</sys-lib>
379 </if>
f9c4805a
VS
380 <if cond="FORMAT=='msevc4prj'">
381 <sys-lib>ole32</sys-lib>
382 <sys-lib>oleaut32</sys-lib>
383 <sys-lib>uuid</sys-lib>
384 <sys-lib>commctrl</sys-lib>
f9c4805a
VS
385 <sys-lib>winsock</sys-lib>
386 <sys-lib>wininet</sys-lib>
387 </if>
388 <if cond="FORMAT!='borland' and FORMAT!='msevc4prj'">
cb8bbc13
VS
389 <sys-lib>kernel32</sys-lib>
390 <sys-lib>user32</sys-lib>
391 <sys-lib>gdi32</sys-lib>
392 <sys-lib>comdlg32</sys-lib>
393 <sys-lib>winspool</sys-lib>
394 <sys-lib>winmm</sys-lib>
395 <sys-lib>shell32</sys-lib>
cb8bbc13 396 <sys-lib>comctl32</sys-lib>
cb8bbc13
VS
397 <sys-lib>ole32</sys-lib>
398 <sys-lib>oleaut32</sys-lib>
399 <sys-lib>uuid</sys-lib>
400 <sys-lib>rpcrt4</sys-lib>
401 <sys-lib>advapi32</sys-lib>
402 <sys-lib>wsock32</sys-lib>
15b44c69 403 </if>
57670219 404 <if cond="FORMAT=='msvc' or FORMAT=='msvc6prj' or FORMAT=='borland'">
3682ea7d
VS
405 <sys-lib>oleacc</sys-lib>
406 </if>
f9c4805a
VS
407 <if cond="FORMAT!='msevc4prj'">
408 <sys-lib>odbc32</sys-lib>
409 </if>
57670219 410 </if>
ddf98968
VS
411 </template>
412
82ca3afe 413
c74dc163 414 <!-- for GUI libs/samples: -->
e83a52a2 415 <template id="wx_append_nomono" template="wx_append_base_nomono">
c74dc163
VS
416 <ldlibs>$(EXTRALIBS_GUI)</ldlibs>
417 </template>
418
e83a52a2
VS
419
420 <template id="wx_append_base" template_append="wx_append_base_nomono">
421 <!-- Always link against the wxWin library in monolithic build: -->
422 <sys-lib>$(WXLIB_MONO)</sys-lib>
423 </template>
424 <template id="wx_append" template_append="wx_append_nomono">
425 <!-- Always link against the wxWin library in monolithic build: -->
426 <sys-lib>$(WXLIB_MONO)</sys-lib>
427 </template>
428
429
0469579d
VS
430 <set var="WX_DISABLE_PRECOMP_HEADERS" overwrite="0">0</set>
431
4843dc4c 432 <template id="wx_lib_b" template="wx,anylib">
ddf98968 433 <set var="WXLIBNAME">$(wxwin.mkLibName(wxid))</set>
ddf98968 434 <libname>$(WXLIBNAME)</libname>
cb8bbc13 435
0469579d 436 <if cond="WX_DISABLE_PRECOMP_HEADERS=='0'">
a92d711e 437 <if cond="FORMAT!='autoconf' and TOOLKIT=='MSW'">
0469579d
VS
438 <sources>$(WXTOPDIR)src/msw/dummy.cpp</sources>
439 <precomp-headers-gen>
440 $(WXTOPDIR)src/msw/dummy.cpp
441 </precomp-headers-gen>
442 </if>
443 <precomp-headers-header>wx/wxprec.h</precomp-headers-header>
444 <precomp-headers>on</precomp-headers>
445 <precomp-headers-file>wxprec_$(id)</precomp-headers-file>
3fe70739
VS
446 <precomp-headers-exclude>
447 src/common/unzip.c
448 src/common/extended.c
ebee3cd0
VS
449 src/msw/gsocket.cpp
450 src/msw/gsockmsw.cpp
3fe70739 451 </precomp-headers-exclude>
cb8bbc13 452 </if>
82ca3afe 453
3a811096 454 <if cond="IS_MSVC_PRJ=='1' and BUILDING_LIB=='1'">
82ca3afe
VS
455 <msvc-file-group>Common Sources:src/common/*</msvc-file-group>
456 <msvc-file-group>MSW Sources:src/msw/*</msvc-file-group>
457 <msvc-file-group>Generic Sources:src/generic/*</msvc-file-group>
458 <msvc-file-group>wxUniv Sources:src/univ/*</msvc-file-group>
459 <msvc-file-group>wxHTML Sources:src/html/*</msvc-file-group>
460 <msvc-file-group>Setup Headers:*/setup.h</msvc-file-group>
82ca3afe
VS
461 <msvc-file-group>MSW Headers:*wx/msw/*.h</msvc-file-group>
462 <msvc-file-group>Generic Headers:*wx/generic/*.h</msvc-file-group>
463 <msvc-file-group>wxUniv Headers:*wx/univ/*.h</msvc-file-group>
464 <msvc-file-group>wxHTML Headers:*wx/html/*.h</msvc-file-group>
cbba971f 465 <msvc-file-group>Common Headers:*wx/*.h</msvc-file-group>
82ca3afe 466 </if>
ddf98968 467 </template>
cb8bbc13 468
fab9850d 469 <template id="wx_dll_b" template="wx_lib_b">
ddf98968
VS
470 <set var="WXDLLNAME">$(wxwin.mkDllName(wxid))</set>
471 <dllname>$(WXDLLNAME)</dllname>
472 <version>$(WX_VERSION)</version>
473 <so_version>$(WXSOVERSION)</so_version>
474 <mac_version>$(WXMACVERSION)</mac_version>
475 </template>
c0608865 476
5c802b3d 477 <template id="wx_3rdparty_dependencies">
3fe70739
VS
478 <depends>wxtiff</depends>
479 <depends>wxjpeg</depends>
480 <depends>wxpng</depends>
390c0cfb 481 <depends>wxexpat</depends>
c74dc163 482 <depends>wxzlib</depends>
3fe70739 483 <depends cond="FORMAT=='autoconf'">wxodbc</depends>
c74dc163
VS
484 <depends>wxregex</depends>
485 </template>
ee929bcf
VS
486
487 <template id="wx_3rdparty_includes">
488 <include>$(INC_TIFF)</include>
489 <include>$(INC_JPEG)</include>
490 <include>$(INC_PNG)</include>
491 <include>$(INC_ZLIB)</include>
492 <include>$(INC_ODBC)</include>
493 <include>$(INC_REGEX)</include>
494 <include>$(INC_EXPAT)</include>
495 </template>
c0608865 496
9698d244
VS
497 <template id="wx_lib"
498 template="wx_lib_b,wx_3rdparty_includes,msvc_setup_h"/>
499 <template id="wx_base_lib"
500 template="wx_lib_b,wx_3rdparty_includes,msvc_setup_h">
15d93f1e
VS
501 <define>wxUSE_GUI=0</define>
502 </template>
503
ee929bcf
VS
504 <template id="wx_dll"
505 template="wx_dll_b,wx_3rdparty_dependencies,wx_3rdparty_includes"
9698d244 506 template_append="msvc_setup_h,wx_append_nomono"/>
ee929bcf
VS
507 <template id="wx_base_dll"
508 template="wx_dll_b,wx_3rdparty_dependencies,wx_3rdparty_includes"
9698d244 509 template_append="msvc_setup_h,wx_append_base_nomono">
15d93f1e
VS
510 <define>wxUSE_GUI=0</define>
511 </template>
ae4ae157
VS
512
513 <!-- =============================================================== -->
77ffb593 514 <!-- Templates for building wxWidgets plugins: -->
ae4ae157
VS
515 <!-- =============================================================== -->
516
ae4ae157 517 <if cond="WX_STABLE_BRANCH=='1'">
c79241a2 518 <set var="PLUGIN_VERSION0">
a1bf307a
RL
519 <if cond="PLATFORM_UNIX=='1'">$(WX_RELEASE)</if>
520 <if cond="PLATFORM_UNIX=='0'">$(WX_RELEASE_NODOT)</if>
ae4ae157
VS
521 </set>
522 </if>
523 <if cond="WX_STABLE_BRANCH=='0'">
c79241a2 524 <set var="PLUGIN_VERSION0">
a1bf307a
RL
525 <if cond="PLATFORM_UNIX=='1'">$(WX_VERSION)</if>
526 <if cond="PLATFORM_UNIX=='0'">$(WX_VERSION_NODOT)</if>
ae4ae157
VS
527 </set>
528 </if>
c79241a2
VS
529 <set var="PLUGVERDELIM">
530 <if cond="PLATFORM_UNIX=='1'">-</if>
531 <if cond="PLATFORM_UNIX=='0'"></if>
532 </set>
533 <set var="PLUGIN_VERSION">$(PLUGVERDELIM)$(PLUGIN_VERSION0)</set>
534
535 <set var="PLUGINSUFFIX">
536 <if cond="UNICODE=='0' and BUILD=='release'"></if>
314a6446
VS
537 <if cond="UNICODE=='0' and BUILD=='debug'">d</if>
538 <if cond="UNICODE=='1' and BUILD=='release'">u</if>
539 <if cond="UNICODE=='1' and BUILD=='debug'">ud</if>
c79241a2
VS
540 </set>
541
542 <set var="PLUGINS_INST_DIR" make_var="1">
543 $(LIBDIR)/wx/$(PLUGIN_VERSION0)
544 </set>
ae4ae157
VS
545
546 <define-rule name="wx-base-plugin" extends="module">
547 <template>
548 <dllname>
c79241a2 549 $(id)$(PLUGINSUFFIX)$(PLUGIN_VERSION)$(WXCOMPILER)
ae4ae157
VS
550 </dllname>
551 <define>WXUSINGDLL</define>
15d93f1e 552 <define>wxUSE_GUI=0</define>
c79241a2 553 <install-to>$(PLUGINS_INST_DIR)</install-to>
ae4ae157
VS
554 </template>
555 </define-rule>
556
557 <define-rule name="wx-gui-plugin" extends="module">
558 <template template="wx">
559 <dllname>
c79241a2 560 $(id)_$(PORTNAME)$(WXUNIVNAME)$(PLUGINSUFFIX)$(PLUGIN_VERSION)$(WXCOMPILER)
ae4ae157
VS
561 </dllname>
562 <define>WXUSINGDLL</define>
c79241a2 563 <install-to>$(PLUGINS_INST_DIR)</install-to>
ae4ae157
VS
564 </template>
565 </define-rule>
5c802b3d 566
ddf98968 567 <!-- =============================================================== -->
77ffb593 568 <!-- Support for wxWidgets samples and contrib: -->
ddf98968
VS
569 <!-- =============================================================== -->
570
571 <!-- Link against one wxWin library. Value must be literal! -->
485a205e 572 <define-tag name="wx-lib" rules="exe,dll,module">
ddf98968 573 <sys-lib>$(wxwin.libToLink(value))</sys-lib>
22cef566 574 <ldlibs>$(wxwin.extraLdflags(value))</ldlibs>
3a811096 575 <if cond="IS_MSVC_PRJ=='1' and MONOLITHIC=='0'">
dce0742b 576 <depends-on-dsp>$(wxwin.makeDspDependency(value))</depends-on-dsp>
7bd54b68 577 </if>
ddf98968
VS
578 </define-tag>
579
4bae0a94
VS
580
581 <!-- A hack to keep autoconf happy (we pass CPPFLAGS that contain
582 {top_srcdir} from configure, poor bakefile can't know that
583 and won't output top_srcdir = @top_srcdir@ line): -->
584 <set var="VARS_DONT_ELIMINATE" append="1">top_srcdir</set>
585
586
ddf98968 587</makefile>