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