X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/22cef5668d65bd564b373609ceeda64ac5ea95db..317bc825f422d29cc6e5814842435fa0b6369fa6:/build/bakefiles/wxwin.py diff --git a/build/bakefiles/wxwin.py b/build/bakefiles/wxwin.py index 17b8a42b2b..989942ace2 100644 --- a/build/bakefiles/wxwin.py +++ b/build/bakefiles/wxwin.py @@ -1,5 +1,5 @@ # -# Helper functions for wxWindows bakefiles +# Helper functions for wxWidgets bakefiles # # $Id$ # @@ -11,8 +11,15 @@ import utils # register a substitution function for it that provides additional knowledge # about the option (in this case that it does not contain dir separators and # so utils.nativePaths() doesn't have to do anything with it): -def __noopSubst(func, name): - return '$(%s)' % name + +try: + # this fails in 0.1.4 and 0.1.5 has different subst.callbacks signature: + utils.checkBakefileVersion('0.1.5') + def __noopSubst(name, func, caller): + return '$(%s)' % name +except AttributeError: + def __noopSubst(func, name): + return '$(%s)' % name utils.addSubstituteCallback('CFG', __noopSubst) utils.addSubstituteCallback('LIBDIRNAME', __noopSubst) utils.addSubstituteCallback('SETUPHDIR', __noopSubst) @@ -20,7 +27,7 @@ utils.addSubstituteCallback('OBJS', __noopSubst) def mk_wxid(id): - """Creates wxWindows library identifier from bakefile target ID that + """Creates wxWidgets library identifier from bakefile target ID that follows this convention: DLLs end with 'dll', static libraries end with 'lib'. If withPrefix=1, then _wxid is returned instead of wxid.""" @@ -31,17 +38,20 @@ def mk_wxid(id): return wxid -# All libs that are part of the main library (i.e. non-contrib): -MAIN_LIBS = ['mono', 'base', 'core', 'adv', 'html', 'xml', 'net', - 'odbc', 'dbgrid'] +# All libs that are part of the main library: +MAIN_LIBS = ['mono', 'base', 'core', 'adv', 'html', 'xml', 'net', 'webview', + 'media', 'qa', 'xrc', 'aui', 'ribbon', 'propgrid', 'richtext', 'stc'] # List of library names/ids for categories with different names: -LIBS_NOGUI = ['xml', 'net', 'odbc'] -LIBS_GUI = ['core', 'adv', 'html', 'gl', 'dbgrid'] +LIBS_NOGUI = ['xml', 'net'] +LIBS_GUI = ['core', 'adv', 'html', 'gl', 'qa', 'xrc', 'media', + 'aui', 'propgrid', 'richtext', 'stc', 'ribbon', 'webview'] # Additional libraries that must be linked in: EXTRALIBS = { 'gl' : '$(EXTRALIBS_OPENGL)', 'xml' : '$(EXTRALIBS_XML)', - 'odbc' : '$(EXTRALIBS_ODBC)', + 'html' : '$(EXTRALIBS_HTML)', + 'adv' : '$(PLUGIN_ADV_EXTRALIBS)', + 'media' : '$(EXTRALIBS_MEDIA)', } def mkLibName(wxid): @@ -74,13 +84,13 @@ def libToLink(wxlibname): For one of main libraries, libToLink('foo') returns '$(WXLIB_FOO)' which must be defined in common.bkl as either nothing (in monolithic build) or mkLibName('foo') (otherwise). - For contrib libraries, it returns mkDllName(wxlibname). """ if wxlibname in MAIN_LIBS: return '$(WXLIB_%s)' % wxlibname.upper() else: return mkLibName(wxlibname) + def extraLdflags(wxlibname): if wxlibname in EXTRALIBS: return EXTRALIBS[wxlibname] @@ -91,7 +101,7 @@ wxVersion = None VERSION_FILE = '../../include/wx/version.h' def getVersion(): - """Returns wxWindows version as a tuple: (major,minor,release).""" + """Returns wxWidgets version as a tuple: (major,minor,release).""" global wxVersion if wxVersion == None: f = open(VERSION_FILE, 'rt') @@ -100,11 +110,11 @@ def getVersion(): major = minor = release = None for l in lines: if not l.startswith('#define'): continue - splitted = l.strip().split() - if splitted[0] != '#define': continue - if len(splitted) < 3: continue - name = splitted[1] - value = splitted[2] + splitline = l.strip().split() + if splitline[0] != '#define': continue + if len(splitline) < 3: continue + name = splitline[1] + value = splitline[2] if value == None: continue if name == 'wxMAJOR_VERSION': major = int(value) if name == 'wxMINOR_VERSION': minor = int(value) @@ -129,8 +139,8 @@ def headersOnly(files): def callback(cond, sources): prf = suf = '' - if sources[0].isspace(): prefix=' ' - if sources[-1].isspace(): suffix=' ' + if sources[0].isspace(): prf=' ' + if sources[-1].isspace(): suf=' ' retval = [] for s in sources.split(): if s.endswith('.h'): @@ -141,18 +151,4 @@ def headersOnly(files): def makeDspDependency(lib): """Returns suitable entry for for main libs.""" - - DEPS_TABLE = { - 'core':'base', - 'adv':'core', - 'html':'core', - 'xml':'base', - 'net':'base', - 'odbc':'base', - 'dbgrid':'adv,odbc', - } - if lib in DEPS_TABLE: - deps = ':%s' % DEPS_TABLE[lib] - else: - deps = '' - return '%s:$(nativePaths(WXTOPDIR))build\msw\wx_%s.dsp%s' % (lib,lib,deps) + return '%s:$(nativePaths(WXTOPDIR))build\\msw\\wx_%s.dsp' % (lib,lib)