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