don't use string module
[wxWidgets.git] / build / bakefiles / wxwin.py
index 846a1850316cece73d8065113e7387c64fdc101b..989942ace2394fc640a3b95b0b4de49df6f3b6cd 100644 (file)
@@ -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)
@@ -31,19 +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)',
     'html' : '$(EXTRALIBS_HTML)',
-    'odbc' : '$(EXTRALIBS_ODBC)',
     'adv' : '$(PLUGIN_ADV_EXTRALIBS)',
+    'media' : '$(EXTRALIBS_MEDIA)',
 }
 
 def mkLibName(wxid):
@@ -76,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]
@@ -102,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)