X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/e7d63784e8e17b5c7778ac0c2f489b1deefc31b3..6c41903ced78c0b4115785aa80a934833abbc1ef:/wxPython/setup.py diff --git a/wxPython/setup.py b/wxPython/setup.py index ffcdd04802..ce3be79c2c 100755 --- a/wxPython/setup.py +++ b/wxPython/setup.py @@ -13,16 +13,16 @@ from my_distutils import run_swig, contrib_copy_tree # flags and values that affect this script #---------------------------------------------------------------------- -VERSION = "2.3.0b1" +VERSION = "2.3.2b1" DESCRIPTION = "Cross platform GUI toolkit for Python" AUTHOR = "Robin Dunn" -AUTHOR_EMAIL = "robin@alldunn.com" +AUTHOR_EMAIL = "Robin Dunn " URL = "http://wxPython.org/" LICENCE = "wxWindows (LGPL derivative)" LONG_DESCRIPTION = """\ wxPython is a GUI toolkit for Python that is a wrapper around the wxWindows C++ GUI library. wxPython provides a large variety of -window types and controls, all imlemented with a native look and +window types and controls, all implemented with a native look and feel (and native runtime speed) on the platforms it is supported on. """ @@ -31,7 +31,13 @@ on. BUILD_GLCANVAS = 1 # If true, build the contrib/glcanvas extension module BUILD_OGL = 1 # If true, build the contrib/ogl extension module BUILD_STC = 1 # If true, build the contrib/stc extension module +BUILD_IEWIN = 0 # Internet Explorer wrapper (experimental) +BUILD_XRC = 1 # XML based resource system + + CORE_ONLY = 0 # if true, don't build any of the above +GL_ONLY = 0 # Only used when making the -gl RPM. See the "b" script + # for the ugly details USE_SWIG = 0 # Should we actually execute SWIG, or just use the # files already in the distribution? @@ -40,6 +46,10 @@ IN_CVS_TREE = 0 # Set to true if building in a full wxWindows CVS # tree, otherwise will assume all needed files are # available in the wxPython source distribution +WX_CONFIG = "wx-config" # Usually you shouldn't need to touch this, + # but you can set it to pass an alternate + # version of wx-config or alternate flags, + # eg. as required by the .deb in-tree build. # Some MSW build settings @@ -54,7 +64,14 @@ HYBRID = 0 # If set and not debug or FINAL, then build a # wxWindows must have been built with /MD, not /MDd # (using FINAL=hybrid will do it.) -WXDLLVER = '23_0' # Version part of DLL name +WXDLLVER = '23_2' # Version part of DLL name + + +#---------------------------------------------------------------------- + +def msg(text): + if __name__ == "__main__": + print text #---------------------------------------------------------------------- @@ -67,14 +84,23 @@ wxpExtensions = [] force = '--force' in sys.argv or '-f' in sys.argv debug = '--debug' in sys.argv or '-g' in sys.argv +bcpp_compiling = '-c' in sys.argv and 'my_bcpp' in sys.argv # Bad heuristic + +if bcpp_compiling: + msg("Compiling wxPython by Borland C/C++ Compiler") + HYBRID=0 + WXBCPPLIBVER = string.replace(WXDLLVER,"_","") + # Version part of BCPP build LIBRARY name + WXDLLVER="" # no dll ver path avaible + #---------------------------------------------------------------------- # Check for build flags on the command line #---------------------------------------------------------------------- -for flag in ['BUILD_GLCANVAS', 'BUILD_OGL', 'BUILD_STC', 'CORE_ONLY', - 'USE_SWIG', 'IN_CVS_TREE', 'FINAL', 'HYBRID', - 'WXDLLVER', ]: +for flag in ['BUILD_GLCANVAS', 'BUILD_OGL', 'BUILD_STC', 'BUILD_XRC', + 'CORE_ONLY', 'USE_SWIG', 'IN_CVS_TREE', + 'FINAL', 'HYBRID', ]: for x in range(len(sys.argv)): if string.find(sys.argv[x], flag) == 0: pos = string.find(sys.argv[x], '=') + 1 @@ -82,6 +108,14 @@ for flag in ['BUILD_GLCANVAS', 'BUILD_OGL', 'BUILD_STC', 'CORE_ONLY', vars()[flag] = eval(sys.argv[x][pos:]) sys.argv[x] = '' +for option in ['WX_CONFIG', 'WXDLLVER', ]: + for x in range(len(sys.argv)): + if string.find(sys.argv[x], option) == 0: + pos = string.find(sys.argv[x], '=') + 1 + if pos > 0: + vars()[option] = sys.argv[x][pos:] + sys.argv[x] = '' + sys.argv = filter(None, sys.argv) @@ -89,6 +123,7 @@ if CORE_ONLY: BUILD_GLCANVAS = 0 BUILD_OGL = 0 BUILD_STC = 0 + BUILD_XRC = 0 #---------------------------------------------------------------------- # Setup some platform specific stuff @@ -102,8 +137,6 @@ if os.name == 'nt': WXPLAT = '__WXMSW__' GENDIR = 'msw' - - if debug: FINAL = 0 HYBRID = 0 @@ -111,7 +144,6 @@ if os.name == 'nt': if HYBRID: FINAL = 0 - includes = ['src', os.path.join(WXDIR, 'include'), ] @@ -132,6 +164,23 @@ if os.name == 'nt': ('WXP_USE_THREAD', '1'), ] + if bcpp_compiling: # overwrite it + defines = [ + ('_WINDOWS', None), + ('WINVER', '0x0400'), + ('STRICT', None), + + ('WXUSINGDLL', '1'), + + ('SWIG_GLOBAL', None), + ('HAVE_CONFIG_H', None), + ('WXP_USE_THREAD', '1'), + + ('WXUSE_DEFINE','1'), + ('_RTLDLL',None), + ] + + if not FINAL or HYBRID: defines.append( ('__WXDEBUG__', None) ) @@ -144,20 +193,38 @@ if os.name == 'nt': else: wxdll = 'wx' + WXDLLVER + 'd' - #print 'Linking with ', wxdll - libs = [wxdll, 'kernel32', 'user32', 'gdi32', 'comdlg32', + libs = [wxdll] + if bcpp_compiling: + libs = ['wx'+WXBCPPLIBVER] + + libs = libs + ['kernel32', 'user32', 'gdi32', 'comdlg32', 'winspool', 'winmm', 'shell32', 'oldnames', 'comctl32', 'ctl3d32', 'odbc32', 'ole32', 'oleaut32', 'uuid', 'rpcrt4', 'advapi32', 'wsock32'] - cflags = ['/GX-'] # workaround for internal compiler error in MSVC + + cflags = [] #['/GX-'] # workaround for internal compiler error in MSVC 5 lflags = None - if not FINAL and HYBRID: + + if bcpp_compiling: # overwrite it + cflags = ['-5', '-VF', ### To supplort MSVC spurious semicolons in the class scope + ### else, all semicolons at the end of all DECLARE_...CALLBACK... macros must be eliminated + '-Hc', '-H='+WXDIR+'\src\msw\wx32.csm', + '@'+WXDIR+'\src\msw\wxwin32.cfg' + ] + + + if not FINAL and HYBRID and not bcpp_compiling: cflags = cflags + ['/Od', '/Z7'] lflags = ['/DEBUG', ] + elif bcpp_compiling and not FINAL: + cflags = cflags + ['/Od', '/v', '/y'] + lflags = lflags + ['/v', ] ## '/PDB:NONE'] + + elif os.name == 'posix': # Set flags for Unix type platforms @@ -174,11 +241,11 @@ elif os.name == 'posix': libdirs = [] libs = [] - cflags = os.popen('wx-config --cflags', 'r').read()[:-1] + ' ' + \ + cflags = os.popen(WX_CONFIG + ' --cflags', 'r').read()[:-1] + ' ' + \ os.popen('gtk-config --cflags', 'r').read()[:-1] cflags = string.split(cflags) - lflags = os.popen('wx-config --libs', 'r').read()[:-1] + lflags = os.popen(WX_CONFIG + ' --libs', 'r').read()[:-1] lflags = string.split(lflags) @@ -193,75 +260,146 @@ else: if IN_CVS_TREE and newer('setup.py', 'src/__version__.py'): open('src/__version__.py', 'w').write("ver = '%s'\n" % VERSION) + + #---------------------------------------------------------------------- -# Define the CORE extension module +# SWIG defaults #---------------------------------------------------------------------- -print 'Preparing CORE...' swig_force = force -swig_args = ['-c++', '-shadow', '-python', '-keyword', '-dascii', +swig_args = ['-c++', '-shadow', '-python', '-keyword', '-dnone', #'-dascii', '-I./src', '-D'+WXPLAT] +swig_deps = ['src/my_typemaps.i'] -swig_files = [ 'wx.i', 'windows.i', 'windows2.i', 'windows3.i', 'events.i', - 'misc.i', 'misc2.i', 'utils.i', 'gdi.i', 'mdi.i', 'controls.i', - 'controls2.i', 'cmndlgs.i', 'stattool.i', 'frames.i', 'image.i', - 'printfw.i', 'sizers.i', 'clip_dnd.i', 'grid.i', 'html.i', - 'htmlhelp.i', 'calendar.i', 'filesys.i', 'streams.i' - ] - -swig_sources = run_swig(swig_files, 'src', GENDIR, PKGDIR, - USE_SWIG, swig_force, swig_args) - -copy_file('src/__init__.py', PKGDIR, update=1, verbose=0) -copy_file('src/__version__.py', PKGDIR, update=1, verbose=0) - - -if IN_CVS_TREE: # update the licence files - mkpath('licence') - for file in ['preamble.txt', 'licence.txt', 'licendoc.txt', 'lgpl.txt']: - copy_file(WXDIR+'/docs/'+file, 'licence/'+file, update=1, verbose=0) - - -if os.name == 'nt': - rc_file = ['src/wxc.rc'] -else: - rc_file = [] +#---------------------------------------------------------------------- +# Define the CORE extension module +#---------------------------------------------------------------------- -wxext = ext = Extension('wxc', ['src/helpers.cpp', - 'src/libpy.c', - ] + rc_file + swig_sources, +if not GL_ONLY: + msg('Preparing CORE...') + swig_files = [ 'wx.i', 'windows.i', 'windows2.i', 'windows3.i', 'events.i', + 'misc.i', 'misc2.i', 'gdi.i', 'mdi.i', 'controls.i', + 'controls2.i', 'cmndlgs.i', 'stattool.i', 'frames.i', 'image.i', + 'printfw.i', 'sizers.i', 'clip_dnd.i', + 'filesys.i', 'streams.i', + ##'grid.i', 'html.i', 'htmlhelp.i', 'calendar.i', 'utils.i', + ] - include_dirs = includes, - define_macros = defines, + swig_sources = run_swig(swig_files, 'src', GENDIR, PKGDIR, + USE_SWIG, swig_force, swig_args, swig_deps) - library_dirs = libdirs, - libraries = libs, + copy_file('src/__init__.py', PKGDIR, update=1, verbose=0) + copy_file('src/__version__.py', PKGDIR, update=1, verbose=0) - extra_compile_args = cflags, - extra_link_args = lflags, - ) + if IN_CVS_TREE: # update the licence files + mkpath('licence') + for file in ['preamble.txt', 'licence.txt', 'licendoc.txt', 'lgpl.txt']: + copy_file(WXDIR+'/docs/'+file, 'licence/'+file, update=1, verbose=0) -wxpExtensions.append(ext) -if os.name == 'nt': - libs = libs[:] - if debug: - libs.insert(0, 'wxc_d') + if os.name == 'nt': + rc_file = ['src/wxc.rc'] else: - libs.insert(0, 'wxc') + rc_file = [] + + + ext = Extension('wxc', ['src/helpers.cpp', + 'src/libpy.c', + ] + rc_file + swig_sources, + + include_dirs = includes, + define_macros = defines, + + library_dirs = libdirs, + libraries = libs, + + extra_compile_args = cflags, + extra_link_args = lflags, + ) + wxpExtensions.append(ext) + + + # Extension for the grid module + swig_sources = run_swig(['grid.i'], 'src', GENDIR, PKGDIR, + USE_SWIG, swig_force, swig_args, swig_deps) + ext = Extension('gridc', swig_sources, + include_dirs = includes, + define_macros = defines, + library_dirs = libdirs, + libraries = libs, + extra_compile_args = cflags, + extra_link_args = lflags, + ) + wxpExtensions.append(ext) + + + # Extension for the html modules + swig_sources = run_swig(['html.i', 'htmlhelp.i'], 'src', GENDIR, PKGDIR, + USE_SWIG, swig_force, swig_args, swig_deps) + ext = Extension('htmlc', swig_sources, + include_dirs = includes, + define_macros = defines, + library_dirs = libdirs, + libraries = libs, + extra_compile_args = cflags, + extra_link_args = lflags, + ) + wxpExtensions.append(ext) + + + # Extension for the utils module + swig_sources = run_swig(['utils.i'], 'src', GENDIR, PKGDIR, + USE_SWIG, swig_force, swig_args, swig_deps) + ext = Extension('utilsc', swig_sources, + include_dirs = includes, + define_macros = defines, + library_dirs = libdirs, + libraries = libs, + extra_compile_args = cflags, + extra_link_args = lflags, + ) + wxpExtensions.append(ext) + + + # Extension for the calendar module + swig_sources = run_swig(['calendar.i'], 'src', GENDIR, PKGDIR, + USE_SWIG, swig_force, swig_args, swig_deps) + ext = Extension('calendarc', swig_sources, + include_dirs = includes, + define_macros = defines, + library_dirs = libdirs, + libraries = libs, + extra_compile_args = cflags, + extra_link_args = lflags, + ) + wxpExtensions.append(ext) + + + # Extension for the help module + swig_sources = run_swig(['help.i'], 'src', GENDIR, PKGDIR, + USE_SWIG, swig_force, swig_args, swig_deps) + ext = Extension('helpc', swig_sources, + include_dirs = includes, + define_macros = defines, + library_dirs = libdirs, + libraries = libs, + extra_compile_args = cflags, + extra_link_args = lflags, + ) + wxpExtensions.append(ext) + #---------------------------------------------------------------------- # Define the GLCanvas extension module #---------------------------------------------------------------------- -if not BUILD_GLCANVAS: - wxext.sources = wxext.sources + ['contrib/glcanvas/stub.cpp'] -else: - print 'Preparing GLCANVAS...' +if BUILD_GLCANVAS or GL_ONLY: + msg('Preparing GLCANVAS...') location = 'contrib/glcanvas' swig_files = ['glcanvas.i'] + other_sources = [] swig_sources = run_swig(swig_files, location, GENDIR, PKGDIR, USE_SWIG, swig_force, swig_args) @@ -272,20 +410,33 @@ else: gl_libs = ['wx_gtkd_gl', 'GL', 'GLU'] else: gl_libs = ['wx_gtk_gl', 'GL', 'GLU'] + else: + other_sources = [location + '/msw/myglcanvas.cpp'] + gl_libs = ['opengl32', 'glu32'] + + + ext = Extension('glcanvasc', + swig_sources + other_sources, - wxext.sources = wxext.sources + swig_sources - wxext.libraries = wxext.libraries + gl_libs + include_dirs = includes, + define_macros = defines, + + library_dirs = libdirs, + libraries = libs + gl_libs, + + extra_compile_args = cflags, + extra_link_args = lflags, + ) + + wxpExtensions.append(ext) #---------------------------------------------------------------------- # Define the OGL extension module #---------------------------------------------------------------------- - -if not BUILD_OGL: - wxext.sources = wxext.sources + ['contrib/ogl/stub.cpp'] -else: - print 'Preparing OGL...' +if not GL_ONLY and BUILD_OGL: + msg('Preparing OGL...') location = 'contrib/ogl' OGLLOC = location + '/contrib/src/ogl' OGLINC = location + '/contrib/include' @@ -301,33 +452,40 @@ else: contrib_copy_tree(WXDIR + '/contrib/include/wx/ogl', OGLINC+'/wx/ogl') contrib_copy_tree(WXDIR + '/contrib/src/ogl', OGLLOC) - # add items to the core extension module definition - wxext.sources = wxext.sources + [location + '/oglhelpers.cpp', - '%s/basic.cpp' % OGLLOC, - '%s/bmpshape.cpp' % OGLLOC, - '%s/composit.cpp' % OGLLOC, - '%s/divided.cpp' % OGLLOC, - '%s/lines.cpp' % OGLLOC, - '%s/misc.cpp' % OGLLOC, - '%s/basic2.cpp' % OGLLOC, - '%s/canvas.cpp' % OGLLOC, - '%s/constrnt.cpp' % OGLLOC, - '%s/drawn.cpp' % OGLLOC, - '%s/mfutils.cpp' % OGLLOC, - '%s/ogldiag.cpp' % OGLLOC, - ] + swig_sources - - wxext.include_dirs = wxext.include_dirs + [OGLINC] + ext = Extension('oglc', ['%s/basic.cpp' % OGLLOC, + '%s/bmpshape.cpp' % OGLLOC, + '%s/composit.cpp' % OGLLOC, + '%s/divided.cpp' % OGLLOC, + '%s/lines.cpp' % OGLLOC, + '%s/misc.cpp' % OGLLOC, + '%s/basic2.cpp' % OGLLOC, + '%s/canvas.cpp' % OGLLOC, + '%s/constrnt.cpp' % OGLLOC, + '%s/drawn.cpp' % OGLLOC, + '%s/mfutils.cpp' % OGLLOC, + '%s/ogldiag.cpp' % OGLLOC, + ] + swig_sources, + + include_dirs = [OGLINC] + includes, + define_macros = defines, + + library_dirs = libdirs, + libraries = libs, + + extra_compile_args = cflags, + extra_link_args = lflags, + ) + + wxpExtensions.append(ext) + + #---------------------------------------------------------------------- # Define the STC extension module #---------------------------------------------------------------------- - -if not BUILD_STC: - wxext.sources = wxext.sources + ['contrib/stc/stub.cpp'] -else: - print 'Preparing STC...' +if not GL_ONLY and BUILD_STC: + msg('Preparing STC...') location = 'contrib/stc' STCLOC = location + '/contrib/src/stc' STCINC = location + '/contrib/include' @@ -346,21 +504,22 @@ else: [STC_H+'/stc.h']) # copy a project specific py module to the main package dir - copy_file(location+'/stc.py', PKGDIR, update=1, verbose=1) + copy_file(location+'/stc.py', PKGDIR, update=1, verbose=0) # add some include dirs to the standard set - stc_includes = [ '%s/scintilla/include' % STCLOC, - '%s/scintilla/src' % STCLOC, - STCINC ] + stc_includes = includes[:] + stc_includes.append('%s/scintilla/include' % STCLOC) + stc_includes.append('%s/scintilla/src' % STCLOC) + stc_includes.append(STCINC) # and some macro definitions - stc_defines = [ ('__WX__', None), - ('SCI_LEXER', None) ] + stc_defines = defines[:] + stc_defines.append( ('__WX__', None) ) + stc_defines.append( ('SCI_LEXER', None) ) - # add items to the core extension module definition - wxext.sources = wxext.sources + [ - '%s/scintilla/src/AutoComplete.cxx' % STCLOC, + ext = Extension('stc_c', + ['%s/scintilla/src/AutoComplete.cxx' % STCLOC, '%s/scintilla/src/CallTip.cxx' % STCLOC, '%s/scintilla/src/CellBuffer.cxx' % STCLOC, '%s/scintilla/src/ContractionState.cxx' % STCLOC, @@ -390,238 +549,188 @@ else: '%s/PlatWX.cpp' % STCLOC, '%s/ScintillaWX.cpp' % STCLOC, '%s/stc.cpp' % STCLOC, - ] + swig_sources + ] + swig_sources, - wxext.include_dirs = wxext.include_dirs + stc_includes - wxext.define_macros = wxext.define_macros + stc_defines + include_dirs = stc_includes, + define_macros = stc_defines, + + library_dirs = libdirs, + libraries = libs, + + extra_compile_args = cflags, + extra_link_args = lflags, + ) + + wxpExtensions.append(ext) #---------------------------------------------------------------------- -# Do the Setup/Build/Install/Whatever +# Define the IEWIN extension module (experimental) #---------------------------------------------------------------------- -setup(name = PKGDIR, - version = VERSION, - description = DESCRIPTION, - long_description = LONG_DESCRIPTION, - author = AUTHOR, - author_email = AUTHOR_EMAIL, - url = URL, - licence = LICENCE, +if not GL_ONLY and 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) - packages = [PKGDIR, - PKGDIR+'.lib', - PKGDIR+'.lib.editor', - ], - ext_package = PKGDIR, - ext_modules = wxpExtensions, + ext = Extension('iewinc', ['%s/IEHtmlWin.cpp' % location, + ] + swig_sources, - ) + include_dirs = includes, + define_macros = defines, + library_dirs = libdirs, + libraries = libs, + extra_compile_args = cflags, + extra_link_args = lflags, + ) + + wxpExtensions.append(ext) #---------------------------------------------------------------------- +# Define the XRC extension module #---------------------------------------------------------------------- -#---------------------------------------------------------------------- -# The pre-distutils binary distributions of wxPython included the demo -# as a subdirectory of the package dir. This doesn't really make sense -# for Linux/Unix platforms as it's not part of the package, and the user -# may want to tweak and learn without having to become root first. -# -# For now I am going to start distributing the demo as a separate tarball, -# but if I ever want to go back to the old way, this is how to do it the -# distutils way: +if not GL_ONLY and BUILD_XRC: + msg('Preparing XRC...') + location = 'contrib/xrc' + XMLLOC = location + '/contrib/src/xrc' + XMLINC = location + '/contrib/include' + + swig_files = ['xrc.i'] + + swig_sources = run_swig(swig_files, location, '', PKGDIR, + USE_SWIG, swig_force, swig_args) + xmlres_includes = includes[:] + xmlres_includes.append('%s/expat/xmlparse' % XMLLOC) + xmlres_includes.append('%s/expat/xmltok' % XMLLOC) + xmlres_includes.append(XMLINC) -## from my_install_data import * -## Add this to the setup() call -## # Overridden command classes -## cmdclass = {'install_data': my_install_data}, -## # non python files of examples -## data_files = [ -## Data_Files( -## base_dir='install_lib', -## copy_to = 'wxPython', -## #strip_dirs = 2, -## template=[ 'graft demo', -## 'global-exclude CVS/*' -## ], -## preserve_path=1 -## ) -## ], + # make sure local copy of contrib files are up to date + if IN_CVS_TREE: + contrib_copy_tree(WXDIR + '/contrib/include/wx/xrc', XMLINC+'/wx/xrc') + contrib_copy_tree(WXDIR + '/contrib/src/xrc', XMLLOC) + + ext = Extension('xrcc', ['%s/expat/xmlparse/xmlparse.c' % XMLLOC, + '%s/expat/xmltok/xmlrole.c' % XMLLOC, + '%s/expat/xmltok/xmltok.c' % XMLLOC, + + '%s/xh_bmp.cpp' % XMLLOC, + '%s/xh_bmpbt.cpp' % XMLLOC, + '%s/xh_bttn.cpp' % XMLLOC, + '%s/xh_cald.cpp' % XMLLOC, + '%s/xh_chckb.cpp' % XMLLOC, + + '%s/xh_chckl.cpp' % XMLLOC, + '%s/xh_choic.cpp' % XMLLOC, + '%s/xh_combo.cpp' % XMLLOC, + '%s/xh_dlg.cpp' % XMLLOC, + '%s/xh_frame.cpp' % XMLLOC, + + '%s/xh_gauge.cpp' % XMLLOC, + '%s/xh_html.cpp' % XMLLOC, + '%s/xh_listb.cpp' % XMLLOC, + '%s/xh_listc.cpp' % XMLLOC, + '%s/xh_menu.cpp' % XMLLOC, + + '%s/xh_notbk.cpp' % XMLLOC, + '%s/xh_panel.cpp' % XMLLOC, + '%s/xh_radbt.cpp' % XMLLOC, + '%s/xh_radbx.cpp' % XMLLOC, + '%s/xh_scrol.cpp' % XMLLOC, + + '%s/xh_sizer.cpp' % XMLLOC, + '%s/xh_slidr.cpp' % XMLLOC, + '%s/xh_spin.cpp' % XMLLOC, + '%s/xh_stbmp.cpp' % XMLLOC, + '%s/xh_stbox.cpp' % XMLLOC, + + '%s/xh_stlin.cpp' % XMLLOC, + '%s/xh_sttxt.cpp' % XMLLOC, + '%s/xh_text.cpp' % XMLLOC, + '%s/xh_toolb.cpp' % XMLLOC, + '%s/xh_tree.cpp' % XMLLOC, + + '%s/xh_unkwn.cpp' % XMLLOC, + '%s/xml.cpp' % XMLLOC, + '%s/xmlbin.cpp' % XMLLOC, + '%s/xmlbinz.cpp' % XMLLOC, + '%s/xmlexpat.cpp' % XMLLOC, + + '%s/xmlres.cpp' % XMLLOC, + '%s/xmlrsall.cpp' % XMLLOC, + '%s/xmlwrite.cpp' % XMLLOC, + + ] + swig_sources, + + include_dirs = xmlres_includes, + define_macros = defines, + + library_dirs = libdirs, + libraries = libs, + + extra_compile_args = cflags, + extra_link_args = lflags, + ) + + wxpExtensions.append(ext) + #---------------------------------------------------------------------- +# Do the Setup/Build/Install/Whatever #---------------------------------------------------------------------- -#---------------------------------------------------------------------- -# Originally I was building separate extension module .so's for the -# CORE and the various contribs. Because of shared library issues I've -# decided to combine things into one .so as implemented above, but as -# I'm still not entirely convinced that this is the right thing to do -# I will keep the old code around for a while, but commented out below. +if __name__ == "__main__": + if not GL_ONLY: + setup(name = PKGDIR, + version = VERSION, + description = DESCRIPTION, + long_description = LONG_DESCRIPTION, + author = AUTHOR, + author_email = AUTHOR_EMAIL, + url = URL, + licence = LICENCE, + + packages = [PKGDIR, + PKGDIR+'.lib', + PKGDIR+'.lib.editor', + PKGDIR+'.lib.mixins' + ], + + ext_package = PKGDIR, + ext_modules = wxpExtensions, + ) + + else: -## if BUILD_GLCANVAS: -## print 'Preparing GLCANVAS...' -## location = 'contrib/glcanvas' -## swig_files = ['glcanvas.i'] + setup(name = "wxPython-gl", + version = VERSION, + description = "wxGLCanvas class for wxPython", + author = AUTHOR, + author_email = AUTHOR_EMAIL, + url = URL, + licence = LICENCE, -## swig_sources = run_swig(swig_files, location, GENDIR, PKGDIR, -## USE_SWIG, swig_force, swig_args) + py_modules = [ "wxPython.glcanvas" ], -## gl_libs = [] -## if os.name == 'posix': -## if '-D__WXDEBUG__' in cflags: -## gl_libs = ['wx_gtkd_gl', 'GL', 'GLU'] -## else: -## gl_libs = ['wx_gtk_gl', 'GL', 'GLU'] + ext_package = PKGDIR, + ext_modules = wxpExtensions, + ) -## ext = Extension('glcanvasc', -## swig_sources, -## include_dirs = includes, -## define_macros = defines, - -## library_dirs = libdirs, -## libraries = libs + gl_libs, - -## extra_compile_args = cflags, -## extra_link_args = lflags, -## ) - -## wxpExtensions.append(ext) - - - -## if BUILD_OGL: -## print 'Preparing OGL...' -## location = 'contrib/ogl' -## OGLLOC = location + '/contrib/src/ogl' -## OGLINC = location + '/contrib/include' - -## swig_files = ['ogl.i', 'oglbasic.i', 'oglshapes.i', 'oglshapes2.i', -## 'oglcanvas.i'] - -## swig_sources = run_swig(swig_files, location, '', PKGDIR, -## USE_SWIG, swig_force, swig_args) - -## # make sure local copy of contrib files are up to date -## if IN_CVS_TREE: -## contrib_copy_tree(WXDIR + '/contrib/include/wx/ogl', OGLINC+'/wx/ogl') -## contrib_copy_tree(WXDIR + '/contrib/src/ogl', OGLLOC) - -## ext = Extension('oglc', [location + '/oglhelpers.cpp', -## '%s/basic.cpp' % OGLLOC, -## '%s/bmpshape.cpp' % OGLLOC, -## '%s/composit.cpp' % OGLLOC, -## '%s/divided.cpp' % OGLLOC, -## '%s/lines.cpp' % OGLLOC, -## '%s/misc.cpp' % OGLLOC, -## '%s/basic2.cpp' % OGLLOC, -## '%s/canvas.cpp' % OGLLOC, -## '%s/constrnt.cpp' % OGLLOC, -## '%s/drawn.cpp' % OGLLOC, -## '%s/mfutils.cpp' % OGLLOC, -## '%s/ogldiag.cpp' % OGLLOC, -## ] + swig_sources, - -## include_dirs = [OGLINC] + includes, -## define_macros = defines, - -## library_dirs = libdirs, -## libraries = libs, - -## extra_compile_args = cflags, -## extra_link_args = lflags, -## ) - -## wxpExtensions.append(ext) - - - -## if BUILD_STC: -## print 'Preparing STC...' -## location = 'contrib/stc' -## STCLOC = location + '/contrib/src/stc' -## STCINC = location + '/contrib/include' -## STC_H = location + '/contrib/include/wx/stc' - -## # make sure local copy of contrib files are up to date -## if IN_CVS_TREE: -## contrib_copy_tree(WXDIR + '/contrib/include/wx/stc', STCINC+'/wx/stc') -## contrib_copy_tree(WXDIR + '/contrib/src/stc', STCLOC) - - -## swig_files = ['stc_.i'] -## swig_sources = run_swig(swig_files, location, '', PKGDIR, -## USE_SWIG, swig_force, -## swig_args + ['-I'+STC_H, '-I'+location], -## [STC_H+'/stc.h']) - -## # copy a project specific py module to the main package dir -## copy_file(location+'/stc.py', PKGDIR, update=1, verbose=1) - -## # add some include dirs to the standard set -## stc_includes = includes[:] -## stc_includes.append('%s/scintilla/include' % STCLOC) -## stc_includes.append('%s/scintilla/src' % STCLOC) -## stc_includes.append(STCINC) - -## # and some macro definitions -## stc_defines = defines[:] -## stc_defines.append( ('__WX__', None) ) -## stc_defines.append( ('SCI_LEXER', None) ) - - -## ext = Extension('stc_c', -## ['%s/scintilla/src/AutoComplete.cxx' % STCLOC, -## '%s/scintilla/src/CallTip.cxx' % STCLOC, -## '%s/scintilla/src/CellBuffer.cxx' % STCLOC, -## '%s/scintilla/src/ContractionState.cxx' % STCLOC, -## '%s/scintilla/src/Document.cxx' % STCLOC, -## '%s/scintilla/src/Editor.cxx' % STCLOC, -## '%s/scintilla/src/Indicator.cxx' % STCLOC, -## '%s/scintilla/src/KeyMap.cxx' % STCLOC, -## '%s/scintilla/src/KeyWords.cxx' % STCLOC, -## '%s/scintilla/src/LineMarker.cxx' % STCLOC, -## '%s/scintilla/src/PropSet.cxx' % STCLOC, -## '%s/scintilla/src/ScintillaBase.cxx' % STCLOC, -## '%s/scintilla/src/Style.cxx' % STCLOC, -## '%s/scintilla/src/ViewStyle.cxx' % STCLOC, -## '%s/scintilla/src/LexCPP.cxx' % STCLOC, -## '%s/scintilla/src/LexHTML.cxx' % STCLOC, -## '%s/scintilla/src/LexLua.cxx' % STCLOC, -## '%s/scintilla/src/LexOthers.cxx' % STCLOC, -## '%s/scintilla/src/LexPerl.cxx' % STCLOC, -## '%s/scintilla/src/LexPython.cxx' % STCLOC, -## '%s/scintilla/src/LexSQL.cxx' % STCLOC, -## '%s/scintilla/src/LexVB.cxx' % STCLOC, -## '%s/scintilla/src/DocumentAccessor.cxx' % STCLOC, -## '%s/scintilla/src/UniConversion.cxx' % STCLOC, -## '%s/scintilla/src/WindowAccessor.cxx' % STCLOC, -## '%s/scintilla/src/PosRegExp.cxx' % STCLOC, - -## '%s/PlatWX.cpp' % STCLOC, -## '%s/ScintillaWX.cpp' % STCLOC, -## '%s/stc.cpp' % STCLOC, -## ] + swig_sources, - -## include_dirs = stc_includes, -## define_macros = stc_defines, - -## library_dirs = libdirs, -## libraries = libs, - -## extra_compile_args = cflags, -## extra_link_args = lflags, -## ) - -## wxpExtensions.append(ext) +#---------------------------------------------------------------------- +#----------------------------------------------------------------------