From 3bb82a27fc61b787ab83145f9a7962c14e7ca769 Mon Sep 17 00:00:00 2001 From: Nathan Letwory Date: Sat, 4 Feb 2006 14:15:10 +0000 Subject: == SCons == * This commit is all of the rewrite work done on the SCons system. For documentation see doc/blender-scons.txt and doc/blender-scons-dev.txt. Also http://mediawiki.blender.org/index.php/BlenderDev/SconsRefactoring contains valuable information, along with what still needs to be done. - linux, os x and windows compile now. - files are compiled to BF_INSTALLDIR (see config/(platform)-config.py) - NOTE: Jean-Luc P will commit sometime during the weekend proper appit() for OS X. For now, copy the resulting binary to an existing .app bundle. - features: - cleaner structure for better maintenance - cleaner output during compile - better handling of build options - general overall speed increase - see the wiki for more info Cygwin, FreeBSD and Solaris systems still need work. For these systems: 1) copy a config/(platform)-config.py to ie. config/cygwin-config.py 2) set the proper defaults for your platform 3) mail me at jesterking at letwory dot net with you configuration. if you need any modifications to the system, do send a patch, too. I'll be giving first-aid today and tomorrow, after that it'll be all regular development work :) /Nathan --- source/gameengine/Ketsji/SConscript | 153 +++++++----------------------------- 1 file changed, 30 insertions(+), 123 deletions(-) (limited to 'source/gameengine/Ketsji/SConscript') diff --git a/source/gameengine/Ketsji/SConscript b/source/gameengine/Ketsji/SConscript index 26c982dc4f9..375f2679e21 100644 --- a/source/gameengine/Ketsji/SConscript +++ b/source/gameengine/Ketsji/SConscript @@ -1,126 +1,33 @@ #!/usr/bin/python import sys -Import ('user_options_dict') -Import ('library_env') - -ketsji_env = library_env.Copy () - -source_files = ['BL_Shader.cpp', - 'BL_Material.cpp', - 'BL_Texture.cpp', - 'KX_WorldIpoController.cpp', - 'KX_WorldInfo.cpp', - 'KX_VisibilityActuator.cpp', - 'KX_VertexProxy.cpp', - 'KX_TrackToActuator.cpp', - 'KX_TouchSensor.cpp', - 'KX_TouchEventManager.cpp', - 'KX_TimeLogger.cpp', - 'KX_TimeCategoryLogger.cpp', - 'KX_SoundActuator.cpp', - 'KX_SG_NodeRelationships.cpp', - 'KX_SG_BoneParentNodeRelationship.cpp', - 'KX_SceneActuator.cpp', - 'KX_Scene.cpp', - 'KX_ScalingInterpolator.cpp', - 'KX_ScalarInterpolator.cpp', - 'KX_SCA_ReplaceMeshActuator.cpp', - 'KX_SCA_EndObjectActuator.cpp', - 'KX_SCA_AddObjectActuator.cpp', - 'KX_RaySensor.cpp', - 'KX_RayEventManager.cpp', - 'KX_RayCast.cpp', - 'KX_RadarSensor.cpp', - 'KX_PyMath.cpp', - 'KX_PythonInit.cpp', - 'KX_PyConstraintBinding.cpp', - 'KX_PositionInterpolator.cpp', - 'KX_PolygonMaterial.cpp', - 'KX_PhysicsObjectWrapper.cpp', - 'KX_OrientationInterpolator.cpp', - 'KX_ObjectActuator.cpp', - 'KX_ObColorIpoSGController.cpp', - 'KX_NearSensor.cpp', - 'KX_MouseFocusSensor.cpp', - 'KX_MotionState.cpp', - 'KX_MeshProxy.cpp', - 'KX_LightIpoSGController.cpp', - 'KX_Light.cpp', - 'KX_KetsjiEngine.cpp', - 'KX_IpoActuator.cpp', - 'KX_IPO_SGController.cpp', - 'KX_IPhysicsController.cpp', - 'KX_GameObject.cpp', - 'KX_GameActuator.cpp', - 'KX_EmptyObject.cpp', - 'KX_ConvertPhysicsObjects.cpp', - 'KX_ConstraintWrapper.cpp', - 'KX_ConstraintActuator.cpp', - 'KX_CDActuator.cpp', - 'KX_CameraIpoSGController.cpp', - 'KX_CameraActuator.cpp', - 'KX_Camera.cpp', - 'KX_BulletPhysicsController.cpp', - 'KX_BlenderMaterial.cpp', - 'KX_MaterialIpoController.cpp', - 'KX_VehicleWrapper.cpp', - ] - -if user_options_dict['USE_PHYSICS'] == 'solid': - source_files += ['KX_SumoPhysicsController.cpp'] - ketsji_env.Append (CPPPATH = user_options_dict['SOLID_INCLUDE']) - -if user_options_dict['USE_PHYSICS'] == 'ode': - source_files += ['KX_OdePhysicsController.cpp'] - ketsji_env.Append (CPPPATH = user_options_dict['SOLID_INCLUDE']) - - -ketsji_env.Append (CPPPATH = ['.', - '#source/kernel/gen_system', - '#intern/string', - '#intern/guardedalloc', - '#source/gameengine/Rasterizer/RAS_OpenGLRasterizer', - '#intern/bmfont', - '#intern/SoundSystem', - '#intern/SoundSystem/include', - '#intern/SoundSystem/openal', - '#intern/SoundSystem/dummy', - '#intern/SoundSystem/intern', - '#source/gameengine/Converter', - '#source/gameengine/BlenderRoutines', - '#source/blender/imbuf', - '#intern/moto/include', - '#source/gameengine/Ketsji', - '#source/gameengine/Ketsji/KXNetwork', - '#source/blender/blenlib', - '#source/blender/blenkernel', - '#source/blender', - '#source/blender/include', - '#source/blender/makesdna', - '#source/blender/python', - '#source/gameengine/Rasterizer', - '#source/gameengine/GameLogic', - '#source/gameengine/Expressions', - '#source/gameengine/Network', - '#source/gameengine/SceneGraph', - '#source/gameengine/Physics/common', - '#source/gameengine/Physics/Bullet', - '#source/gameengine/Physics/BlOde', - '#source/gameengine/Physics/Dummy', - '#source/gameengine/Physics/Sumo', - '#source/gameengine/Physics/Sumo/include', - '#source/gameengine/Physics/Sumo/Fuzzics/include', - '#source/gameengine/Network/LoopBackNetwork', - '#source/blender/misc', - '#source/blender/blenloader' - ]) - -if sys.platform == 'win32': - ketsji_env.Append (CXXFLAGS = ['/GR']) - ketsji_env.Append ( CCFLAGS =['/Ox']) -ketsji_env.Append (CPPPATH = user_options_dict['PYTHON_INCLUDE']) -ketsji_env.Append (CPPPATH = user_options_dict['SDL_INCLUDE']) -ketsji_env.Append (CPPPATH = user_options_dict['BULLET_INCLUDE']) - -ketsji_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/KX_ketsji', source=source_files) +Import ('env') + +sources = env.Glob('*.cpp') + +incs = '. #source/kernel/gen_system #intern/string #intern/guardedalloc' +incs += ' #source/gameengine/Rasterizer/RAS_OpenGLRasterizer #intern/bmfont' +incs += ' #intern/SoundSystem #intern/SoundSystem/include #intern/SoundSystem/openal' +incs += ' #intern/SoundSystem/dummy #intern/SoundSystem/intern #source/gameengine/Converter' +incs += ' #source/gameengine/BlenderRoutines #source/blender/imbuf #intern/moto/include' +incs += ' #source/gameengine/Ketsji #source/gameengine/Ketsji/KXNetwork #source/blender/blenlib' +incs += ' #source/blender/blenkernel #source/blender #source/blender/include' +incs += ' #source/blender/makesdna #source/blender/python #source/gameengine/Rasterizer' +incs += ' #source/gameengine/GameLogic #source/gameengine/Expressions #source/gameengine/Network' +incs += ' #source/gameengine/SceneGraph #source/gameengine/Physics/common #source/gameengine/Physics/Bullet' +incs += ' #source/gameengine/Physics/BlOde #source/gameengine/Physics/Dummy' +incs += ' #source/gameengine/Physics/Sumo #source/gameengine/Physics/Sumo/include' +incs += ' #source/gameengine/Physics/Sumo/Fuzzics/include #source/gameengine/Network/LoopBackNetwork' +incs += ' #source/blender/misc #source/blender/blenloader' + +#TODO: +#if sys.platform == 'win32': +# ketsji_env.Append (CXXFLAGS = ['/GR']) +# ketsji_env.Append ( CCFLAGS =['/Ox']) + +incs += ' ' + env['BF_SOLID_INC'] +incs += ' ' + env['BF_PYTHON_INC'] +incs += ' ' + env['BF_SDL_INC'] +incs += ' ' + env['BF_BULLET_INC'] + +env.BlenderLib ( 'KX_ketsji', sources, Split(incs), [], libtype='game', priority=25 ) -- cgit v1.2.3