forked from bartvdbraak/blender
00291b5cf4
[SCons] Build with Solid as default when enabling the gameengine in the build process [SCons] Build solid and qhull from the extern directory and link statically against them That was about it. There are a few things that needs double checking: * Makefiles * Projectfiles * All the other systems than Linux and Windows on which the build (with scons) has been successfully tested.
69 lines
2.3 KiB
Python
69 lines
2.3 KiB
Python
import sys
|
|
solid_env = Environment()
|
|
|
|
# Import the C flags set in the SConstruct file
|
|
#Import ('cflags')
|
|
#Import ('cxxflags')
|
|
#Import ('defines')
|
|
Import ('user_options_dict')
|
|
defines = ['USE_DOUBLES','QHULL', '_LIB']
|
|
cflags = []
|
|
cxxflags = []
|
|
|
|
if sys.platform=='win32':
|
|
defines += ['WIN32','NDEBUG', '_WINDOWS', '_LIB']
|
|
cflags += ['/MT', '/W3', '/GX', '/O2']
|
|
elif sys.platform=='linux2' or sys.platform=='linux-i386':
|
|
defines += ['NDEBUG']
|
|
cflags += ['-O2']
|
|
else:
|
|
print "################################################"
|
|
print
|
|
print "Check if solid builds on your platform correctly"
|
|
print "Add your platform specific defines"
|
|
print "and cflags / cxxflags to the"
|
|
print "extern/solid/SConscript file"
|
|
|
|
solid_env.Append (CCFLAGS = cflags)
|
|
solid_env.Append (CPPFLAGS = cxxflags)
|
|
|
|
solid_env.Append (CPPDEFINES = defines)
|
|
|
|
solid_sources = ['src/DT_C-api.cpp',
|
|
'src/DT_Encounter.cpp',
|
|
'src/DT_Object.cpp',
|
|
'src/DT_RespTable.cpp',
|
|
'src/DT_Scene.cpp']
|
|
|
|
convex_sources = ['src/convex/DT_Accuracy.cpp',
|
|
'src/convex/DT_Box.cpp',
|
|
'src/convex/DT_Cone.cpp',
|
|
'src/convex/DT_Convex.cpp',
|
|
'src/convex/DT_Cylinder.cpp',
|
|
'src/convex/DT_Facet.cpp',
|
|
'src/convex/DT_LineSegment.cpp',
|
|
'src/convex/DT_PenDepth.cpp',
|
|
'src/convex/DT_Point.cpp',
|
|
'src/convex/DT_Polyhedron.cpp',
|
|
'src/convex/DT_Polytope.cpp',
|
|
'src/convex/DT_Sphere.cpp',
|
|
'src/convex/DT_Triangle.cpp']
|
|
|
|
complex_sources = ['src/complex/DT_BBoxTree.cpp',
|
|
'src/complex/DT_Complex.cpp']
|
|
|
|
broad_sources = ['src/broad/BP_C-api.cpp',
|
|
'src/broad/BP_EndpointList.cpp',
|
|
'src/broad/BP_Proxy.cpp',
|
|
'src/broad/BP_Scene.cpp']
|
|
|
|
solid_env.Append (CPPPATH = ['include',
|
|
'src',
|
|
'src/broad',
|
|
'src/complex',
|
|
'src/convex',
|
|
'../qhull/include'])
|
|
source_files = solid_sources + convex_sources + complex_sources + broad_sources
|
|
|
|
solid_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/extern_solid', source=source_files)
|