[Python-ogre-commit] SF.net SVN: python-ogre: [632] trunk/python-ogre
Brought to you by:
andy_miller,
roman_yakovenko
From: <mi...@us...> - 2008-07-14 06:32:22
|
Revision: 632 http://python-ogre.svn.sourceforge.net/python-ogre/?rev=632&view=rev Author: mithro Date: 2008-07-13 23:32:30 -0700 (Sun, 13 Jul 2008) Log Message: ----------- Added ability to build debian packages using BuildModule.py Modified Paths: -------------- trunk/python-ogre/BuildModule.py trunk/python-ogre/boost/debian/control trunk/python-ogre/boost/debian/files trunk/python-ogre/code_generators/cegui/hand_made_wrappers.py trunk/python-ogre/debian/changelog trunk/python-ogre/debian/control trunk/python-ogre/debian/rules trunk/python-ogre/debs/gccxml-debian/changelog trunk/python-ogre/debs/pygccxml-debian/control trunk/python-ogre/debs/pyplusplus-debian/changelog trunk/python-ogre/debs/pyplusplus-debian/control trunk/python-ogre/demos/PythonOgreConfig.py trunk/python-ogre/environment.py trunk/python-ogre/packages_2.5/ogre/gui/CEGUI/__init__.py Added Paths: ----------- trunk/python-ogre/PythonOgreConfig_system.py trunk/python-ogre/scripts/build-deb.sh Removed Paths: ------------- trunk/python-ogre/debian/files trunk/python-ogre/debian/python-ogre.postinst.debhelper trunk/python-ogre/debian/python-ogre.preinst.debhelper trunk/python-ogre/debian/python-ogre.prerm.debhelper trunk/python-ogre/debian/python-ogre.substvars Property Changed: ---------------- trunk/python-ogre/ trunk/python-ogre/boost/ trunk/python-ogre/boost/debian/ trunk/python-ogre/code_generators/cache/ trunk/python-ogre/debian/ trunk/python-ogre/demos/ogre/ trunk/python-ogre/generated/ trunk/python-ogre/packages_2.5/ trunk/python-ogre/packages_2.5/ogre/addons/ trunk/python-ogre/packages_2.5/ogre/addons/cadunetree/ trunk/python-ogre/packages_2.5/ogre/addons/caelum/ trunk/python-ogre/packages_2.5/ogre/addons/et/ trunk/python-ogre/packages_2.5/ogre/addons/noise/ trunk/python-ogre/packages_2.5/ogre/addons/ofusion/ trunk/python-ogre/packages_2.5/ogre/addons/ogredshow/ trunk/python-ogre/packages_2.5/ogre/addons/ogreforests/ trunk/python-ogre/packages_2.5/ogre/addons/ogrevideoffmpeg/ trunk/python-ogre/packages_2.5/ogre/addons/particleuniverse/ trunk/python-ogre/packages_2.5/ogre/addons/plib/ trunk/python-ogre/packages_2.5/ogre/addons/theora/ trunk/python-ogre/packages_2.5/ogre/addons/watermesh/ trunk/python-ogre/packages_2.5/ogre/gui/CEGUI/ trunk/python-ogre/packages_2.5/ogre/gui/QuickGUI/ trunk/python-ogre/packages_2.5/ogre/gui/betagui/ trunk/python-ogre/packages_2.5/ogre/gui/navi/ trunk/python-ogre/packages_2.5/ogre/io/OIS/ trunk/python-ogre/packages_2.5/ogre/physics/NxOgre/ trunk/python-ogre/packages_2.5/ogre/physics/ODE/ trunk/python-ogre/packages_2.5/ogre/physics/OgreBulletC/ trunk/python-ogre/packages_2.5/ogre/physics/OgreBulletD/ trunk/python-ogre/packages_2.5/ogre/physics/OgreNewt/ trunk/python-ogre/packages_2.5/ogre/physics/OgreOde/ trunk/python-ogre/packages_2.5/ogre/physics/OgreRefApp/ trunk/python-ogre/packages_2.5/ogre/physics/Opcode/ trunk/python-ogre/packages_2.5/ogre/physics/PhysX/ trunk/python-ogre/packages_2.5/ogre/physics/bullet/ trunk/python-ogre/packages_2.5/ogre/renderer/OGRE/ trunk/python-ogre/packages_2.5/ogre/sound/OgreAL/ Property changes on: trunk/python-ogre ___________________________________________________________________ Name: svn:ignore - python-ogre.sln python-ogre.suo python-ogre.ncb Release + python-ogre.sln python-ogre.suo python-ogre.ncb Release *.pyc log.out build_dir_2.5 downloads build build-stamp Modified: trunk/python-ogre/BuildModule.py =================================================================== --- trunk/python-ogre/BuildModule.py 2008-07-02 08:50:50 UTC (rev 631) +++ trunk/python-ogre/BuildModule.py 2008-07-14 06:32:30 UTC (rev 632) @@ -63,13 +63,14 @@ # # export PYTHONPATH=$PREFIX/lib/python$PYTHONVERSION/site-packages -def spawnTask ( task, cwdin = '' ): +def spawnTask ( task, cwdin = '', getoutput=None ): """Execute a command line task and manage the return code etc """ global ENV_SET PREFIX = environment.PREFIX PATH = os.environ["PATH"] env = os.environ + env["USESYSTEM"] = str(environment.UseSystem) if not ENV_SET: # this actually changes the environment so we shouldn't do it more than once env["PKG_CONFIG_PATH"]=os.path.join(PREFIX,"lib/pkgconfig") env["LD_LIBRARY_PATH"]=os.path.join(PREFIX,"lib") @@ -95,7 +96,12 @@ returncode = process.returncode except: returncode = -1 - + + if getoutput is not None: + if returncode != -1: + getoutput.write(out) + getoutput.write(err) + if returncode != 0: logger.warning ( "Task Failed" ) logger.debug ( out ) @@ -113,6 +119,16 @@ for cmd,args,cwd in module.source: logger.info ("Retrieving %s" % args ) ret = spawnTask ( cmd+ " " + args, cwd ) + + if not hasattr(module, "extractCmds"): + return + + for type_,cmd,path in module.extractCmds: + logger.info ("Extracting and patching %s" % args ) + if path =='': + path = os.getcwd() + ret = spawnTask ( cmd, path ) + def buildModule ( module ): """ Execute the build commands for the module @@ -129,13 +145,73 @@ logger.debug ("executing codeblock " ) exec code logger.debug ( "Exec done") + +from cStringIO import StringIO +def buildDeb ( module, install = False ): + """ Create a debian package for the module + """ + logger.info("Trying to build a debain package for module %s" % module.base) + srcdir = os.path.join(os.getcwd(), module.base) + if not os.path.exists(srcdir): + exit("You need to get the src first, use -r") + + # Check if the module already has debian rules to create a package + debiandir = os.path.join(srcdir, "debian") + debianour = os.path.join("python-ogre", "debs", "%s-debian" % module.base) + + if not os.path.exists(debiandir): + logger.info("Package does not come with a debian dir, seeing if we have our own..") + + # Do we have a debian rules we can copy into the package? + if not os.path.exists(debianour): + logger.error("We do not have a debian dir!?") + exit("Can not build debian packages for this module.") + else: + # Do the copy + ret = spawnTask("cp -rvf %s %s" % (debianour, debiandir), os.getcwd()) + if ret != 0: + exit("Was not able to copy the debian directory over") + + # Rewrite any place holders + ret = spawnTask( "sed --in-place "+debiandir+"/changelog -e \"s|%%SHORTDATE%%|`date +%Y%m%d`|\" -e \"s|%%LONGDATE%%|`date +'%a, %d %b %Y %H:%m:%S %z'`|\"", srcdir) + if ret != 0: + exit("Was not able to update the debian change log.") + ret = spawnTask( "sed --in-place "+debiandir+"/control -e \"s|%%SHORTDATE%%|`date +%Y%m%d`|\" -e \"s|%%LONGDATE%%|`date +'%a, %d %b %Y %H:%m:%S %z'`|\"", srcdir) + if ret != 0: + exit("Was not able to update the debian control file.") + # Check that all the dependencies for this package are avaliable + c = StringIO() + ret = spawnTask("dpkg-checkbuilddeps", srcdir, c) + if ret != 0: + c = c.getvalue().strip() + c = c.split(':')[-1].strip().split() + logger.info ("Please install the following dependencies %r " % c) + exit("The package's dependencies have not been installed.") + + os.chmod(os.path.join(debiandir, "rules"), 0755) + + ret = spawnTask("fakeroot ./debian/rules binary", srcdir, c) + if ret != 0: + exit("Was not able to build package") + logger.info("Package successfully built!") + +def buildInstall ( module ): + """ Create a debian package for the module + """ + logger.info("Trying to install the debian package (make sure you run sudo before this command)") + srcdir = os.path.join(os.getcwd(), module.base) + ret = spawnTask("sudo dpkg --install %s*.deb" % module.base, os.path.split(srcdir)[0]) + if ret != 0: + exit("Was not able to the install package!") + logger.info("Package installed.") + def generateCode ( module ): """ Generate the C++ wrapper code """ logger.info ( "Building Source code for " + module.name ) ### AJM -- note the assumption that environment.py is sitting in the 'python-ogre' directory... - ret = spawnTask ( 'python generate_code.py', os.path.join(environment.root_dir, 'code_generators', module.name) ) + ret = spawnTask ( 'python generate_code.py'+('', ' --usesystem')[environment.UseSystem], os.path.join(environment.root_dir, 'code_generators', module.name) ) def compileCode ( module ): """ Compile the wrapper code and make the modules @@ -155,6 +231,8 @@ parser.add_option("-r", "--retrieve", action="store_true", default=False,dest="retrieve", help="Retrieve the appropiate source before building") parser.add_option("-b", "--build", action="store_true", default=False ,dest="build", help="Build the appropiate module") parser.add_option("-g", "--gen", action="store_true", default=False ,dest="gencode", help="Generate Source Code for the module") + parser.add_option("-d", "--build-deb", action="store_true", default=False ,dest="builddeb", help="Build a debian package for the module") + parser.add_option("", "--install-deb", action="store_true", default=False ,dest="installdeb", help="Install the debian packages after building") parser.add_option("-c", "--compile", action="store_true", default=False ,dest="compilecode", help="Compile Source Code for the module") parser.add_option("-l", "--logfilename", default="log.out" ,dest="logfilename", help="Override the default log file name") parser.add_option("-G", "--genall", action="store_true", default=False ,dest="gencodeall", help="Generate Source Code for all possible modules") @@ -169,13 +247,16 @@ (options, args) = parseInput() if len(args) == 0 and not (options.compilecodeall or options.gencodeall): exit("The module to build wasn't specified. Use -h for help") + + setupLogging(options.logfilename) + logger = logging.getLogger('PythonOgre.BuildModule') if options.retrieve==False and options.build==False and options.gencode==False and options.compilecode==False\ - and options.compilecodeall==False and options.gencodeall==False: + and options.compilecodeall==False and options.gencodeall==False and options.builddeb==False\ + and options.installdeb==False: exit ( "You need to specific at least one option. Use -h for help") - - setupLogging(options.logfilename) - logger = logging.getLogger('PythonOgre.BuildModule') + if options.builddeb and options.build: + exit ( "You can only specify build or builddeb, not both!" ) if not os.path.exists( environment.downloadPath ): os.mkdir ( environment.downloadPath ) @@ -198,6 +279,11 @@ exit("Module specificed was not found (%s is not in environment.py) " % moduleName ) if options.retrieve: retrieveSource ( classList[ moduleName ] ) + if options.builddeb: + buildDeb( classList[ moduleName ] ) + if options.installdeb: + buildInstall( classList[ moduleName ] ) + if options.build : buildModule ( classList[ moduleName ] ) if options.gencode : Added: trunk/python-ogre/PythonOgreConfig_system.py =================================================================== --- trunk/python-ogre/PythonOgreConfig_system.py (rev 0) +++ trunk/python-ogre/PythonOgreConfig_system.py 2008-07-14 06:32:30 UTC (rev 632) @@ -0,0 +1,165 @@ +import sys,os + +## The root directory is where this module is located +module_dir = os.path.abspath(os.path.dirname(__file__) )## The root directory is where this module is located +## lets assume that the base development directory is one level higher +BASE_DIR = "/usr" + +# the base of the /usr/... dircetory structure that we are using +ROOT_DIR = '/' +LOCAL_LIB = '/usr/lib' +LOCAL_INCLUDE = '/usr/include' + +## path to the root of your boost dir, should have 'libs', 'boost' subdirectories +PATH_Boost = os.path.join(LOCAL_INCLUDE, 'boost') +## Path to your boost_pythonxxxx lib file +PATH_LIB_Boost = LOCAL_LIB +## and the name of the boost python library +LIB_Boost = 'libboost_python-gcc42-mt-1_34_1' + +# in Linux we need to code in the Relative path for the library +RPATH=os.path.join('\\$$ORIGIN',os.pardir,os.pardir, 'lib') #+ '\'' + +# We need to know where to find gccxml...... +gccxml_bin = os.path.join(ROOT_DIR,'usr/bin') +# and the Py++ directory as sometimes we need access to the code repository there +pyplusplus_install_dir = os.path.join(BASE_DIR,'pygccxml') + +# # ## Parent directories of the libraries +PATH_THIRDPARTY = os.path.join(module_dir, 'ThirdParty' ) +PATH_Ogre = os.path.join(BASE_DIR, 'ogre') +PATH_OgreAddons = os.path.join(BASE_DIR, 'ogreaddons') +PATH_CEGUI = os.path.join(BASE_DIR, 'include/CEGUI' ) +PATH_OIS = os.path.join(BASE_DIR, 'ois-1.0RC1') + +PATH_Newton = os.path.join(BASE_DIR, 'newtonSDK','sdk') +PATH_ODE = os.path.join(BASE_DIR) +PATH_OGG = os.path.join(BASE_DIR, 'libogg-1.1.3') +PATH_VORBIS= os.path.join(BASE_DIR, 'libvorbis-1.2.0') +PATH_OPENAL= os.path.join(BASE_DIR, 'openal-0.0.8') +PATH_OgreOde= os.path.join(PATH_OgreAddons,'ogreode') + +PATH_OgreBullet= os.path.join(PATH_THIRDPARTY,'ogrebullet') +PATH_ogreforests= os.path.join(PATH_THIRDPARTY,'forests') +PATH_OGREAL= os.path.join(PATH_THIRDPARTY,'ogreal') +PATH_OPCODE= os.path.join(PATH_THIRDPARTY,'opcode') +PATH_quickgui= os.path.join(PATH_THIRDPARTY,'quickgui') +PATH_betagui= os.path.join(PATH_THIRDPARTY,'betagui') +PATH_ogredshow = os.path.join(PATH_THIRDPARTY,'dshow') +PATH_plib = os.path.join(PATH_THIRDPARTY, 'plib') +PATH_et = os.path.join(PATH_THIRDPARTY, 'et') +PATH_caelum = os.path.join(PATH_THIRDPARTY, 'caelum') +PATH_noise= os.path.join(PATH_THIRDPARTY, 'noise') +PATH_watermesh= os.path.join(PATH_THIRDPARTY, 'watermesh') +PATH_ofusion= os.path.join(PATH_THIRDPARTY, 'ofusion') +PATH_ogrevideoffmpeg = os.path.join(PATH_THIRDPARTY,'ffmpeg') +PATH_NxOgre= os.path.join(PATH_THIRDPARTY, 'nxogre') +PATH_NxOgre_09= os.path.join(PATH_THIRDPARTY, 'nxogre_0.9') +# PATH_NxOgre= os.path.join(BASE_DIR, 'nxogre/NxOgre') +PATH_Bullet= os.path.join(BASE_DIR, 'bullet-2.66') +###PATH_PhysX= os.path.join(BASE_DIR, 'Physx/v2.7.3/SDKs') +PATH_Theora= os.path.join(PATH_OgreAddons,'videoplugin','TheoraVideo') +PATH_ffmpeg= os.path.join(BASE_DIR, 'ffmpeg') +PATH_navi = os.path.join(BASE_DIR, 'navi','Navi') +PATH_particleuniverse = os.path.join(PATH_Ogre, 'PlugIns', 'ParticleUniverse' ) +PATH_cadunetree= os.path.join(PATH_THIRDPARTY, 'cadunetree') +PATH_opensteer = os.path.join(BASE_DIR, 'opensteer', 'trunk') + + +### +### these paths assume you've left all the directory structure as standard +### Override anything that is different +### +PATH_LIB_Ogre_CEGUIRenderer = os.path.join( LOCAL_LIB ) #, 'Samples/Common/CEGUIRenderer/lib') +PATH_LIB_Ogre_OgreMain= os.path.join( LOCAL_LIB ) # PATH_Ogre, 'OgreMain/lib/Release' ) +PATH_LIB_Ogre_Dependencies = os.path.join( LOCAL_LIB ) # , 'Dependencies/lib/Release') +PATH_LIB_OgreRefApp = os.path.join( LOCAL_LIB ) # PATH_Ogre, 'ReferenceApplication/ReferenceAppLayer/lib/Release') +PATH_LIB_OgreNewt = os.path.join( LOCAL_LIB ) #PATH_OgreAddons, r'ogrenewt/OgreNewt_Main/lib/Release') +PATH_LIB_Newton = os.path.join( LOCAL_LIB ) # PATH_Newton ,'dll') ##NOTE Posix platforms this lives in 'lib-mt' + +PATH_LIB_OIS = os.path.join( LOCAL_LIB ) #PATH_OIS, 'dll') ## NOTE Posix platforms this lives in'lib' not 'dll' +PATH_LIB_CEGUI = os.path.join( LOCAL_LIB ) #PATH_Ogre, r'Dependencies/lib/Release' ) + +PATH_LIB_ODE = os.path.join( LOCAL_LIB ) #PATH_ODE, 'lib/releasedll')## probable releaselib for posix +PATH_LIB_OPCODE = os.path.join( PATH_OPCODE ) +PATH_LIB_OgreOde = os.path.join( LOCAL_LIB ) #PATH_OgreOde, 'lib/Release') +# PATH_LIB_OgreBullet = os.path.join( PATH_OgreBullet, 'lib/Release') +PATH_LIB_OgreOdePrefab = os.path.join( LOCAL_LIB ) #PATH_OgreOde, 'prefab/lib/Release' ) +PATH_LIB_OgreOdeLoader = os.path.join( LOCAL_LIB ) #PATH_OgreOde, 'loader/lib/Release' ) +PATH_LIB_OgreAL = os.path.join( LOCAL_LIB ) #PATH_OGREAL, 'lib/Release' ) +PATH_LIB_betagui = PATH_betagui +PATH_LIB_quickgui = PATH_quickgui +PATH_LIB_NxOgre= os.path.join(LOCAL_LIB ) +PATH_LIB_PhysX = os.path.join(LOCAL_LIB, 'PhysX','v2.7.3') +PATH_LIB_Bullet = os.path.join( LOCAL_LIB ) +PATH_LIB_Theora= os.path.join(PATH_Theora, 'bin', 'Release') +PATH_LIB_ogrevideoffmpeg = PATH_ogrevideoffmpeg +PATH_LIB_ffmpeg= os.path.join(PATH_ffmpeg, 'lib') +PATH_LIB_plib = PATH_plib +PATH_LIB_navi= os.path.join(PATH_navi, 'lib') +PATH_LIB_particleuniverse = os.path.join(PATH_particleuniverse, 'bin', 'release') +PATH_LIB_opensteer = os.path.join(LOCAL_LIB) + + +PATH_INCLUDE_Ogre= os.path.join(LOCAL_INCLUDE,'OGRE') # os.path.join(PATH_Ogre,'OgreMain/include') +PATH_INCLUDE_Ogre_Dependencies = PATH_INCLUDE_Ogre # os.path.join( PATH_Ogre, 'Dependencies/include') + +PATH_INCLUDE_OIS = os.path.join(LOCAL_INCLUDE,'OIS') #os.path.join(PATH_OIS,'includes') ## Note the plural include's +PATH_INCLUDE_CEGUI = os.path.join(LOCAL_INCLUDE,'CEGUI') #os.path.join(PATH_CEGUI, r'include/CEGUI') + +PATH_INCLUDE_OgreRefApp = os.path.join(PATH_Ogre,'ReferenceApplication/ReferenceAppLayer/include') +PATH_INCLUDE_OgreNewt = os.path.join(LOCAL_INCLUDE,'OgreNewt') #os.path.join(PATH_OgreAddons,'ogrenewt/OgreNewt_Main/inc') +PATH_INCLUDE_ODE = os.path.join(LOCAL_INCLUDE,'ode') #os.path.join( PATH_ODE, 'include') +PATH_INCLUDE_OPCODE = PATH_OPCODE +PATH_INCLUDE_ODESOURCE = '' # os.path.join( PATH_ODE, 'ode/src') +PATH_INCLUDE_OgreAL = PATH_OGREAL +PATH_INCLUDE_OPENAL = os.path.join( LOCAL_INCLUDE ) #os.path.join( PATH_OPENAL, 'include') +PATH_INCLUDE_OGG= os.path.join( LOCAL_INCLUDE,'ogg' ) #os.path.join( PATH_OGG, 'include' ) +PATH_INCLUDE_VORBIS= os.path.join( LOCAL_INCLUDE,'vorbis' ) #os.path.join( PATH_VORBIS, 'include' ) + +# PATH_INCLUDE_OgreBullet = [ +# os.path.join( PATH_OgreBullet,'Collisions','include') +# ,os.path.join( PATH_OgreBullet,'Dynamics','include') +# ] + + +PATH_INCLUDE_OgreOde = os.path.join( PATH_OgreOde,'include') +PATH_INCLUDE_OgreOdePrefab= os.path.join( PATH_OgreOde,'prefab/include') +PATH_INCLUDE_OgreOdeLoader= os.path.join( PATH_OgreOde,'loader/include') +PATH_INCLUDE_FMOD = "" +PATH_INCLUDE_Ogre_CEGUIRenderer = os.path.join(BASE_DIR, 'include', 'OGRE') +PATH_INCLUDE_quickgui = PATH_quickgui +PATH_INCLUDE_NxOgre= PATH_NxOgre +PATH_INCLUDE_NxOgre_09= PATH_NxOgre_09 +# PATH_INCLUDE_NxOgre= os.path.join(PATH_NxOgre, 'include') +PATH_INCLUDE_Bullet = os.path.join( PATH_Bullet, 'src') +PATH_INCLUDE_betagui = PATH_betagui +PATH_INCLUDE_Theora = os.path.join (PATH_Theora,'include') +PATH_INCLUDE_TheoraDemo = os.path.join (PATH_Theora,'..', 'CEGUI_TheoraDemo','include') + +PATH_INCLUDE_ogrevideoffmpeg = PATH_ogrevideoffmpeg +PATH_INCLUDE_ffmpeg = os.path.join (PATH_ffmpeg,'include') +PATH_INCLUDE_plib = PATH_plib +PATH_INCLUDE_navi = os.path.join (PATH_navi,'include') +PATH_INCLUDE_noise = PATH_noise +PATH_INCLUDE_ogredshow = PATH_ogredshow +PATH_INCLUDE_ogreforests = PATH_ogreforests +PATH_INCLUDE_particleuniverse = os.path.join(PATH_particleuniverse, 'include' ) + +PATH_INCLUDE_OggVorbisTheora = [ os.path.join(BASE_DIR,'ogg','include') + ,os.path.join(BASE_DIR, 'vorbis', 'include') + ,os.path.join(PATH_OgreAddons,'videoplugin','theora','include') + ##,os.path.join(PATH_OgreAddons,'videoplugin','ptypes-1.8.3','include') + ,os.path.join(PATH_THIRDPARTY,'ptypes','include') + ] +physxbase = os.path.join(LOCAL_INCLUDE, 'PhysX','v2.7.3', 'SDKs') +PATH_INCLUDE_PhysX= [ physxbase + ,os.path.join(physxbase, 'Cooking','Include') + ,os.path.join(physxbase, 'Foundation','include') + ,os.path.join(physxbase, 'PhysXLoader','include') + ,os.path.join(physxbase, 'NxCharacter','include') + ,os.path.join(physxbase, 'NxExtensions','include') + ,os.path.join(physxbase, 'Physics','include') + ] +PATH_INCLUDE_opensteer = os.path.join(LOCAL_INCLUDE, 'OpenSteer') +PATH_INCLUDE_opensteer_opensteer = os.path.join(LOCAL_INCLUDE, 'OpenSteer') Property changes on: trunk/python-ogre/boost ___________________________________________________________________ Name: svn:ignore + *-stamp *.so Property changes on: trunk/python-ogre/boost/debian ___________________________________________________________________ Name: svn:ignore + libboost-python1.34.1-index* tmp Modified: trunk/python-ogre/boost/debian/control =================================================================== --- trunk/python-ogre/boost/debian/control 2008-07-02 08:50:50 UTC (rev 631) +++ trunk/python-ogre/boost/debian/control 2008-07-14 06:32:30 UTC (rev 632) @@ -12,7 +12,7 @@ Description: Extra index stuff for boost-python This package is the extra index stuff needed by python-ogre (and possibly others). It does not refer to a real upstream object, we expect this to go way - once boot-python is updated. + once boost-python is updated. Package: libboost-python1.34.1-index Section: libs @@ -21,4 +21,4 @@ Description: Extra index stuff for boost-python This package is the extra index stuff needed by python-ogre (and possibly others). It does not refer to a real upstream object, we expect this to go way - once boot-python is updated. + once boost-python is updated. Modified: trunk/python-ogre/boost/debian/files =================================================================== --- trunk/python-ogre/boost/debian/files 2008-07-02 08:50:50 UTC (rev 631) +++ trunk/python-ogre/boost/debian/files 2008-07-14 06:32:30 UTC (rev 632) @@ -10,3 +10,5 @@ libboost-python1.34.1-index_0.0.0-1_i386.deb libs extra libboost-python1.34.1-index-dev_0.0.0-1_i386.deb libdevel extra libboost-python1.34.1-index_0.0.0-1_i386.deb libs extra +libboost-python1.34.1-index-dev_0.0.0-1_i386.deb libdevel extra +libboost-python1.34.1-index_0.0.0-1_i386.deb libs extra Property changes on: trunk/python-ogre/code_generators/cache ___________________________________________________________________ Name: svn:ignore + *.xml Modified: trunk/python-ogre/code_generators/cegui/hand_made_wrappers.py =================================================================== --- trunk/python-ogre/code_generators/cegui/hand_made_wrappers.py 2008-07-02 08:50:50 UTC (rev 631) +++ trunk/python-ogre/code_generators/cegui/hand_made_wrappers.py 2008-07-14 06:32:30 UTC (rev 632) @@ -62,8 +62,10 @@ bp::return_value_policy< bp::reference_existing_object, bp::default_call_policies >()); EventSet_exposer.def( "subscribeEvent", &EventSet_subscribeEventSet, bp::return_value_policy< bp::reference_existing_object, bp::default_call_policies >()); -EventSet_exposer.def( "subscribeEvent", &EventSet_subscribeTree, +#if CEGUI_VERSION_MINOR > 5 && CEGUI_VERSION_PATCH > 0 +EventSet_exposer.def( "subscribeEvent", &EventSet_subscribeTree, bp::return_value_policy< bp::reference_existing_object, bp::default_call_policies >()); +#endif { //EventConnection typedef bp::class_< EventConnection > EventConnection_exposer_t; @@ -169,22 +171,23 @@ boost::python::call<void>(mSubscriber, static_cast<const CEGUI::MouseEventArgs&>(args) ); - else if (dynamic_cast<CEGUI::TreeEventArgs *>((CEGUI::EventArgs *)&args)) - if (mMethod.length() > 0 ) - boost::python::call_method<void>(mSubscriber, mMethod.c_str(), - static_cast<const CEGUI::TreeEventArgs&>(args) ); - else - boost::python::call<void>(mSubscriber, - static_cast<const CEGUI::TreeEventArgs&>(args) ); - +#if CEGUI_VERSION_MINOR > 5 && CEGUI_VERSION_PATCH > 0 + else if (dynamic_cast<CEGUI::TreeEventArgs *>((CEGUI::EventArgs *)&args)) + if (mMethod.length() > 0 ) + boost::python::call_method<void>(mSubscriber, mMethod.c_str(), + static_cast<const CEGUI::TreeEventArgs&>(args) ); + else + boost::python::call<void>(mSubscriber, + static_cast<const CEGUI::TreeEventArgs&>(args) ); +#endif else if (dynamic_cast<CEGUI::WindowEventArgs *>((CEGUI::EventArgs *)&args)) if (mMethod.length() > 0 ) boost::python::call_method<void>(mSubscriber, mMethod.c_str(), static_cast<const CEGUI::WindowEventArgs&>(args) ); else boost::python::call<void>(mSubscriber, - static_cast<const CEGUI::WindowEventArgs&>(args) ); - + static_cast<const CEGUI::WindowEventArgs&>(args) ); + else boost::python::call_method<void>(mSubscriber, mMethod.c_str(), args ); return true; @@ -348,14 +351,16 @@ { EventConnection *connect = new EventConnection(self->subscribeEvent(name, EventCallback(subscriber, method))); return connect; -} - -EventConnection * EventSet_subscribeTree(CEGUI::Tree *self , CEGUI::String const & name, - PyObject* subscriber, CEGUI::String const & method="") -{ - EventConnection *connect = new EventConnection(self->subscribeEvent(name, EventCallback(subscriber, method))); - return connect; } + +#if CEGUI_VERSION_MINOR > 5 && CEGUI_VERSION_PATCH > 0 +EventConnection * EventSet_subscribeTree(CEGUI::Tree *self , CEGUI::String const & name, + PyObject* subscriber, CEGUI::String const & method="") +{ + EventConnection *connect = new EventConnection(self->subscribeEvent(name, EventCallback(subscriber, method))); + return connect; +} +#endif """ WRAPPER_DEFINITION_General = \ Property changes on: trunk/python-ogre/debian ___________________________________________________________________ Name: svn:ignore + python-ogre Modified: trunk/python-ogre/debian/changelog =================================================================== --- trunk/python-ogre/debian/changelog 2008-07-02 08:50:50 UTC (rev 631) +++ trunk/python-ogre/debian/changelog 2008-07-14 06:32:30 UTC (rev 632) @@ -1,3 +1,9 @@ +python-ogre (0.0.0-1) unstable; urgency=low + + * Added support for ogreal. + * Fixed the CEGUI import. + + -- Tim 'Mithro' Ansell <mi...@mi...> Mon, 14 Jul 2008 11:13:51 +1000 python-ogre (0.0.0-0) unstable; urgency=low * First testing version. @@ -2,2 +8,2 @@ - -- Tim 'Mithro' Ansell <mi...@mi...> + -- Tim 'Mithro' Ansell <mi...@mi...> Sun, 13 Jul 2008 13:27:51 +1000 Modified: trunk/python-ogre/debian/control =================================================================== --- trunk/python-ogre/debian/control 2008-07-02 08:50:50 UTC (rev 631) +++ trunk/python-ogre/debian/control 2008-07-14 06:32:30 UTC (rev 632) @@ -4,12 +4,24 @@ Priority: optional Maintainer: Tim 'Mithro' Ansell <mi...@mi...> Build-Depends-Indep: python-central (>= 0.5.6), python-setuptools (>= 0.6b3-1), python-all -Build-Depends: debhelper (>= 5.0.38) +Build-Depends: debhelper (>= 5.0.38), + cmake (>= 2.4.0), scons, + nvidia-cg-toolkit, + zziplib-bin, + libboost-dev (>= 1.34), libboost-dev (<= 1.35), + libboost-python-dev (>= 1.34), libboost-dev (<= 1.35), + libfreeimage-dev, + libois-dev, + libogre-dev (>= 1.4), libogre-dev (< 1.5), + libceguiogre-dev (>= 1.4), libceguiogre-dev (< 1.5), + libopenal-dev, + gccxml (>=0.7.0), + pygccxml, pyplusplus, Standards-Version: 3.7.2 Package: python-ogre -Architecture: all -Depends: ${python:Depends} +Architecture: i386 +Depends: ${python:Depends}, ${shlibs:Depends}, ${misc:Depends}, XB-Python-Version: ${python:Versions} Description: Python Ogre. Python Ogre. Deleted: trunk/python-ogre/debian/files =================================================================== --- trunk/python-ogre/debian/files 2008-07-02 08:50:50 UTC (rev 631) +++ trunk/python-ogre/debian/files 2008-07-14 06:32:30 UTC (rev 632) @@ -1,2 +0,0 @@ -python-ogre_0.0.0-0_all.deb python optional -python-ogre_0.0.0-0_all.deb python optional Deleted: trunk/python-ogre/debian/python-ogre.postinst.debhelper =================================================================== --- trunk/python-ogre/debian/python-ogre.postinst.debhelper 2008-07-02 08:50:50 UTC (rev 631) +++ trunk/python-ogre/debian/python-ogre.postinst.debhelper 2008-07-14 06:32:30 UTC (rev 632) @@ -1,8 +0,0 @@ -# Automatically added by dh_pycentral -if which pycentral >/dev/null 2>&1; then - pycentral pkginstall python-ogre - if grep -qs '^python-ogre$' /var/lib/pycentral/delayed-pkgs; then - sed -i '/^python-ogre$/d' /var/lib/pycentral/delayed-pkgs - fi -fi -# End automatically added section Deleted: trunk/python-ogre/debian/python-ogre.preinst.debhelper =================================================================== --- trunk/python-ogre/debian/python-ogre.preinst.debhelper 2008-07-02 08:50:50 UTC (rev 631) +++ trunk/python-ogre/debian/python-ogre.preinst.debhelper 2008-07-14 06:32:30 UTC (rev 632) @@ -1,68 +0,0 @@ -# Automatically added by dh_pycentral -if which pycentral >/dev/null 2>&1 && pycentral --help 2>/dev/null | grep -q pkgprepare; then - pycentral pkgprepare python-ogre <<PYEOF -[python-package] -format = 1 -python-version = 2.5 -[pycentral] -version = 0.6.1 -[files] -/usr/lib/python2.5/site-packages/ogre=d -/usr/lib/python2.5/site-packages/ogre/gui=d -/usr/lib/python2.5/site-packages/ogre/gui/CEGUI=d -/usr/lib/python2.5/site-packages/ogre/gui/CEGUI/_cegui_.so=f -/usr/lib/python2.5/site-packages/ogre/io=d -/usr/lib/python2.5/site-packages/ogre/io/OIS=d -/usr/lib/python2.5/site-packages/ogre/io/OIS/_ois_.so=f -/usr/lib/python2.5/site-packages/ogre/renderer=d -/usr/lib/python2.5/site-packages/ogre/renderer/OGRE=d -/usr/lib/python2.5/site-packages/ogre/renderer/OGRE/_ogre_.so=f -/usr/share/pyshared/ogre=d -/usr/share/pyshared/ogre/__init__.py=f -/usr/share/pyshared/ogre/gui=d -/usr/share/pyshared/ogre/gui/__init__.py=f -/usr/share/pyshared/ogre/gui/navi=d -/usr/share/pyshared/ogre/gui/navi/__init__.py=f -/usr/share/pyshared/ogre/gui/QuickGUI=d -/usr/share/pyshared/ogre/gui/QuickGUI/__init__.py=f -/usr/share/pyshared/ogre/gui/CEGUI=d -/usr/share/pyshared/ogre/gui/CEGUI/__init__.py=f -/usr/share/pyshared/ogre/gui/betagui=d -/usr/share/pyshared/ogre/gui/betagui/__init__.py=f -/usr/share/pyshared/ogre/io=d -/usr/share/pyshared/ogre/io/__init__.py=f -/usr/share/pyshared/ogre/io/OIS=d -/usr/share/pyshared/ogre/io/OIS/__init__.py=f -/usr/share/pyshared/ogre/renderer=d -/usr/share/pyshared/ogre/renderer/OGRE=d -/usr/share/pyshared/ogre/renderer/OGRE/__init__.py=f -/usr/share/pyshared/ogre/renderer/OGRE/sf_OIS.py=f -/usr/share/pyshared/ogre/renderer/OGRE/sf_utils.py=f -/usr/share/pyshared/ogre/renderer/OGRE/named_tuple.py=f -/usr/share/pyshared/ogre/renderer/OGRE/_ogre_exceptions_.py=f -/usr/share/pyshared/ogre/renderer/__init__.py=f -/usr/share/pyshared/ogre/addons=d -/usr/share/pyshared/ogre/addons/__init__.py=f -/usr/share/pyshared/ogre/addons/ofusion=d -/usr/share/pyshared/ogre/addons/ofusion/__init__.py=f -/usr/share/pyshared/ogre/addons/theora=d -/usr/share/pyshared/ogre/addons/theora/__init__.py=f -/usr/share/pyshared/ogre/addons/plib=d -/usr/share/pyshared/ogre/addons/plib/__init__.py=f -/usr/share/pyshared/ogre/addons/cadunetree=d -/usr/share/pyshared/ogre/addons/cadunetree/__init__.py=f -/usr/share/pyshared/ogre/addons/particleuniverse=d -/usr/share/pyshared/ogre/addons/particleuniverse/__init__.py=f -/usr/share/pyshared/ogre/addons/watermesh=d -/usr/share/pyshared/ogre/addons/watermesh/__init__.py=f -/usr/share/pyshared/ogre/sound=d -/usr/share/pyshared/ogre/sound/__init__.py=f -/usr/share/pyshared/ogre/sound/OgreAL=d -/usr/share/pyshared/ogre/sound/OgreAL/__init__.py=f -/usr/share/pyshared/Python_Ogre-1.1.a.egg-info=f -PYEOF -else - mkdir -p /var/lib/pycentral - echo python-ogre >> /var/lib/pycentral/delayed-pkgs -fi -# End automatically added section Deleted: trunk/python-ogre/debian/python-ogre.prerm.debhelper =================================================================== --- trunk/python-ogre/debian/python-ogre.prerm.debhelper 2008-07-02 08:50:50 UTC (rev 631) +++ trunk/python-ogre/debian/python-ogre.prerm.debhelper 2008-07-14 06:32:30 UTC (rev 632) @@ -1,38 +0,0 @@ -# Automatically added by dh_pycentral -if [ "$1" = remove ]; then -if which python >/dev/null 2>&1 && which pycentral >/dev/null 2>&1; then - pycentral pkgremove python-ogre -else - flist=$(tempfile) - slist=$(tempfile) - dpkg -L python-ogre | tee $flist | \ - while read n; do - case "$n" in - /usr/share/pyshared/*) - n2=${n#/usr/share/pyshared/*} - case "$n" in - *.py) echo "p $n";; - *) [ -d "$n" ] && echo "d $n2" || echo "f $n2" - esac - ;; - *) continue - esac - done > $slist - if [ -s $slist ]; then - for d in /usr/lib/python[0-9].[0-9]/????-packages; do - case "$d" in */python2.1/*|*/python2.2/*) continue; esac - while read t n; do - case "$t" in - p) rm -f $d/$n $d/${n}[co];; - d) rmdir $d/$n 2>/dev/null || true;; - *) rm -f $d/$n - esac - done < $slist - done - fi - awk '/\/usr\/share\/pyshared/ {next} /\.py$/ {print $0"c\n" $0"o"}' $flist \ - | xargs -r rm -f >&2 - rm -f $flist $slist -fi -fi -# End automatically added section Deleted: trunk/python-ogre/debian/python-ogre.substvars =================================================================== --- trunk/python-ogre/debian/python-ogre.substvars 2008-07-02 08:50:50 UTC (rev 631) +++ trunk/python-ogre/debian/python-ogre.substvars 2008-07-14 06:32:30 UTC (rev 632) @@ -1,3 +0,0 @@ -python:Versions=2.5 -python:Provides=python2.5-ogre -python:Depends=python-central (>= 0.6.1), python (>= 2.5), python (<< 2.6) Modified: trunk/python-ogre/debian/rules =================================================================== --- trunk/python-ogre/debian/rules 2008-07-02 08:50:50 UTC (rev 631) +++ trunk/python-ogre/debian/rules 2008-07-14 06:32:30 UTC (rev 632) @@ -10,13 +10,24 @@ #PYVER := $(shell $(PYTHON) -c 'import sys; print sys.version[:3]') PYVERS = 2.5 #$(shell pyversions -vr) -build: -# touch $@ -# python BuildModule.py -g -c ois -# python BuildModule.py -g -c cegui -# python BuildModule.py -g -c noise -# python BuildModule.py -g -c ogre -# python BuildModule.py -g -c ogreode +build: build-stamp +build-stamp: + # Core Modules + python BuildModule.py --usesystem -g -c ois + python BuildModule.py --usesystem -g -c cegui + python BuildModule.py --usesystem -g -c ogre + # Extra modules + python BuildModule.py --usesystem -g -c noise +# python BuildModule.py --usesystem -g -c ogreode + python BuildModule.py --usesystem -g -c betagui + python BuildModule.py --usesystem -g -c cadunetree + python BuildModule.py --usesystem -g -c caelum + python BuildModule.py --usesystem -g -c et + python BuildModule.py --usesystem -g -c plib + python BuildModule.py --usesystem -g -c ogreforests + python BuildModule.py --usesystem -g -c ogreal + python BuildModule.py --usesystem -g -c watermesh + touch $@-stamp build-python%: dh_testdir @@ -41,6 +52,10 @@ # Build architecture-independent files here. binary-indep: build install +# We have nothing to do here. + +# Build architecture-dependent files here. +binary-arch: build install dh_testdir dh_testroot dh_installchangelogs @@ -49,22 +64,19 @@ dh_compress -X.py dh_fixperms dh_installdeb + dh_shlibdeps dh_gencontrol dh_md5sums dh_builddeb -# Build architecture-dependent files here. -binary-arch: build install -# We have nothing to do by default. +#prep: +# # Build and install the lastest gccxml +# cd ..; python python-ogre/BuildModule.py -r -b gccxml +# # Build and install the lastest pygccxml +# cd ..; python python-ogre/BuildModule.py -r -b pygccxml +# # Build and install the extra boost stuff we need +# cd boost; fakeroot ./debian/rules binary-arch +# sudo dpkg --install libboost-python1.34.1-index*.deb -prep: - # Build and install the lastest gccxml - cd ..; python python-ogre/BuildModule.py -r -b gccxml - # Build and install the lastest pygccxml - cd ..; python python-ogre/BuildModule.py -r -b pygccxml - # Build and install the extra boost stuff we need - cd boost; fakeroot ./debian/rules binary-arch - sudo dpkg --install libboost-python1.34.1-index*.deb - binary: binary-indep binary-arch .PHONY: build clean binary-indep binary-arch binary install configure prep build-python2.5 Modified: trunk/python-ogre/debs/gccxml-debian/changelog =================================================================== --- trunk/python-ogre/debs/gccxml-debian/changelog 2008-07-02 08:50:50 UTC (rev 631) +++ trunk/python-ogre/debs/gccxml-debian/changelog 2008-07-14 06:32:30 UTC (rev 632) @@ -1,4 +1,4 @@ -gccxml (0.7.0+%%SHORTDATE%%-0) unstable; urgency=low +gccxml (0.7.0+cvs%%SHORTDATE%%-0) unstable; urgency=low * New cvs snapshot. Modified: trunk/python-ogre/debs/pygccxml-debian/control =================================================================== --- trunk/python-ogre/debs/pygccxml-debian/control 2008-07-02 08:50:50 UTC (rev 631) +++ trunk/python-ogre/debs/pygccxml-debian/control 2008-07-14 06:32:30 UTC (rev 632) @@ -4,12 +4,12 @@ Priority: optional Maintainer: Tim 'Mithro' Ansell <mi...@mi...> Build-Depends-Indep: python-central (>= 0.5.6), python-setuptools (>= 0.6b3-1), python-all -Build-Depends: debhelper (>= 5.0.38) +Build-Depends: debhelper (>= 5.0.38), gccxml (= 0.7.0+cvs%%SHORTDATE%%-0) Standards-Version: 3.7.2 Package: pygccxml Architecture: all -Depends: ${python:Depends}, gccxml +Depends: ${python:Depends}, gccxml (= 0.7.0+cvs%%SHORTDATE%%-0) XB-Python-Version: ${python:Versions} Description: pygccxml is a specialized XML reader that reads the output from GCCXML. Modified: trunk/python-ogre/debs/pyplusplus-debian/changelog =================================================================== --- trunk/python-ogre/debs/pyplusplus-debian/changelog 2008-07-02 08:50:50 UTC (rev 631) +++ trunk/python-ogre/debs/pyplusplus-debian/changelog 2008-07-14 06:32:30 UTC (rev 632) @@ -1,4 +1,4 @@ -pyplusplus (0.9.0+%%SHORTDATE%%-0) unstable; urgency=low +pyplusplus (0.9.0+svn%%SHORTDATE%%-0) unstable; urgency=low * First testing version. Modified: trunk/python-ogre/debs/pyplusplus-debian/control =================================================================== --- trunk/python-ogre/debs/pyplusplus-debian/control 2008-07-02 08:50:50 UTC (rev 631) +++ trunk/python-ogre/debs/pyplusplus-debian/control 2008-07-14 06:32:30 UTC (rev 632) @@ -4,12 +4,12 @@ Priority: optional Maintainer: Tim 'Mithro' Ansell <mi...@mi...> Build-Depends-Indep: python-central (>= 0.5.6), python-setuptools (>= 0.6b3-1), python-all -Build-Depends: debhelper (>= 5.0.38) +Build-Depends: debhelper (>= 5.0.38), pygccxml (= 0.9.0+svn%%SHORTDATE%%-0), libboost-python1.34.1-index-dev Standards-Version: 3.7.2 Package: pyplusplus Architecture: all -Depends: ${python:Depends}, pygccxml +Depends: ${python:Depends}, pygccxml (= 0.9.0+svn%%SHORTDATE%%-0), libboost-python1.34.1-index XB-Python-Version: ${python:Versions} Description: Py++ is a code generator for Boost.Python that simplifies writing Python bindings of a C/C++ library. The tool is implemented as a Python Modified: trunk/python-ogre/demos/PythonOgreConfig.py =================================================================== --- trunk/python-ogre/demos/PythonOgreConfig.py 2008-07-02 08:50:50 UTC (rev 631) +++ trunk/python-ogre/demos/PythonOgreConfig.py 2008-07-14 06:32:30 UTC (rev 632) @@ -1,41 +0,0 @@ -# -# a single config file that is imported 'first' by the Python-Ogre demos -# this is primarly used to manage Linux demos when we have binaries in non standard (safe) locations - -import os,sys - -######################################################################### -### Override this setting if you are using non standard locations - -libpath = "" - -######################################################################### - - -if os.name == 'nt': - libpath="" - pythonpath = "" -else: - if libpath == "" : # we need to find this ourselves - localpath = os.path.abspath(os.path.dirname(__file__) ) # assume that this module is in the ./demos directory - libpath = os.path.abspath(os.path.join(localpath,'../lib')) # so in the binary release the lib is one path back up - if not os.path.exists ( libpath ): #we must be running from the development environment - libpath = os.path.abspath(os.path.join(localpath,'../../root/usr/lib')) - if not os.path.exists ( libpath ): - ## should die here - print "**Problem finding libraries" - libpath=localpath - - ## path to the Python-Ogre modules - pythonpath = os.path.abspath(os.path.join(libpath, 'python2.5/site-packages') ) - ## and insert it into the system path - sys.path.insert(0,pythonpath) - - ## now we need to set the library path so the shared libraries can be found - try: - ldpath = os.environ['LD_LIBRARY_PATH'] - except: - ldpath="" - newldpath = libpath + ":" + ldpath - os.environ['LD_LIBRARY_PATH'] = newldpath - Property changes on: trunk/python-ogre/demos/ogre ___________________________________________________________________ Name: svn:ignore + *.log ogre.cfg Modified: trunk/python-ogre/environment.py =================================================================== --- trunk/python-ogre/environment.py 2008-07-02 08:50:50 UTC (rev 631) +++ trunk/python-ogre/environment.py 2008-07-14 06:32:30 UTC (rev 632) @@ -17,7 +17,7 @@ _LOGGING_ON = False _PreCompiled = True -_STABLE = False # set to true if using specific versions of CVS and SVN checkouts.. +_STABLE = True # set to true if using specific versions of CVS and SVN checkouts.. ## @@ -39,6 +39,9 @@ return True return False +def isDebian(): + return os.path.exists("/etc/debian_version") + def isMac(): if os.sys.platform == 'darwin': return True @@ -89,6 +92,10 @@ _SystemType = os.name ## nt or posix or mac _PlatformType = sys.platform ## win32, ?? +UseSystem = "--usesystem" in sys.argv or (os.environ.has_key('USESYSTEM') and eval(os.environ['USESYSTEM'].title())) +if "--usesystem" in sys.argv: + sys.argv.remove("--usesystem") + ## ## Now we load the user specific stuff ## @@ -101,8 +108,11 @@ log ( "Loaded Config (based on username) from %s" % (s )) except ImportError: try: - s= 'PythonOgreConfig_' + _SystemType ## + '.py' - + if UseSystem: + s= 'PythonOgreConfig_system' + else: + s= 'PythonOgreConfig_' + _SystemType ## + '.py' + Config = __import__( s ) _ConfigSet = True log ( "Loaded Config (based on systemtype) from %s" % (s)) @@ -152,8 +162,12 @@ Config.RPATH="" ## BIG assumption about where you want things put -ROOT = os.path.join(os.getcwd(),'root' ) -PREFIX = os.path.join(os.getcwd(),'root', 'usr' ) +if UseSystem: + ROOT = '/' + PREFIX = '/usr' +else: + ROOT = os.path.join(os.getcwd(),'root' ) + PREFIX = os.path.join(os.getcwd(),'root', 'usr' ) def unTarGz ( base, source ): @@ -182,10 +196,12 @@ active = True base = 'gccxml' if _STABLE: + source_version = "20080522" source = [ - [cvs, " -d :pserver:an...@ww...:/cvsroot/GCC_XML co -D 22052008 "+base, os.getcwd()] + [cvs, " -d :pserver:an...@ww...:/cvsroot/GCC_XML co -D 22May2008 "+base, os.getcwd()] ] else: + source_version = "20080627" source = [ [cvs, " -d :pserver:an...@ww...:/cvsroot/GCC_XML co -D 27June2008 "+base, os.getcwd()] ] @@ -265,21 +281,43 @@ active = True base = 'pygccxml' if _STABLE: + source_version = "1300" source = [ - [svn, " co -r 1300 http://pygccxml.svn.sourceforge.net/svnroot/pygccxml "+base, os.getcwd()] + [svn, " co -r 1300 http://pygccxml.svn.sourceforge.net/svnroot/pygccxml/pygccxml_dev "+base, os.getcwd()] ] else: + source_version = "1362" source = [ - [svn, " co -r 1362 http://pygccxml.svn.sourceforge.net/svnroot/pygccxml "+base, os.getcwd()] + [svn, " co -r 1362 http://pygccxml.svn.sourceforge.net/svnroot/pygccxml/pygccxml_dev "+base, os.getcwd()] ] if isLinux() or isMac() : buildCmds = [ [0,"python setup.py install --prefix="+ PREFIX , os.path.join (os.getcwd(), base, "pygccxml_dev") ], + ] + if isWindows(): + buildCmds = [ + [0,"python setup.py install " , os.path.join (os.getcwd(), base, "pygccxml_dev") ], + ] + + +class pyplusplus: + pythonModule = False + active = True + base = 'pyplusplus' + if _STABLE: + source = [ + [svn, " co -r 1300 http://pygccxml.svn.sourceforge.net/svnroot/pygccxml/pyplusplus_dev "+base, os.getcwd()] + ] + else: + source = [ + [svn, " co -r 1362 http://pygccxml.svn.sourceforge.net/svnroot/pygccxml/pyplusplus_dev "+base, os.getcwd()] + ] + if isLinux() or isMac() : + buildCmds = [ [0,"python setup.py install --prefix=" + PREFIX , os.path.join (os.getcwd(), base, "pyplusplus_dev") ] ] if isWindows(): buildCmds = [ - [0,"python setup.py install " , os.path.join (os.getcwd(), base, "pygccxml_dev") ], [0,"python setup.py install " , os.path.join (os.getcwd(), base, "pyplusplus_dev") ] ] @@ -289,7 +327,7 @@ pythonModule = False active = True if isLinux(): - base = 'Cg-2.0_May2008_x86' + base = 'Cg-2.0_May2008_x86' source = [ [wget, " http://developer.download.nvidia.com/cg/Cg_2.0/2.0.0015/"+base+".tgz",downloadPath] ] @@ -472,6 +510,19 @@ ] + +class boost_python_index: + active = True + version = "1.34.1" + pythonModule = False + ModuleName = "" + base = "boost-python-index" + if isLinux() or isMac(): + source = [ + ["cp",'-rf %s %s' % (os.path.join('python-ogre','boost'), base), os.getcwd()], + ] + buildCmds = [] + #################################################### @@ -483,9 +534,9 @@ class ogre: active = True pythonModule = True - if _STABLE: - version="1.4" - else: + if _STABLE: + version="1.4" + else: version = "1.7" name='ogre' ModuleName='OGRE' @@ -529,10 +580,10 @@ CCFLAGS = ' -DBOOST_PYTHON_MAX_ARITY=19 ' LINKFLAGS = '' externalFiles=['OgreMain.dll', 'OgreGuiRender.dll', Config.LIB_Boost+'.dll'] - elif isLinux(): + elif isLinux(): version = "1.4" #### UGLY OVERRIDE AT MOMENT... libs=[Config.LIB_Boost, 'OgreMain' ] #, 'OgreGUIRenderer', 'CEGUIBase'] - base = "ogre-v1-4-9" + base = "ogre-v1-4-9" source = [ [wget, "http://downloads.sourceforge.net/ogre/"+base+".tar.bz2",downloadPath], ] @@ -555,8 +606,8 @@ include_dirs = [ Config.PATH_Boost , Config.PATH_INCLUDE_Ogre ] - CCFLAGS = '' ## -DBOOST_PYTHON_MAX_ARITY=19' - LINKFLAGS = '' + CCFLAGS = ' -DBOOST_PYTHON_MAX_ARITY=19' + LINKFLAGS = '-lboost_python_index-gcc42-1_34_1' elif isMac(): base = "ogre-linux_osx-v1-4-9" basedep = "OgreDependenciesOSX_20070929" @@ -605,7 +656,7 @@ source=[] if isLinux(): base = "ois" - source=[ + source=[ [wget, "http://downloads.sourceforge.net/wgois/ois_1.2.0.tar.gz", downloadPath] ] # buildCmds = [ @@ -657,6 +708,8 @@ #externalFiles = ['OIS.dll'] if os.sys.platform == 'darwin': LINKFLAGS = '-framework Python -framework Carbon' + else: + LINKFLAGS = '-lboost_python_index-gcc42-1_34_1' class ogrerefapp: active = True @@ -803,6 +856,7 @@ CCFLAGS = ' -DBOOST_PYTHON_MAX_ARITY=19' ModuleName = 'CEGUI' CheckIncludes = ['boost/python.hpp', 'Ogre.h', 'CEGUI.h', 'OgreCEGUIRenderer.h'] + LINKFLAGS = '-lboost_python_index-gcc42-1_34_1' class ode: Property changes on: trunk/python-ogre/generated ___________________________________________________________________ Name: svn:ignore - Release python-ogre.vcproj python-ogre.ncb python-ogre.sln python-ogre.suo *.ncb *.suo + * Property changes on: trunk/python-ogre/packages_2.5 ___________________________________________________________________ Name: svn:ignore + Property changes on: trunk/python-ogre/packages_2.5/ogre/addons ___________________________________________________________________ Name: svn:ignore + _*_.so Property changes on: trunk/python-ogre/packages_2.5/ogre/addons/cadunetree ___________________________________________________________________ Name: svn:ignore + _*_.so Property changes on: trunk/python-ogre/packages_2.5/ogre/addons/caelum ___________________________________________________________________ Name: svn:ignore + _*_.so Property changes on: trunk/python-ogre/packages_2.5/ogre/addons/et ___________________________________________________________________ Name: svn:ignore + _*_.so Property changes on: trunk/python-ogre/packages_2.5/ogre/addons/noise ___________________________________________________________________ Name: svn:ignore + _*_.so Property changes on: trunk/python-ogre/packages_2.5/ogre/addons/ofusion ___________________________________________________________________ Name: svn:ignore + _*_.so Property changes on: trunk/python-ogre/packages_2.5/ogre/addons/ogredshow ___________________________________________________________________ Name: svn:ignore + _*_.so Property changes on: trunk/python-ogre/packages_2.5/ogre/addons/ogreforests ___________________________________________________________________ Name: svn:ignore + _*_.so Property changes on: trunk/python-ogre/packages_2.5/ogre/addons/ogrevideoffmpeg ___________________________________________________________________ Name: svn:ignore + _*_.so Property changes on: trunk/python-ogre/packages_2.5/ogre/addons/particleuniverse ___________________________________________________________________ Name: svn:ignore + _*_.so Property changes on: trunk/python-ogre/packages_2.5/ogre/addons/plib ___________________________________________________________________ Name: svn:ignore + _*_.so Property changes on: trunk/python-ogre/packages_2.5/ogre/addons/theora ___________________________________________________________________ Name: svn:ignore + _*_.so Property changes on: trunk/python-ogre/packages_2.5/ogre/addons/watermesh ___________________________________________________________________ Name: svn:ignore + _*_.so Property changes on: trunk/python-ogre/packages_2.5/ogre/gui/CEGUI ___________________________________________________________________ Name: svn:ignore + _*_.so Modified: trunk/python-ogre/packages_2.5/ogre/gui/CEGUI/__init__.py =================================================================== --- trunk/python-ogre/packages_2.5/ogre/gui/CEGUI/__init__.py 2008-07-02 08:50:50 UTC (rev 631) +++ trunk/python-ogre/packages_2.5/ogre/gui/CEGUI/__init__.py 2008-07-14 06:32:30 UTC (rev 632) @@ -5,6 +5,14 @@ ## we need the path for additional CEGUI dll's if sys.platform == 'win32': os.environ['PATH'] += ';' + __path__[0] - + +elif sys.platform == "linux2": + ## We need to import the library + import ctypes + ctypes.CDLL("libCEGUIBase.so.1", ctypes.RTLD_GLOBAL) + from _cegui_ import * +## Make sure we are using a sane XML parser +System.setDefaultXMLParserName("TinyXMLParser") + warnings.resetwarnings( ) Property changes on: trunk/python-ogre/packages_2.5/ogre/gui/QuickGUI ___________________________________________________________________ Name: svn:ignore + _*_.so Property changes on: trunk/python-ogre/packages_2.5/ogre/gui/betagui ___________________________________________________________________ Name: svn:ignore + _*_.so Property changes on: trunk/python-ogre/packages_2.5/ogre/gui/navi ___________________________________________________________________ Name: svn:ignore + _*_.so Property changes on: trunk/python-ogre/packages_2.5/ogre/io/OIS ___________________________________________________________________ Name: svn:ignore + _*_.so Property changes on: trunk/python-ogre/packages_2.5/ogre/physics/NxOgre ___________________________________________________________________ Name: svn:ignore + _*_.so Property changes on: trunk/python-ogre/packages_2.5/ogre/physics/ODE ___________________________________________________________________ Name: svn:ignore + _*_.so Property changes on: trunk/python-ogre/packages_2.5/ogre/physics/OgreBulletC ___________________________________________________________________ Name: svn:ignore + _*_.so Property changes on: trunk/python-ogre/packages_2.5/ogre/physics/OgreBulletD ___________________________________________________________________ Name: svn:ignore + _*_.so Property changes on: trunk/python-ogre/packages_2.5/ogre/physics/OgreNewt ___________________________________________________________________ Name: svn:ignore + _*_.so Property changes on: trunk/python-ogre/packages_2.5/ogre/physics/OgreOde ___________________________________________________________________ Name: svn:ignore + _*_.so Property changes on: trunk/python-ogre/packages_2.5/ogre/physics/OgreRefApp ___________________________________________________________________ Name: svn:ignore + _*_.so Property changes on: trunk/python-ogre/packages_2.5/ogre/physics/Opcode ___________________________________________________________________ Name: svn:ignore + _*_.so Property changes on: trunk/python-ogre/packages_2.5/ogre/physics/PhysX ___________________________________________________________________ Name: svn:ignore + _*_.so Property changes on: trunk/python-ogre/packages_2.5/ogre/physics/bullet ___________________________________________________________________ Name: svn:ignore + _*_.so Property changes on: trunk/python-ogre/packages_2.5/ogre/renderer/OGRE ___________________________________________________________________ Name: svn:ignore + _*_.so Property changes on: trunk/python-ogre/packages_2.5/ogre/sound/OgreAL ___________________________________________________________________ Name: svn:ignore + _*_.so Added: trunk/python-ogre/scripts/build-deb.sh =================================================================== --- trunk/python-ogre/scripts/build-deb.sh (rev 0) +++ trunk/python-ogre/scripts/build-deb.sh 2008-07-14 06:32:30 UTC (rev 632) @@ -0,0 +1,44 @@ +#! /bin/sh + +# Run sudo so that we have the permissions to do things +sudo true + +# The following modules are provided by the operating system +sudo apt-get install \ + cmake \ + scons \ + nvidia-cg-toolkit \ + zziplib-bin \ + libboost-dev \ + libboost-python-dev \ + libfreeimage-dev \ + libois-dev \ + libogre-dev \ + libceguiogre-dev + +# Things we need to build ourself + +# The extra boost support module +python python-ogre/BuildModule.py -r --build-deb boost_python_index || exit +sudo true +python python-ogre/BuildModule.py --install-deb boost_python_index || exit +# The gccxml version is important to us (but only during build) +python python-ogre/BuildModule.py -r --build-deb gccxml || exit +sudo true +python python-ogre/BuildModule.py --install-deb gccxml || exit +# The pygccxml is dependent on the gccxml version we just built +python python-ogre/BuildModule.py -r --build-deb pygccxml || exit +sudo true +python python-ogre/BuildModule.py --install-deb pygccxml || exit + +#python python-ogre/BuildModule.py -r --build-deb boost || exit + +# Build our custom extension to boost-indexing which pyplusplus needs +python python-ogre/BuildModule.py -r --build-deb pyplusplus || exit +sudo true +python python-ogre/BuildModule.py --install-deb pyplusplus || exit + +# Generate the python-ogre package +cd python-ogre +dpkg-checkbuilddeps || exit +fakeroot ./debian/rules binary Property changes on: trunk/python-ogre/scripts/build-deb.sh ___________________________________________________________________ Name: svn:executable + * This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |