<makefile>
- <requires version="0.1.7"/>
+ <requires version="0.2.3"/>
<!-- bakefile modules we need: -->
<using module="datafiles"/>
<!-- FIXME: PalmOS is another candidate to bakefiles -->
<set var="PLATFORM_PALMOS">0</set>
+
<include file="config.bkl"/>
<include file="plugins_deps.bkl"/>
<if cond="MONOLITHIC=='0'">$(mk.evalExpr(wxwin.mkLibName('adv')))</if>
</set>
<set var="WXLIB_MEDIA">
- <if cond="MONOLITHIC=='0'">$(mk.evalExpr(wxwin.mkLibName('media')))</if>
+ <if cond="MONOLITHIC=='0' and USE_MEDIA=='1'">$(mk.evalExpr(wxwin.mkLibName('media')))</if>
</set>
<set var="WXLIB_HTML">
<if cond="MONOLITHIC=='0'">$(mk.evalExpr(wxwin.mkLibName('html')))</if>
<set var="WXLIB_XRC">
<if cond="MONOLITHIC=='0'">$(mk.evalExpr(wxwin.mkLibName('xrc')))</if>
</set>
- <set var="WXLIB_ODBC">
- <if cond="MONOLITHIC=='0' and USE_ODBC=='1'">
- $(mk.evalExpr(wxwin.mkLibName('odbc')))
- </if>
+ <set var="WXLIB_AUI">
+ <if cond="MONOLITHIC=='0'">$(mk.evalExpr(wxwin.mkLibName('aui')))</if>
+ </set>
+ <set var="WXLIB_PROPGRID">
+ <if cond="MONOLITHIC=='0'">$(mk.evalExpr(wxwin.mkLibName('propgrid')))</if>
</set>
- <set var="WXLIB_DBGRID">
- <if cond="MONOLITHIC=='0'">$(mk.evalExpr(wxwin.mkLibName('dbgrid')))</if>
+ <set var="WXLIB_RICHTEXT">
+ <if cond="MONOLITHIC=='0'">$(mk.evalExpr(wxwin.mkLibName('richtext')))</if>
+ </set>
+ <set var="WXLIB_STC">
+ <if cond="MONOLITHIC=='0'">$(mk.evalExpr(wxwin.mkLibName('stc')))</if>
</set>
<set var="WXLIB_MONO">
<set var="DIR_SUFFIX_CPU">
<if cond="FORMAT=='msevc4prj'">_$(CPU)</if>
+ <if cond="TARGET_CPU=='amd64'">_amd64</if>
+ <if cond="TARGET_CPU=='AMD64'">_amd64</if>
+ <if cond="TARGET_CPU=='ia64'">_ia64</if>
+ <if cond="TARGET_CPU=='IA64'">_ia64</if>
</set>
<if cond="FORMAT!='autoconf'">
<set var="CFG_NAME_PART">
$(PORTNAME)$(WXUNIVNAME)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WXDLLFLAG)$(CFG)
</set>
+
+ <!-- NB: this is make_var so that it can be overriden on command line
+ like this: nmake -f makefile.vc COMPILER_PREFIX=vc6 -->
+ <set var="COMPILER_PREFIX" make_var="1">$(COMPILER)</set>
+
<set var="OBJS" make_var="1">
- <if cond="FORMAT!='cbuilderx'">
- $(COMPILER)_$(CFG_NAME_PART)$(DIR_SUFFIX_CPU)
- </if>
- <!-- FIXME: waiting for removal after CBX has better ../ dirs
- support -->
- <if cond="FORMAT=='cbuilderx'">build_cbx_$(CFG_NAME_PART)</if>
+ $(COMPILER_PREFIX)_$(CFG_NAME_PART)$(DIR_SUFFIX_CPU)
</set>
<set var="BUILDDIR">$(OBJS)</set>
</if>
<set var="LIBTYPE_SUFFIX" make_var="1">
- <if cond="FORMAT!='autoconf' and SHARED=='0'">lib</if>
- <if cond="FORMAT!='autoconf' and SHARED=='1'">dll</if>
+ <if cond="FORMAT!='autoconf' and SHARED=='0' and PLATFORM_WIN32=='1'">lib</if>
+ <if cond="FORMAT!='autoconf' and SHARED=='1' and PLATFORM_WIN32=='1'">dll</if>
+ <if cond="FORMAT=='watcom' and SHARED=='0' and PLATFORM_WIN32=='0'">$(TOOLKIT_LOWERCASE)_lib</if>
+ <if cond="FORMAT=='watcom' and SHARED=='1' and PLATFORM_WIN32=='0'">$(TOOLKIT_LOWERCASE)_dll</if>
</set>
<set var="LIBDIRNAME" make_var="1">
- <if cond="FORMAT=='autoconf'">$(top_builddir)lib</if>
+ <if cond="FORMAT=='autoconf'">$(wx_top_builddir)/lib</if>
<if cond="FORMAT!='autoconf'">
- $(nativePaths(TOP_SRCDIR))lib$(DIRSEP)$(COMPILER)$(DIR_SUFFIX_CPU)_$(LIBTYPE_SUFFIX)$(CFG)
+ $(nativePaths(TOP_SRCDIR))lib$(DIRSEP)$(COMPILER_PREFIX)$(DIR_SUFFIX_CPU)_$(LIBTYPE_SUFFIX)$(CFG)
</if>
</set>
</set>
<set var="UNICODE_DEFINE">
<if cond="FORMAT!='autoconf' and UNICODE=='1'">_UNICODE</if>
+ <if cond="FORMAT!='autoconf' and UNICODE=='0'">wxUSE_UNICODE=0</if>
+ </set>
+ <set var="MSLU_DEFINE">
+ <if cond="FORMAT!='autoconf' and MSLU=='1'">wxUSE_UNICODE_MSLU=1</if>
</set>
<!-- fill for the specific case of the format/compiler -->
<if cond="MSLU=='1'">unicows</if>
</set>
+ <if cond="FORMAT!='autoconf'">
+ <set var="GDIPLUS_LIB">
+ <if cond="USE_GDIPLUS=='1'">gdiplus</if>
+ </set>
+ <set var="GFXCTX_DEFINE">
+ <if cond="USE_GDIPLUS=='1'">wxUSE_GRAPHICS_CONTEXT=1</if>
+ </set>
+ </if>
+
+ <set var="LINK_TARGET_CPU">
+ <if cond="TARGET_CPU=='amd64'">/MACHINE:AMD64</if>
+ <if cond="TARGET_CPU=='AMD64'">/MACHINE:AMD64</if>
+ <if cond="TARGET_CPU=='ia64'">/MACHINE:IA64</if>
+ <if cond="TARGET_CPU=='IA64'">/MACHINE:IA64</if>
+ </set>
+
<template id="common_settings">
<debug-info>$(DEBUGINFO)</debug-info>
<debug-runtime-libs>$(DEBUGRUNTIME)</debug-runtime-libs>
</if>
<define>$(NO_VC_CRTDBG)</define>
<define>$(WIN32_WINNT)</define>
- <if cond="FORMAT=='msevc4prj'">
- <!-- hack to make eVC4 default project still compatible with eVC3 environment -->
- <set var="_ldlibs">$(_ldlibs.replace('ccrtrtti.lib', ''))</set>
+ <if cond="FORMAT=='msvc'">
+ <ldflags>$(LINK_TARGET_CPU)</ldflags>
</if>
+ <include cond="FORMAT=='msevc4prj'">$(TOP_SRCDIR)build/wince/missing</include>
</template>
<template id="anylib">
<!-- deal with the need to copy setup.h here: -->
- <set var="IS_MSVC_PRJ">$(FORMAT in ['msvc6prj','msevc4prj'])</set>
-
<define-tag name="msvc-headers" rules="dll,lib">
<if cond="IS_MSVC_PRJ">
- <!-- FIXME: remove this once we require >=bkl-0.1.9 -->
- <if cond="BAKEFILE_VERSION in ['0.1.7', '0.1.8']">
- <msvc-project-files>
- $(addPrefixToList('include\', wxwin.headersOnly(value)))
- </msvc-project-files>
- </if>
- <if cond="BAKEFILE_VERSION not in ['0.1.7', '0.1.8']">
- <msvc-project-files>
- $(addPrefixToList('include\\', wxwin.headersOnly(value)))
- </msvc-project-files>
- </if>
+ <msvc-project-files>
+ $(addPrefixToList('include\\', wxwin.headersOnly(value)))
+ </msvc-project-files>
</if>
</define-tag>
- <define-tag name="msvc-copy-setup-h" rules="dll,lib">
- <if cond="FORMAT=='msevc4prj'">
- <msvc-headers>wx/msw/wince/setup.h</msvc-headers>
- <set var="vc_setup_h">wince\setup.h</set>
- <set var="vc_setup_h_rule">wince_setup_h</set>
- </if>
- <if cond="FORMAT!='msevc4prj'">
- <msvc-headers>wx/msw/setup.h</msvc-headers>
- <set var="vc_setup_h">setup.h</set>
- <set var="vc_setup_h_rule">setup_h</set>
- </if>
+ <set var="msvc_copy_setup_h_script">
<if cond="IS_MSVC_PRJ">
- <set var="_custom_build_files" append="1">
- include\wx\msw\$(vc_setup_h)
- </set>
- <set var="_custom_build_include_wx_msw_$(vc_setup_h_rule)">
Creating $(SETUPHDIR)\wx\setup.h
-InputPath=..\include\wx\msw\$(vc_setup_h)
+InputPath=..\..\include\wx\%s
"$(SETUPHDIR)\wx\setup.h" : $(DOLLAR)(SOURCE) "$(DOLLAR)(INTDIR)" "$(DOLLAR)(OUTDIR)"
$(TAB)copy "$(DOLLAR)(InputPath)" $(SETUPHDIR)\wx\setup.h
+ </if>
+ </set>
+
+ <define-tag name="msvc-headers-setup-h" rules="dll,lib">
+ <if cond="IS_MSVC_PRJ">
+ <msvc-headers>
+ $(addPrefixToList('wx/', value))
+ </msvc-headers>
+ <set var="_custom_build_files" append="1">
+ $(nativePaths(addPrefixToList('include/wx/', value)))
+ </set>
+ </if>
+ </define-tag>
+
+ <define-tag name="msvc-copy-setup-h" rules="dll,lib">
+ <if cond="IS_MSVC_PRJ">
+ <if cond="FORMAT=='msevc4prj'">
+ <msvc-headers-setup-h>
+ msw/wince/setup.h
+ </msvc-headers-setup-h>
+ <set var="_custom_build_include_wx_msw_wince_setup_h">
+ $(msvc_copy_setup_h_script % 'msw\wince\setup.h')
+ </set>
+ </if>
+ <if cond="FORMAT!='msevc4prj'">
+ <msvc-headers-setup-h>
+ msw/setup.h
+ univ/setup.h
+ </msvc-headers-setup-h>
+ <set var="_custom_build_include_wx_msw_setup_h">
+ <if cond="WXUNIV=='0'">
+ $(msvc_copy_setup_h_script % 'msw\setup.h')
+ </if>
+ </set>
+ <set var="_custom_build_include_wx_univ_setup_h">
+ <if cond="WXUNIV=='1'">
+ $(msvc_copy_setup_h_script % 'univ\setup.h')
+ </if>
+ </set>
+ </if>
+ </if>
+ </define-tag>
+
+ <define-tag name="msvc-create-rcdefs-h" rules="dll,lib">
+ <if cond="IS_MSVC_PRJ">
+ <msvc-headers-setup-h>
+ msw/genrcdefs.h
+ </msvc-headers-setup-h>
+ <!-- FIXME: we need another way to get the compiler name -->
+ <set var="VC_COMPILER">
+ <if cond="FORMAT=='msevc4prj'">$(_COMPILER)</if>
+ <if cond="FORMAT!='msevc4prj'">cl</if>
+ </set>
+ <set var="_custom_build_include_wx_msw_genrcdefs_h">
+Creating $(SETUPHDIR)\wx\msw\rcdefs.h
+InputPath=..\..\include\wx\msw\genrcdefs.h
+
+"$(SETUPHDIR)\wx\msw\rcdefs.h" : "$(DOLLAR)(SOURCE)" "$(SETUPHDIR)\wx\msw"
+$(TAB)$(VC_COMPILER) /EP /nologo "$(DOLLAR)(InputPath)" > "$(SETUPHDIR)\wx\msw\rcdefs.h"
</set>
</if>
</define-tag>
<template id="msvc_setup_h">
<msvc-copy-setup-h/>
+ <msvc-create-rcdefs-h/>
</template>
<!-- =============================================================== -->
<include file="png.bkl"/>
<include file="jpeg.bkl"/>
<include file="tiff.bkl"/>
- <include file="odbc.bkl"/>
<include file="expat.bkl"/>
+ <include file="scintilla.bkl"/>
<!-- =============================================================== -->
<if cond="MONOLITHIC=='0'">$(EXTRALIBS_GUI)</if>
</set>
+ <if cond="TOOLKIT=='MGL' and FORMAT=='watcom'">
+ <set var="MGLLIBPATH">$(DOLLAR)(%SCITECH)/lib/$(BUILD)/dos32/ow10</set>
+ <set var="MGLPMLIBPATH">
+ <if cond="DOS32=='DOS4GW'">dos4gw</if>
+ </set>
+ </if>
+
<template id="wx" template="common_settings">
<set var="wxid">$(wxwin.mk_wxid(id))</set>
<define>__WX$(TOOLKIT)__</define>
<define>$(RTTI_DEFINE)</define>
<define>$(THREAD_DEFINE)</define>
<define>$(UNICODE_DEFINE)</define>
- <!-- this include is added by configure, we need to put other
- includes before it: -->
+ <define>$(MSLU_DEFINE)</define>
+ <if cond="FORMAT!='autoconf'"><define>$(GFXCTX_DEFINE)</define></if>
+ <include cond="FORMAT!='autoconf'">$(SETUPHDIR)</include>
<include cond="FORMAT!='autoconf'">$(TOP_SRCDIR)include</include>
<lib-path>$(LIBDIRNAME)</lib-path>
- <include cond="FORMAT!='autoconf'">$(SETUPHDIR)</include>
+ <if cond="TOOLKIT=='MGL' and FORMAT=='watcom'">
+ <lib-path>$(MGLLIBPATH)</lib-path>
+ <lib-path>$(MGLLIBPATH)/$(MGLPMLIBPATH)</lib-path>
+ </if>
+
<warnings>max</warnings>
+ <cxxflags cond="FORMAT=='autoconf'">$(CXXWARNINGS)</cxxflags>
<cppflags-watcom>
-wcd=549 <!-- 'sizeof' operand contains compiler generated information -->
-wcd=656 <!-- define this function inside its class definition (may improve code quality) -->
<!-- for both GUI and wxBase libs/samples: -->
<template id="wx_append_base_nomono">
<!-- link against builtin 3rd party libs, if needed: -->
- <sys-lib>$(LIB_TIFF)</sys-lib>
- <sys-lib>$(LIB_JPEG)</sys-lib>
- <sys-lib>$(LIB_PNG)</sys-lib>
<sys-lib>$(LIB_ZLIB)</sys-lib>
- <sys-lib>$(LIB_ODBC)</sys-lib>
<sys-lib>$(LIB_REGEX)</sys-lib>
<sys-lib>$(LIB_EXPAT)</sys-lib>
<ldlibs>$(EXTRALIBS_FOR_BASE)</ldlibs>
+ <!-- system libraries on os2: -->
+ <if cond="FORMAT!='autoconf' and PLATFORM_OS2=='1'">
+ <if cond="FORMAT=='watcom'">
+ <sys-lib>upm32</sys-lib>
+ </if>
+ </if>
+
+ <!-- system libraries on mgl: -->
+ <if cond="FORMAT=='watcom' and TOOLKIT=='MGL'">
+ <sys-lib>mgl</sys-lib>
+ <sys-lib>mglcpp</sys-lib>
+ <sys-lib>pm</sys-lib>
+ </if>
+
<!-- system libraries on windows: -->
- <if cond="FORMAT!='autoconf'">
+ <if cond="FORMAT!='autoconf' and PLATFORM_WIN32=='1'">
<sys-lib>$(UNICOWS_LIB)</sys-lib>
+ <sys-lib>$(GDIPLUS_LIB)</sys-lib>
<if cond="FORMAT=='borland'">
<sys-lib>ole2w32</sys-lib>
</if>
<sys-lib>rpcrt4</sys-lib>
<sys-lib>advapi32</sys-lib>
<sys-lib>wsock32</sys-lib>
+ <!-- this one is only used if wxUSE_URL_NATIVE==1 but we don't
+ know if it is here so just add it unconditionally -->
+ <sys-lib>wininet</sys-lib>
</if>
- <if cond="FORMAT=='msvc' or FORMAT=='msvc6prj' or FORMAT=='borland'">
+ <if cond="FORMAT=='borland'">
<sys-lib>oleacc</sys-lib>
</if>
- <if cond="FORMAT!='msevc4prj'">
- <sys-lib>odbc32</sys-lib>
- </if>
</if>
</template>
<!-- for GUI libs/samples: -->
- <template id="wx_append_nomono" template="wx_append_base_nomono">
+ <template id="wx_append_nomono" template_append="wx_append_base_nomono">
+ <sys-lib>$(LIB_TIFF)</sys-lib>
+ <sys-lib>$(LIB_JPEG)</sys-lib>
+ <sys-lib>$(LIB_PNG)</sys-lib>
<ldlibs>$(EXTRALIBS_FOR_GUI)</ldlibs>
</template>
<set var="WXLIBNAME">$(wxwin.mkLibName(wxid))</set>
<libname>$(WXLIBNAME)</libname>
+ <define>WXBUILDING</define>
+
<if cond="WX_DISABLE_PRECOMP_HEADERS=='0'">
- <if cond="FORMAT!='autoconf' and TOOLKIT in ['MSW','WINCE']">
- <sources>$(WXTOPDIR)src/msw/dummy.cpp</sources>
+ <if cond="FORMAT!='autoconf' and TOOLKIT in ['MSW','MGL','PM','WINCE']">
+ <sources>$(WXTOPDIR)src/common/dummy.cpp</sources>
<precomp-headers-gen>
- $(WXTOPDIR)src/msw/dummy.cpp
+ $(WXTOPDIR)src/common/dummy.cpp
</precomp-headers-gen>
</if>
<precomp-headers-location>$(WXTOPDIR)include</precomp-headers-location>
</if>
</template>
+ <if cond="FORMAT=='autoconf'">
+ <set var="RCDEFDIR">
+ <if cond="TOOLKIT=='MSW'">
+ $(LIBDIRNAME)/wx/include/$(TOOLCHAIN_FULLNAME)
+ </if>
+ </set>
+ </if>
+
<template id="wx_dll_b" template="wx_lib_b">
<set var="WXDLLNAME">$(wxwin.mkDllName(wxid))</set>
<dllname>$(WXDLLNAME)</dllname>
<ldflags cond="FORMAT=='autoconf'">$(WXMACVERSION_CMD)</ldflags>
<!-- version info resources: -->
- <if cond="FORMAT not in ['rpmspec','wx24dsp']"> <!-- FIXME: fix for bkl-0.1.7 only, remove the cond later -->
- <res-define>WXDLLNAME=$(WXDLLNAME)</res-define>
- <res-include cond="FORMAT=='autoconf'">
- $(TOP_SRCDIR)include
- </res-include>
+ <res-define>WXDLLNAME=$(WXDLLNAME)</res-define>
+ <if cond="FORMAT=='autoconf'">
+ <res-include>$(RCDEFDIR)</res-include>
+ <res-include>$(TOP_SRCDIR)include</res-include>
+ <postlink-command>$(DYLIB_RPATH_POSTLINK)</postlink-command>
</if>
<win32-res>$(WXTOPDIR)src/msw/version.rc</win32-res>
+
</template>
<template id="wx_3rdparty_dependencies_gui" cond="USE_GUI=='1'">
<depends>wxtiff</depends>
<depends>wxjpeg</depends>
<depends>wxpng</depends>
+ <depends>wxscintilla</depends>
</template>
<template id="wx_3rdparty_dependencies"
template="wx_3rdparty_dependencies_gui">
<depends>wxexpat</depends>
<depends>wxzlib</depends>
- <depends cond="FORMAT=='autoconf'">wxodbc</depends>
<depends>wxregex</depends>
</template>
<template id="wx_3rdparty_includes_gui" cond="USE_GUI=='1'">
+ <if cond="FORMAT=='watcom' and TOOLKIT=='MGL'">
+ <include>$(DOLLAR)(%SCITECH)/include</include>
+ </if>
+ <include>$(INC_TIFF_BUILD)</include>
<include>$(INC_TIFF)</include>
<include>$(INC_JPEG)</include>
<include>$(INC_PNG)</include>
<template id="wx_3rdparty_includes"
template="wx_3rdparty_includes_gui">
<include>$(INC_ZLIB)</include>
- <include>$(INC_ODBC)</include>
<include>$(INC_REGEX)</include>
<include>$(INC_EXPAT)</include>
</template>
</define-rule>
<!-- =============================================================== -->
- <!-- Support for wxWidgets samples and contrib: -->
+ <!-- Support for wxWidgets samples: -->
<!-- =============================================================== -->
<!-- Link against one wxWin library. Value must be literal! -->
<define-tag name="wx-lib" rules="exe,dll,module">
<sys-lib>$(wxwin.libToLink(value))</sys-lib>
<ldlibs>$(wxwin.extraLdflags(value))</ldlibs>
- <if cond="IS_MSVC_PRJ=='1' and MONOLITHIC=='0'">
+ <!-- msvs200?prj formats don't support external dependencies yet: -->
+ <if cond="FORMAT in ['msvc6prj','msevc4prj'] and MONOLITHIC=='0'">
<depends-on-dsp>$(wxwin.makeDspDependency(value))</depends-on-dsp>
</if>
</define-tag>