]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/setup.py
Updates for wxToolbook class
[wxWidgets.git] / wxPython / setup.py
index 4c231fa4e230116b455cde7ee4a152830d95bfaa..d672a441966889431c0c7a3c056cc5548b30fd44 100755 (executable)
@@ -17,8 +17,8 @@ import sys, os
 # The full contents of the wx.build.config module used to be located
 # here in setup.py.  They were split into a separate module so it will
 # be installed with wxPython and can then be used by the build scripts
-# of other extension modules that wich to be wxPython compatible.  The
-# split is still fairly new and hasn't been tested by building
+# of other extension modules that wish to be wxPython compatible.
+# The split is still fairly new and hasn't been tested by building
 # third-party extensions yet, so expect some things to still shift
 # back and forth, and also more stuff in config.py will get converted
 # to functions, etc.
@@ -31,11 +31,12 @@ import sys, os
 
 # To fully support external builds, we need to have a build options
 # file that is created whenever a new wxPython build is performed.
-# We happen to be doing that in this script, so make sure to remove
-# the build_options.py file, so that config.py will recreate it.
+# We happen to be doing that here in this script, so make sure to
+# remove the build_options.py file, so that config.py will recreate it.
 
-if os.path.exists("build_options.py"):
-    os.remove("build_options.py")
+for bo_name in ["build_options.py", "build_options.pyc"]:
+    if os.path.exists(bo_name):
+        os.remove(bo_name)
 
 sys.setup_is_main =  __name__ == "__main__"  # an icky hack!
 from config import *
@@ -75,6 +76,32 @@ RELEASE_NUMBER = RELEASE_VERSION  # for compatibility
 CLEANUP.append('wx/__version__.py')
 
 
+#----------------------------------------------------------------------
+# Write the SWIG version to a header file
+#----------------------------------------------------------------------
+
+if USE_SWIG:
+    try:
+        # It may come on either stdout or stderr, depending on the
+        # version, so read both.
+        i, o, e = os.popen3(SWIG + ' -version', 't')
+        stext = o.read() + e.read()
+        import re
+        match = re.search(r'[0-9]+\.[0-9]+\.[0-9]+$', stext, re.MULTILINE)
+        if not match:
+            raise 'NotFound'
+        SVER = match.group(0)
+        open('include/wx/wxPython/swigver.h', 'w').write('''\
+// This file was generated by setup.py
+
+#define wxPy_SWIG_VERSION "SWIG-%s"
+''' % SVER)
+        msg('Using SWIG-' + SVER)
+
+    except:
+        msg('\nUnable to get SWIG version number\n')
+
+
 #----------------------------------------------------------------------
 # patch distutils if it can't cope with the "classifiers" or
 # "download_url" keywords 
@@ -120,6 +147,7 @@ swig_sources = run_swig(['core.i'], 'src', GENDIR, PKGDIR,
                           'src/_validator.i',
                           'src/_window.i',
                           'src/_control.i',
+                          'src/_swigtype.i',
                           ],
                         True)
 
@@ -186,6 +214,7 @@ swig_sources = run_swig(['gdi.i'], 'src', GENDIR, PKGDIR,
                          'src/_icon.i',
                          'src/_pen.i',
                          'src/_palette.i',
+                         'src/_renderer.i',
                          ],
                         True)
 ext = Extension('_gdi_', ['src/drawlist.cpp'] + swig_sources,
@@ -560,38 +589,6 @@ if BUILD_STC:
     wxpExtensions.append(ext)
 
 
-
-#----------------------------------------------------------------------
-# Define the IEWIN extension module (experimental)
-#----------------------------------------------------------------------
-
-if BUILD_IEWIN:
-    msg('Preparing IEWIN...')
-    location = 'contrib/iewin'
-
-    swig_files = ['iewin.i', ]
-
-    swig_sources = run_swig(swig_files, location, '', PKGDIR,
-                            USE_SWIG, swig_force, swig_args, swig_deps)
-
-
-    ext = Extension('_iewin', ['%s/IEHtmlWin.cpp' % location,
-                               '%s/wxactivex.cpp' % location,
-                             ] + swig_sources,
-
-                    include_dirs =  includes + CONTRIBS_INC,
-                    define_macros = defines,
-
-                    library_dirs = libdirs,
-                    libraries = libs,
-
-                    extra_compile_args = cflags,
-                    extra_link_args = lflags,
-                    )
-
-    wxpExtensions.append(ext)
-
-
 #----------------------------------------------------------------------
 # Define the ACTIVEX extension module (experimental)
 #----------------------------------------------------------------------
@@ -757,7 +754,7 @@ else:
 
 
 if INSTALL_MULTIVERSION:
-    EXTRA_PATH = getExtraPath(addOpts=EP_ADD_OPTS)
+    EXTRA_PATH = getExtraPath(addOpts=EP_ADD_OPTS, shortVer=not EP_FULL_VER)
     open("src/wx.pth", "w").write(EXTRA_PATH)
     CLEANUP.append("src/wx.pth")
 else: