== 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
This commit is contained in:
1569
SConstruct
1569
SConstruct
File diff suppressed because it is too large
Load Diff
149
config/darwin-config.py
Normal file
149
config/darwin-config.py
Normal file
@@ -0,0 +1,149 @@
|
|||||||
|
LCGDIR = '#../lib/darwin-6.1-powerpc'
|
||||||
|
BF_PYTHON = '/Library/Frameworks/Python.framework/Versions/'
|
||||||
|
BF_PYTHON_VERSION = '2.4'
|
||||||
|
BF_PYTHON_INC = BF_PYTHON + BF_PYTHON_VERSION + '/include/python' + BF_PYTHON_VERSION
|
||||||
|
BF_PYTHON_BINARY = BF_PYTHON + BF_PYTHON_VERSION +'/bin/python'+BF_PYTHON_VERSION
|
||||||
|
BF_PYTHON_LIB = ''
|
||||||
|
BF_PYTHON_LIBPATH = '/Library/Frameworks/Python.framework/Versions/2.4/lib/python2.4/config'
|
||||||
|
BF_PYTHON_LINKFLAGS = '-u __dummy -u _PyMac_Error -framework System -framework Python'
|
||||||
|
|
||||||
|
WITH_BF_OPENAL = 'true'
|
||||||
|
BF_OPENAL = LCGDIR + '/openal'
|
||||||
|
BF_OPENAL_INC = BF_OPENAL + '/include'
|
||||||
|
BF_OPENAL_LIB = 'openal'
|
||||||
|
BF_OPENAL_LIBPATH = BF_OPENAL + '/lib'
|
||||||
|
|
||||||
|
WITH_BF_SDL = 'true'
|
||||||
|
BF_SDL = LCGDIR + '/sdl' #$(shell sdl-config --prefix)
|
||||||
|
BF_SDL_INC = BF_SDL + '/include' #$(shell $(BF_SDL)/bin/sdl-config --cflags)
|
||||||
|
BF_SDL_LIB = 'SDL' #BF_SDL #$(shell $(BF_SDL)/bin/sdl-config --libs) -lSDL_mixer
|
||||||
|
BF_SDL_LIBPATH = BF_SDL + '/lib'
|
||||||
|
|
||||||
|
WITH_BF_FMOD = 'false'
|
||||||
|
BF_FMOD = LCGDIR + '/fmod'
|
||||||
|
|
||||||
|
WITH_BF_OPENEXR = 'true'
|
||||||
|
BF_OPENEXR = '/usr/local'
|
||||||
|
BF_OPENEXR_INC = BF_OPENEXR + '/include/OpenEXR'
|
||||||
|
BF_OPENEXR_LIB = ' Iex Half IlmImf Imath '
|
||||||
|
|
||||||
|
|
||||||
|
WITH_BF_JPEG = 'true'
|
||||||
|
BF_JPEG = LCGDIR + '/jpeg'
|
||||||
|
BF_JPEG_INC = BF_JPEG + '/include'
|
||||||
|
BF_JPEG_LIB = 'jpeg'
|
||||||
|
BF_JPEG_LIBPATH = BF_JPEG + '/lib'
|
||||||
|
|
||||||
|
WITH_BF_PNG = 'true'
|
||||||
|
BF_PNG = LCGDIR + '/png'
|
||||||
|
BF_PNG_INC = BF_PNG + '/include'
|
||||||
|
BF_PNG_LIB = 'png'
|
||||||
|
BF_PNG_LIBPATH = BF_PNG + '/lib'
|
||||||
|
|
||||||
|
WITH_BF_TIFF = 'true'
|
||||||
|
BF_TIFF = LCGDIR + '/tiff'
|
||||||
|
BF_TIFF_INC = BF_TIFF + '/include'
|
||||||
|
BF_TIFF_LIB = 'tiff'
|
||||||
|
BF_TIFF_LIBPATH = BF_TIFF + '/lib'
|
||||||
|
|
||||||
|
WITH_BF_ZLIB = 'true'
|
||||||
|
BF_ZLIB = '/usr'
|
||||||
|
BF_ZLIB_INC = BF_ZLIB + '/include'
|
||||||
|
BF_ZLIB_LIB = 'z'
|
||||||
|
|
||||||
|
WITH_BF_GETTEXT = 'true'
|
||||||
|
BF_GETTEXT = LCGDIR + '/gettext'
|
||||||
|
BF_GETTEXT_INC = BF_GETTEXT + '/include'
|
||||||
|
BF_GETTEXT_LIB = 'intl'
|
||||||
|
BF_GETTEXT_LIBPATH = BF_GETTEXT + '/lib'
|
||||||
|
|
||||||
|
WITH_BF_FTGL = 'true'
|
||||||
|
BF_FTGL = '#extern/bFTGL'
|
||||||
|
BF_FTGL_INC = BF_FTGL + '/include'
|
||||||
|
BF_FTGL_LIB = 'extern_ftgl'
|
||||||
|
|
||||||
|
WITH_BF_GAMEENGINE='true'
|
||||||
|
|
||||||
|
WITH_BF_ODE = 'false'
|
||||||
|
BF_ODE = LCGDIR + '/ode'
|
||||||
|
BF_ODE_INC = BF_ODE + '/include'
|
||||||
|
BF_ODE_LIB = BF_ODE + '/lib/libode.a'
|
||||||
|
|
||||||
|
WITH_BF_BULLET = 'true'
|
||||||
|
BF_BULLET = '#extern/bullet'
|
||||||
|
BF_BULLET_INC = BF_BULLET + '/LinearMath ' + BF_BULLET + '/BulletDynamics ' + BF_BULLET + '/Bullet'
|
||||||
|
BF_BULLET_LIB = 'extern_bullet'
|
||||||
|
|
||||||
|
BF_SOLID = '#extern/solid'
|
||||||
|
BF_SOLID_INC = BF_SOLID
|
||||||
|
BF_SOLID_LIB = 'extern_solid'
|
||||||
|
|
||||||
|
#WITH_BF_NSPR = 'true'
|
||||||
|
#BF_NSPR = $(LCGDIR)/nspr
|
||||||
|
#BF_NSPR_INC = -I$(BF_NSPR)/include -I$(BF_NSPR)/include/nspr
|
||||||
|
#BF_NSPR_LIB =
|
||||||
|
|
||||||
|
# Uncomment the following line to use Mozilla inplace of netscape
|
||||||
|
#CPPFLAGS += -DMOZ_NOT_NET
|
||||||
|
# Location of MOZILLA/Netscape header files...
|
||||||
|
#BF_MOZILLA = $(LCGDIR)/mozilla
|
||||||
|
#BF_MOZILLA_INC = -I$(BF_MOZILLA)/include/mozilla/nspr -I$(BF_MOZILLA)/include/mozilla -I$(BF_MOZILLA)/include/mozilla/xpcom -I$(BF_MOZILLA)/include/mozilla/idl
|
||||||
|
#BF_MOZILLA_LIB =
|
||||||
|
# Will fall back to look in BF_MOZILLA_INC/nspr and BF_MOZILLA_LIB
|
||||||
|
# if this is not set.
|
||||||
|
#
|
||||||
|
# Be paranoid regarding library creation (do not update archives)
|
||||||
|
#BF_PARANOID = 'true'
|
||||||
|
|
||||||
|
# enable freetype2 support for text objects
|
||||||
|
WITH_BF_FREETYPE = 'true'
|
||||||
|
BF_FREETYPE = LCGDIR + '/freetype'
|
||||||
|
BF_FREETYPE_INC = BF_FREETYPE + '/include ' + BF_FREETYPE + '/include/freetype2'
|
||||||
|
BF_FREETYPE_LIB = 'freetype'
|
||||||
|
BF_FREETYPE_LIBPATH = BF_FREETYPE + '/lib'
|
||||||
|
|
||||||
|
WITH_BF_QUICKTIME = 'false' # -DWITH_QUICKTIME
|
||||||
|
|
||||||
|
# Mesa Libs should go here if your using them as well....
|
||||||
|
WITH_BF_OPENGL = 'true'
|
||||||
|
BF_OPENGL_LIB = 'GL GLU'
|
||||||
|
BF_OPENGL_LIBPATH = '/System/Library/Frameworks/OpenGL.framework/Libraries'
|
||||||
|
BF_OPENGL_LINKFLAGS = '-framework OpenGL'
|
||||||
|
|
||||||
|
##
|
||||||
|
##CC = gcc
|
||||||
|
##CCC = g++
|
||||||
|
##ifeq ($CPU),alpha)
|
||||||
|
## CFLAGS += -pipe -fPIC -funsigned-char -fno-strict-aliasing -mieee
|
||||||
|
|
||||||
|
CFLAGS = ['-pipe','-fPIC','-funsigned-char','-fno-strict-aliasing']
|
||||||
|
|
||||||
|
CPPFLAGS = ['-DXP_UNIX']
|
||||||
|
CCFLAGS = ['-pipe','-fPIC','-funsigned-char','-fno-strict-aliasing']
|
||||||
|
PLATFORM_LINKFLAGS = '-framework CoreServices -framework Foundation -framework IOKit -framework AppKit -framework Carbon -framework AGL -framework AudioUnit -framework AudioToolbox -framework CoreAudio -framework QuickTime'
|
||||||
|
REL_CFLAGS = ' -O2 '
|
||||||
|
REL_CCFLAGS = ' -O2 '
|
||||||
|
##BF_DEPEND = 'true'
|
||||||
|
##
|
||||||
|
##AR = ar
|
||||||
|
##ARFLAGS = ruv
|
||||||
|
##ARFLAGSQUIET = ru
|
||||||
|
##
|
||||||
|
C_WARN = ' -Wall -W -Wshadow -Wpointer-arith -Wbad-function-cast -Wcast-qual -Wcast-align -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Wredundant-decls -Wno-long-double'
|
||||||
|
|
||||||
|
CC_WARN = ' -Wall -W -Wshadow -Wpointer-arith -Wcast-qual -Wcast-align -Wredundant-decls -Wreorder -Wctor-dtor-privacy -Wnon-virtual-dtor -Wold-style-cast -Woverloaded-virtual -Wsign-promo -Wsynth -Wno-long-double'
|
||||||
|
|
||||||
|
##FIX_STUBS_WARNINGS = -Wno-unused
|
||||||
|
|
||||||
|
LLIBS = 'stdc++'
|
||||||
|
##LOPTS = --dynamic
|
||||||
|
##DYNLDFLAGS = -shared $(LDFLAGS)
|
||||||
|
|
||||||
|
BF_PROFILE_FLAGS = ' -pg -g '
|
||||||
|
BF_PROFILE = 'false'
|
||||||
|
|
||||||
|
BF_DEBUG = 'false'
|
||||||
|
BF_DEBUG_FLAGS = ''
|
||||||
|
|
||||||
|
BF_BUILDDIR='../build/darwin'
|
||||||
|
BF_INSTALLDIR='../install/darwin'
|
142
config/linux2-config.py
Normal file
142
config/linux2-config.py
Normal file
@@ -0,0 +1,142 @@
|
|||||||
|
LCGDIR = '../lib/linux2'
|
||||||
|
BF_PYTHON = '/usr'
|
||||||
|
BF_PYTHON_VERSION = '2.4'
|
||||||
|
BF_PYTHON_INC = BF_PYTHON + '/include/python' + BF_PYTHON_VERSION
|
||||||
|
BF_PYTHON_BINARY = BF_PYTHON+'/bin/python'+BF_PYTHON_VERSION
|
||||||
|
BF_PYTHON_LIB = 'python' + BF_PYTHON_VERSION #BF_PYTHON+'/lib/python'+BF_PYTHON_VERSION+'/config/libpython'+BF_PYTHON_VERSION+'.a'
|
||||||
|
|
||||||
|
WITH_BF_OPENAL = 'true'
|
||||||
|
BF_OPENAL = '/usr'
|
||||||
|
BF_OPENAL_INC = BF_OPENAL+'/include'
|
||||||
|
BF_OPENAL_LIB = 'openal'
|
||||||
|
|
||||||
|
WITH_BF_SDL = 'true'
|
||||||
|
BF_SDL = '/usr' #$(shell sdl-config --prefix)
|
||||||
|
BF_SDL_INC = BF_SDL + '/include/SDL' #$(shell $(BF_SDL)/bin/sdl-config --cflags)
|
||||||
|
BF_SDL_LIB = 'SDL' #BF_SDL #$(shell $(BF_SDL)/bin/sdl-config --libs) -lSDL_mixer
|
||||||
|
|
||||||
|
WITH_BF_FMOD = 'false'
|
||||||
|
BF_FMOD = LCGDIR + '/fmod'
|
||||||
|
|
||||||
|
WITH_BF_OPENEXR = 'true'
|
||||||
|
BF_OPENEXR = '/usr'
|
||||||
|
BF_OPENEXR_INC = BF_OPENEXR + '/include/OpenEXR'
|
||||||
|
BF_OPENEXR_LIB = ' Iex Half IlmImf Imath '
|
||||||
|
|
||||||
|
WITH_BF_JPEG = 'true'
|
||||||
|
BF_JPEG = '/usr'
|
||||||
|
BF_JPEG_INC = BF_JPEG + '/include'
|
||||||
|
BF_JPEG_LIB = 'jpeg'
|
||||||
|
|
||||||
|
WITH_BF_PNG = 'true'
|
||||||
|
BF_PNG = '/usr'
|
||||||
|
BF_PNG_INC = BF_PNG + '/include'
|
||||||
|
BF_PNG_LIB = 'png'
|
||||||
|
|
||||||
|
WITH_BF_TIFF = 'true'
|
||||||
|
BF_TIFF = '/usr'
|
||||||
|
BF_TIFF_INC = BF_TIFF + '/include'
|
||||||
|
BF_TIFF_LIB = 'tiff'
|
||||||
|
|
||||||
|
WITH_BF_ZLIB = 'true'
|
||||||
|
BF_ZLIB = '/usr'
|
||||||
|
BF_ZLIB_INC = BF_ZLIB + '/include'
|
||||||
|
BF_ZLIB_LIB = 'z'
|
||||||
|
|
||||||
|
WITH_BF_GETTEXT = 'true'
|
||||||
|
BF_GETTEXT = '/usr'
|
||||||
|
BF_GETTEXT_INC = BF_GETTEXT + '/include'
|
||||||
|
BF_GETTEXT_LIB = 'gettextlib'
|
||||||
|
BF_GETTEXT_LIBPATH = BF_GETTEXT + '/lib'
|
||||||
|
|
||||||
|
WITH_BF_FTGL = 'true'
|
||||||
|
BF_FTGL = '#extern/bFTGL'
|
||||||
|
BF_FTGL_INC = BF_FTGL + '/include'
|
||||||
|
BF_FTGL_LIB = 'extern_ftgl'
|
||||||
|
|
||||||
|
WITH_BF_GAMEENGINE='true'
|
||||||
|
|
||||||
|
WITH_BF_ODE = 'false'
|
||||||
|
BF_ODE = LCGDIR + '/ode'
|
||||||
|
BF_ODE_INC = BF_ODE + '/include'
|
||||||
|
BF_ODE_LIB = BF_ODE + '/lib/libode.a'
|
||||||
|
|
||||||
|
WITH_BF_BULLET = 'true'
|
||||||
|
BF_BULLET = '#extern/bullet'
|
||||||
|
BF_BULLET_INC = BF_BULLET + '/LinearMath ' + BF_BULLET + '/BulletDynamics ' + BF_BULLET + '/Bullet'
|
||||||
|
BF_BULLET_LIB = 'extern_bullet'
|
||||||
|
|
||||||
|
BF_SOLID = '#extern/solid'
|
||||||
|
BF_SOLID_INC = BF_SOLID
|
||||||
|
BF_SOLID_LIB = 'extern_solid'
|
||||||
|
|
||||||
|
#WITH_BF_NSPR = 'true'
|
||||||
|
#BF_NSPR = $(LCGDIR)/nspr
|
||||||
|
#BF_NSPR_INC = -I$(BF_NSPR)/include -I$(BF_NSPR)/include/nspr
|
||||||
|
#BF_NSPR_LIB =
|
||||||
|
|
||||||
|
# Uncomment the following line to use Mozilla inplace of netscape
|
||||||
|
#CPPFLAGS += -DMOZ_NOT_NET
|
||||||
|
# Location of MOZILLA/Netscape header files...
|
||||||
|
#BF_MOZILLA = $(LCGDIR)/mozilla
|
||||||
|
#BF_MOZILLA_INC = -I$(BF_MOZILLA)/include/mozilla/nspr -I$(BF_MOZILLA)/include/mozilla -I$(BF_MOZILLA)/include/mozilla/xpcom -I$(BF_MOZILLA)/include/mozilla/idl
|
||||||
|
#BF_MOZILLA_LIB =
|
||||||
|
# Will fall back to look in BF_MOZILLA_INC/nspr and BF_MOZILLA_LIB
|
||||||
|
# if this is not set.
|
||||||
|
#
|
||||||
|
# Be paranoid regarding library creation (do not update archives)
|
||||||
|
#BF_PARANOID = 'true'
|
||||||
|
|
||||||
|
# enable freetype2 support for text objects
|
||||||
|
WITH_BF_FREETYPE = 'true'
|
||||||
|
BF_FREETYPE = '/usr'
|
||||||
|
BF_FREETYPE_INC = BF_FREETYPE + '/include ' + BF_FREETYPE + '/include/freetype2'
|
||||||
|
BF_FREETYPE_LIB = 'freetype'
|
||||||
|
|
||||||
|
WITH_BF_QUICKTIME = 'false' # -DWITH_QUICKTIME
|
||||||
|
BF_QUICKTIME = '/usr/local'
|
||||||
|
BF_QUICKTIME_INC = BF_QUICKTIME + '/include'
|
||||||
|
|
||||||
|
# Mesa Libs should go here if your using them as well....
|
||||||
|
WITH_BF_OPENGL = 'true'
|
||||||
|
BF_OPENGL = '/usr/X11R6'
|
||||||
|
BF_OPENGL_INC = BF_OPENGL + '/include'
|
||||||
|
BF_OPENGL_LIB = 'GL GLU Xmu Xext X11 Xi'
|
||||||
|
BF_OPENGL_LIBPATH = '/usr/X11R6/lib'
|
||||||
|
BF_OPENGL_LIB_STATIC = BF_OPENGL + '/lib/libGL.a ' + BF_OPENGL + '/lib/libGLU.a ' + BF_OPENGL + '/lib/libXmu.a ' + BF_OPENGL + '/lib/libXext.a ' + BF_OPENGL + '/lib/libX11.a ' + BF_OPENGL + '/lib/libXi.a'
|
||||||
|
##
|
||||||
|
##CC = gcc
|
||||||
|
##CCC = g++
|
||||||
|
##ifeq ($CPU),alpha)
|
||||||
|
## CFLAGS += -pipe -fPIC -funsigned-char -fno-strict-aliasing -mieee
|
||||||
|
|
||||||
|
CFLAGS = ['-pipe','-fPIC','-funsigned-char','-fno-strict-aliasing']
|
||||||
|
|
||||||
|
CPPFLAGS = ['-DXP_UNIX']
|
||||||
|
CCFLAGS = ['-pipe','-fPIC','-funsigned-char','-fno-strict-aliasing']
|
||||||
|
REL_CFLAGS = ' -O2 '
|
||||||
|
REL_CCFLAGS = ' -O2 '
|
||||||
|
##BF_DEPEND = 'true'
|
||||||
|
##
|
||||||
|
##AR = ar
|
||||||
|
##ARFLAGS = ruv
|
||||||
|
##ARFLAGSQUIET = ru
|
||||||
|
##
|
||||||
|
C_WARN = ' -Wall -W -Wshadow -Wpointer-arith -Wbad-function-cast -Wcast-qual -Wcast-align -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Wredundant-decls '
|
||||||
|
|
||||||
|
CC_WARN = ' -Wall -W -Wshadow -Wpointer-arith -Wcast-qual -Wcast-align -Wredundant-decls -Wreorder -Wctor-dtor-privacy -Wnon-virtual-dtor -Wold-style-cast -Woverloaded-virtual -Wsign-promo -Wsynth '
|
||||||
|
|
||||||
|
##FIX_STUBS_WARNINGS = -Wno-unused
|
||||||
|
|
||||||
|
LLIBS = 'util c m dl pthread stdc++'
|
||||||
|
##LOPTS = --dynamic
|
||||||
|
##DYNLDFLAGS = -shared $(LDFLAGS)
|
||||||
|
|
||||||
|
BF_PROFILE_FLAGS = ' -pg -g '
|
||||||
|
BF_PROFILE = 'false'
|
||||||
|
|
||||||
|
BF_DEBUG = 'false'
|
||||||
|
BF_DEBUG_FLAGS = ''
|
||||||
|
|
||||||
|
BF_BUILDDIR = '../build/linux2'
|
||||||
|
BF_INSTALLDIR='../install/linux2'
|
133
config/linuxcross-config.py
Normal file
133
config/linuxcross-config.py
Normal file
@@ -0,0 +1,133 @@
|
|||||||
|
LCGDIR = '../lib/linux2'
|
||||||
|
BF_PYTHON = '/usr'
|
||||||
|
BF_PYTHON_VERSION = '2.4'
|
||||||
|
BF_PYTHON_INC = BF_PYTHON + '/include/python' + BF_PYTHON_VERSION
|
||||||
|
BF_PYTHON_BINARY = BF_PYTHON+'/bin/python'+BF_PYTHON_VERSION
|
||||||
|
BF_PYTHON_LIB = 'python' + BF_PYTHON_VERSION #BF_PYTHON+'/lib/python'+BF_PYTHON_VERSION+'/config/libpython'+BF_PYTHON_VERSION+'.a'
|
||||||
|
|
||||||
|
WITH_BF_OPENAL = 'true'
|
||||||
|
BF_OPENAL = '/usr'
|
||||||
|
BF_OPENAL_INC = BF_OPENAL+'/include'
|
||||||
|
BF_OPENAL_LIB = 'openal'
|
||||||
|
|
||||||
|
WITH_BF_SDL = 'true'
|
||||||
|
BF_SDL = '/usr' #$(shell sdl-config --prefix)
|
||||||
|
BF_SDL_INC = BF_SDL + '/include/SDL' #$(shell $(BF_SDL)/bin/sdl-config --cflags)
|
||||||
|
BF_SDL_LIB = 'SDL' #BF_SDL #$(shell $(BF_SDL)/bin/sdl-config --libs) -lSDL_mixer
|
||||||
|
|
||||||
|
WITH_BF_FMOD = 'false'
|
||||||
|
BF_FMOD = LCGDIR + '/fmod'
|
||||||
|
|
||||||
|
WITH_BF_JPEG = 'true'
|
||||||
|
BF_JPEG = '/usr'
|
||||||
|
BF_JPEG_INC = BF_JPEG + '/include'
|
||||||
|
BF_JPEG_LIB = 'jpeg'
|
||||||
|
|
||||||
|
WITH_BF_OPENEXR = 'true'
|
||||||
|
BF_OPENEXR = '/usr'
|
||||||
|
BF_OPENEXR_INC = BF_OPENEXR + '/include/OpenEXR'
|
||||||
|
BF_OPENEXR_LIB = ' Iex Half IlmImf Imath '
|
||||||
|
|
||||||
|
WITH_BF_PNG = 'true'
|
||||||
|
BF_PNG = '/usr'
|
||||||
|
BF_PNG_INC = BF_PNG + '/include'
|
||||||
|
BF_PNG_LIB = 'png'
|
||||||
|
|
||||||
|
WITH_BF_TIFF = 'true'
|
||||||
|
BF_TIFF = '/usr'
|
||||||
|
BF_TIFF_INC = BF_TIFF + '/include'
|
||||||
|
BF_TIFF_LIB = 'tiff'
|
||||||
|
|
||||||
|
WITH_BF_ZLIB = 'true'
|
||||||
|
BF_ZLIB = '/usr'
|
||||||
|
BF_ZLIB_INC = BF_ZLIB + '/include'
|
||||||
|
BF_ZLIB_LIB = 'z'
|
||||||
|
|
||||||
|
WITH_BF_GETTEXT = 'true'
|
||||||
|
BF_GETTEXT = '/usr'
|
||||||
|
BF_GETTEXT_INC = BF_GETTEXT + '/include'
|
||||||
|
BF_GETTEXT_LIB = BF_GETTEXT + '/lib/libintl.a'
|
||||||
|
|
||||||
|
WITH_BF_FTGL = 'true'
|
||||||
|
BF_FTGL = '#extern/bFTGL'
|
||||||
|
BF_FTGL_INC = BF_FTGL + '/include'
|
||||||
|
BF_FTGL_LIB = 'extern_ftgl'
|
||||||
|
|
||||||
|
|
||||||
|
WITH_BF_ODE = 'false'
|
||||||
|
BF_ODE = LCGDIR + '/ode'
|
||||||
|
BF_ODE_INC = BF_ODE + '/include'
|
||||||
|
BF_ODE_LIB = BF_ODE + '/lib/libode.a'
|
||||||
|
|
||||||
|
WITH_BF_BULLET = 'true'
|
||||||
|
BF_BULLET = '#extern/bullet'
|
||||||
|
BF_BULLET_INC = BF_BULLET + '/LinearMath ' + BF_BULLET + '/BulletDynamics ' + BF_BULLET + '/Bullet'
|
||||||
|
BF_BULLET_LIB = 'extern_bullet'
|
||||||
|
|
||||||
|
BF_SOLID = '#extern/solid'
|
||||||
|
BF_SOLID_INC = BF_SOLID + '/include ' + BF_SOLID
|
||||||
|
BF_SOLID_LIB = 'extern_solid'
|
||||||
|
|
||||||
|
#WITH_BF_NSPR = 'true'
|
||||||
|
#BF_NSPR = $(LCGDIR)/nspr
|
||||||
|
#BF_NSPR_INC = -I$(BF_NSPR)/include -I$(BF_NSPR)/include/nspr
|
||||||
|
#BF_NSPR_LIB =
|
||||||
|
|
||||||
|
# Uncomment the following line to use Mozilla inplace of netscape
|
||||||
|
#CPPFLAGS += -DMOZ_NOT_NET
|
||||||
|
# Location of MOZILLA/Netscape header files...
|
||||||
|
#BF_MOZILLA = $(LCGDIR)/mozilla
|
||||||
|
#BF_MOZILLA_INC = -I$(BF_MOZILLA)/include/mozilla/nspr -I$(BF_MOZILLA)/include/mozilla -I$(BF_MOZILLA)/include/mozilla/xpcom -I$(BF_MOZILLA)/include/mozilla/idl
|
||||||
|
#BF_MOZILLA_LIB =
|
||||||
|
# Will fall back to look in BF_MOZILLA_INC/nspr and BF_MOZILLA_LIB
|
||||||
|
# if this is not set.
|
||||||
|
#
|
||||||
|
# Be paranoid regarding library creation (do not update archives)
|
||||||
|
#BF_PARANOID = 'true'
|
||||||
|
|
||||||
|
# enable freetype2 support for text objects
|
||||||
|
WITH_BF_FREETYPE = 'true'
|
||||||
|
BF_FREETYPE = '/usr'
|
||||||
|
BF_FREETYPE_INC = BF_FREETYPE + '/include ' + BF_FREETYPE + '/include/freetype2'
|
||||||
|
BF_FREETYPE_LIB = 'freetype'
|
||||||
|
|
||||||
|
WITH_BF_QUICKTIME = 'false' # -DWITH_QUICKTIME
|
||||||
|
BF_QUICKTIME = '/usr/local'
|
||||||
|
BF_QUICKTIME_INC = BF_QUICKTIME + '/include'
|
||||||
|
|
||||||
|
# Mesa Libs should go here if your using them as well....
|
||||||
|
WITH_BF_OPENGL = 'true'
|
||||||
|
BF_OPENGL = '/usr/X11R6'
|
||||||
|
BF_OPENGL_INC = BF_OPENGL + '/include'
|
||||||
|
BF_OPENGL_LIB = 'GL GLU Xmu Xext X11 Xi'
|
||||||
|
BF_OPENGL_LIB_STATIC = BF_OPENGL + '/lib/libGL.a ' + BF_OPENGL + '/lib/libGLU.a ' + BF_OPENGL + '/lib/libXmu.a ' + BF_OPENGL + '/lib/libXext.a ' + BF_OPENGL + '/lib/libX11.a ' + BF_OPENGL + '/lib/libXi.a'
|
||||||
|
##
|
||||||
|
##CC = gcc
|
||||||
|
##CCC = g++
|
||||||
|
##ifeq ($CPU),alpha)
|
||||||
|
## CFLAGS += -pipe -fPIC -funsigned-char -fno-strict-aliasing -mieee
|
||||||
|
|
||||||
|
CFLAGS = '-pipe -funsigned-char -fno-strict-aliasing'
|
||||||
|
|
||||||
|
CPPFLAGS = '-DXP_UNIX'
|
||||||
|
CCFLAGS = '-pipe -funsigned-char -fno-strict-aliasing'
|
||||||
|
REL_CFLAGS = '-O2'
|
||||||
|
REL_CCFLAGS = '-O2'
|
||||||
|
##BF_DEPEND = 'true'
|
||||||
|
##
|
||||||
|
##AR = ar
|
||||||
|
##ARFLAGS = ruv
|
||||||
|
##ARFLAGSQUIET = ru
|
||||||
|
##
|
||||||
|
C_WARN = '-Wall -W -Wshadow -Wpointer-arith -Wbad-function-cast -Wcast-qual -Wcast-align -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Wredundant-decls'
|
||||||
|
|
||||||
|
CC_WARN = '-Wall -W -Wshadow -Wpointer-arith -Wcast-qual -Wcast-align -Wredundant-decls -Wreorder -Wctor-dtor-privacy -Wnon-virtual-dtor -Wold-style-cast -Woverloaded-virtual -Wsign-promo -Wsynth'
|
||||||
|
|
||||||
|
##FIX_STUBS_WARNINGS = -Wno-unused
|
||||||
|
|
||||||
|
LLIBS = 'util c m dl pthread stdc++'
|
||||||
|
##LOPTS = --dynamic
|
||||||
|
##DYNLDFLAGS = -shared $(LDFLAGS)
|
||||||
|
|
||||||
|
BF_BUILDDIR = '../build/linuxcross'
|
||||||
|
BF_INSTALLDIR='../install/linuxcross'
|
155
config/win32-mingw-config.py
Normal file
155
config/win32-mingw-config.py
Normal file
@@ -0,0 +1,155 @@
|
|||||||
|
LCGDIR = '#../lib/windows'
|
||||||
|
BF_PYTHON = LCGDIR + '/python'
|
||||||
|
BF_PYTHON_VERSION = '2.4'
|
||||||
|
BF_PYTHON_INC = BF_PYTHON + '/include/python' + BF_PYTHON_VERSION
|
||||||
|
BF_PYTHON_BINARY = 'python'
|
||||||
|
BF_PYTHON_LIB = 'python24'
|
||||||
|
BF_PYTHON_LIBPATH = BF_PYTHON + '/lib'
|
||||||
|
|
||||||
|
WITH_BF_OPENAL = 'true'
|
||||||
|
BF_OPENAL = LCGDIR + '/openal'
|
||||||
|
BF_OPENAL_INC = BF_OPENAL+'/include'
|
||||||
|
BF_OPENAL_LIB = 'openal'
|
||||||
|
BF_OPENAL_LIBPATH = BF_OPENAL + '/lib'
|
||||||
|
|
||||||
|
WITH_BF_SDL = 'true'
|
||||||
|
BF_SDL = '#../extra/SDL-1.2.9' #$(shell sdl-config --prefix)
|
||||||
|
BF_SDL_INC = BF_SDL + '/include' #$(shell $(BF_SDL)/bin/sdl-config --cflags)
|
||||||
|
BF_SDL_LIB = 'SDLmain SDL' #$(shell $(BF_SDL)/bin/sdl-config --libs) -lSDL_mixer
|
||||||
|
BF_SDL_LIBPATH = BF_SDL + '/lib'
|
||||||
|
|
||||||
|
WITH_BF_FMOD = 'false'
|
||||||
|
BF_FMOD = LCGDIR + '/fmod'
|
||||||
|
|
||||||
|
WITH_BF_OPENEXR = 'true'
|
||||||
|
BF_OPENEXR = LCGDIR + '/gcc/openexr'
|
||||||
|
BF_OPENEXR_INC = BF_OPENEXR + '/include ' + BF_OPENEXR + '/include/OpenEXR'
|
||||||
|
BF_OPENEXR_LIB = ' Iex Half IlmImf Imath '
|
||||||
|
BF_OPENEXR_LIBPATH = LCGDIR+'/openexr/lib'
|
||||||
|
|
||||||
|
WITH_BF_JPEG = 'true'
|
||||||
|
BF_JPEG = LCGDIR + '/jpeg'
|
||||||
|
BF_JPEG_INC = BF_JPEG + '/include'
|
||||||
|
BF_JPEG_LIB = 'jpeg'
|
||||||
|
BF_JPEG_LIBPATH = BF_JPEG + '/lib'
|
||||||
|
|
||||||
|
WITH_BF_PNG = 'true'
|
||||||
|
BF_PNG = LCGDIR + '/png'
|
||||||
|
BF_PNG_INC = BF_PNG + '/include'
|
||||||
|
BF_PNG_LIB = 'png'
|
||||||
|
BF_PNG_LIBPATH = BF_PNG + '/lib'
|
||||||
|
|
||||||
|
WITH_BF_TIFF = 'true'
|
||||||
|
BF_TIFF = LCGDIR + '/tiff'
|
||||||
|
BF_TIFF_INC = BF_TIFF + '/include'
|
||||||
|
BF_TIFF_LIB = 'z tiff'
|
||||||
|
BF_TIFF_LIBPATH = BF_TIFF + '/lib'
|
||||||
|
|
||||||
|
WITH_BF_ZLIB = 'true'
|
||||||
|
BF_ZLIB = LCGDIR + '/zlib'
|
||||||
|
BF_ZLIB_INC = BF_ZLIB + '/include'
|
||||||
|
BF_ZLIB_LIB = 'z'
|
||||||
|
BF_ZLIB_LIBPATH = BF_ZLIB + '/lib'
|
||||||
|
|
||||||
|
WITH_BF_GETTEXT = 'true'
|
||||||
|
BF_GETTEXT = LCGDIR + '/gettext'
|
||||||
|
BF_GETTEXT_INC = BF_GETTEXT + '/include'
|
||||||
|
BF_GETTEXT_LIB = 'freegettext'
|
||||||
|
BF_GETTEXT_LIBPATH = '#../extra/gettext'
|
||||||
|
|
||||||
|
WITH_BF_FTGL = 'true'
|
||||||
|
BF_FTGL = LCGDIR + '/ftgl'
|
||||||
|
BF_FTGL_INC = BF_FTGL + '/include'
|
||||||
|
BF_FTGL_LIB = 'extern_ftgl'
|
||||||
|
|
||||||
|
WITH_BF_GAMEENGINE = 'false'
|
||||||
|
|
||||||
|
WITH_BF_ODE = 'true'
|
||||||
|
BF_ODE = LCGDIR + '/ode'
|
||||||
|
BF_ODE_INC = BF_ODE + '/include'
|
||||||
|
BF_ODE_LIB = BF_ODE + '/lib/libode.a'
|
||||||
|
|
||||||
|
WITH_BF_BULLET = 'true'
|
||||||
|
BF_BULLET = '#extern/bullet'
|
||||||
|
BF_BULLET_INC = BF_BULLET + '/LinearMath ' + BF_BULLET + '/BulletDynamics ' + BF_BULLET + '/Bullet'
|
||||||
|
BF_BULLET_LIB = 'extern_bullet'
|
||||||
|
|
||||||
|
BF_SOLID = '#extern/solid'
|
||||||
|
BF_SOLID_INC = BF_SOLID
|
||||||
|
BF_SOLID_LIB = 'extern_solid'
|
||||||
|
|
||||||
|
#WITH_BF_NSPR = 'true'
|
||||||
|
#BF_NSPR = $(LCGDIR)/nspr
|
||||||
|
#BF_NSPR_INC = -I$(BF_NSPR)/include -I$(BF_NSPR)/include/nspr
|
||||||
|
#BF_NSPR_LIB =
|
||||||
|
|
||||||
|
# Uncomment the following line to use Mozilla inplace of netscape
|
||||||
|
#CPPFLAGS += -DMOZ_NOT_NET
|
||||||
|
# Location of MOZILLA/Netscape header files...
|
||||||
|
#BF_MOZILLA = $(LCGDIR)/mozilla
|
||||||
|
#BF_MOZILLA_INC = -I$(BF_MOZILLA)/include/mozilla/nspr -I$(BF_MOZILLA)/include/mozilla -I$(BF_MOZILLA)/include/mozilla/xpcom -I$(BF_MOZILLA)/include/mozilla/idl
|
||||||
|
#BF_MOZILLA_LIB =
|
||||||
|
# Will fall back to look in BF_MOZILLA_INC/nspr and BF_MOZILLA_LIB
|
||||||
|
# if this is not set.
|
||||||
|
#
|
||||||
|
# Be paranoid regarding library creation (do not update archives)
|
||||||
|
#BF_PARANOID = 'true'
|
||||||
|
|
||||||
|
# enable freetype2 support for text objects
|
||||||
|
WITH_BF_FREETYPE = 'true'
|
||||||
|
BF_FREETYPE = '#../extra/freetype'
|
||||||
|
BF_FREETYPE_INC = BF_FREETYPE + '/include '
|
||||||
|
BF_FREETYPE_LIB = 'freetype'
|
||||||
|
BF_FREETYPE_LIBPATH = BF_FREETYPE + '/lib'
|
||||||
|
|
||||||
|
WITH_BF_QUICKTIME = 'false' # -DWITH_QUICKTIME
|
||||||
|
BF_QUICKTIME = '/usr/local'
|
||||||
|
BF_QUICKTIME_INC = BF_QUICKTIME + '/include'
|
||||||
|
|
||||||
|
# Mesa Libs should go here if your using them as well....
|
||||||
|
WITH_BF_OPENGL = 'true'
|
||||||
|
BF_OPENGL = 'C:\\MingW'
|
||||||
|
BF_OPENGL_INC = BF_OPENGL + '/include'
|
||||||
|
BF_OPENGL_LIBINC = BF_OPENGL + '/lib'
|
||||||
|
BF_OPENGL_LIB = 'opengl32 glu32'
|
||||||
|
BF_OPENGL_LIB_STATIC = [ BF_OPENGL + '/lib/libGL.a', BF_OPENGL + '/lib/libGLU.a',
|
||||||
|
BF_OPENGL + '/lib/libXmu.a', BF_OPENGL + '/lib/libXext.a',
|
||||||
|
BF_OPENGL + '/lib/libX11.a', BF_OPENGL + '/lib/libXi.a' ]
|
||||||
|
##
|
||||||
|
##CC = gcc
|
||||||
|
##CCC = g++
|
||||||
|
##ifeq ($CPU),alpha)
|
||||||
|
## CFLAGS += -pipe -fPIC -funsigned-char -fno-strict-aliasing -mieee
|
||||||
|
|
||||||
|
CFLAGS = [ '-pipe' '-funsigned-char', '-fno-strict-aliasing' ]
|
||||||
|
|
||||||
|
CPPFLAGS = [ '-DXP_UNIX', '-DWIN32', '-DFREE_WINDOWS' ]
|
||||||
|
CCFLAGS = ['-pipe', '-mwindows', '-funsigned-char', '-fno-strict-aliasing' ]
|
||||||
|
REL_CFLAGS = [ '-O2' ]
|
||||||
|
REL_CCFLAGS = [ '-O2' ]
|
||||||
|
##BF_DEPEND = 'true'
|
||||||
|
##
|
||||||
|
##AR = ar
|
||||||
|
##ARFLAGS = ruv
|
||||||
|
##ARFLAGSQUIET = ru
|
||||||
|
##
|
||||||
|
C_WARN = [ '-Wall', '-W', '-Wshadow', '-Wpointer-arith', '-Wbad-function-cast',
|
||||||
|
'-Wcast-qual', '-Wcast-align', '-Waggregate-return',
|
||||||
|
'-Wstrict-prototypes', '-Wmissing-prototypes',
|
||||||
|
'-Wmissing-declarations', '-Wnested-externs', '-Wredundant-decls' ]
|
||||||
|
|
||||||
|
CC_WARN = [ '-Wall', '-W', '-Wshadow', '-Wpointer-arith', '-Wcast-qual', '-Wcast-align',
|
||||||
|
'-Wredundant-decls', '-Wreorder', '-Wctor-dtor-privacy', '-Wnon-virtual-dtor',
|
||||||
|
'-Wold-style-cast', '-Woverloaded-virtual', '-Wsign-promo', '-Wsynth' ]
|
||||||
|
|
||||||
|
##FIX_STUBS_WARNINGS = -Wno-unused
|
||||||
|
|
||||||
|
LLIBS = [ '-ldxguid', '-lgdi32', '-lmsvcrt', '-lwinmm', '-lmingw32', '-lm' ] #'-lutil', '-lc', '-lm', '-ldl', '-lpthread' ]
|
||||||
|
##LOPTS = --dynamic
|
||||||
|
##DYNLDFLAGS = -shared $(LDFLAGS)
|
||||||
|
|
||||||
|
BF_DEBUG = 'false'
|
||||||
|
BF_DEBUG_FLAGS= ''
|
||||||
|
|
||||||
|
BF_BUILDDIR = '..\\build\\win32-mingw'
|
||||||
|
BF_INSTALLDIR='..\\install\\win32-mingw'
|
169
config/win32-vc-config.py
Normal file
169
config/win32-vc-config.py
Normal file
@@ -0,0 +1,169 @@
|
|||||||
|
LCGDIR = '#../lib/windows'
|
||||||
|
BF_PYTHON = LCGDIR + '/python'
|
||||||
|
BF_PYTHON_VERSION = '2.4'
|
||||||
|
BF_PYTHON_INC = BF_PYTHON + '/include/python' + BF_PYTHON_VERSION
|
||||||
|
BF_PYTHON_BINARY = 'python'
|
||||||
|
BF_PYTHON_LIB = 'python24'
|
||||||
|
BF_PYTHON_LIBPATH = BF_PYTHON + '/lib'
|
||||||
|
|
||||||
|
WITH_BF_OPENAL = 'true'
|
||||||
|
BF_OPENAL = LCGDIR + '/openal'
|
||||||
|
BF_OPENAL_INC = BF_OPENAL+'/include ' + BF_OPENAL+'/include/AL '
|
||||||
|
BF_OPENAL_LIB = 'openal_static'
|
||||||
|
BF_OPENAL_LIBPATH = BF_OPENAL + '/lib'
|
||||||
|
|
||||||
|
WITH_BF_ICONV = 'true'
|
||||||
|
BF_ICONV = LCGDIR + '/iconv'
|
||||||
|
BF_ICONV_INC = BF_ICONV + '/include'
|
||||||
|
BF_ICONV_LIB = 'iconv'
|
||||||
|
BF_ICONV_LIBPATH = BF_ICONV + '/lib'
|
||||||
|
|
||||||
|
WITH_BF_SDL = 'true'
|
||||||
|
BF_SDL = LCGDIR + '/sdl' #$(shell sdl-config --prefix)
|
||||||
|
BF_SDL_INC = BF_SDL + '/include' #$(shell $(BF_SDL)/bin/sdl-config --cflags)
|
||||||
|
BF_SDL_LIB = 'SDL.lib' #$(shell $(BF_SDL)/bin/sdl-config --libs) -lSDL_mixer
|
||||||
|
BF_SDL_LIBPATH = BF_SDL + '/lib'
|
||||||
|
|
||||||
|
WITH_BF_FMOD = 'false'
|
||||||
|
BF_FMOD = LCGDIR + '/fmod'
|
||||||
|
|
||||||
|
WITH_BF_OPENEXR = 'true'
|
||||||
|
BF_OPENEXR = LCGDIR + '/openexr'
|
||||||
|
BF_OPENEXR_INC = BF_OPENEXR + '/include ' + BF_OPENEXR + '/include/IlmImf ' + BF_OPENEXR + '/include/Iex ' + BF_OPENEXR + '/include/Imath '
|
||||||
|
BF_OPENEXR_LIB = ' Iex Half IlmImf Imath '
|
||||||
|
BF_OPENEXR_LIBPATH = BF_OPENEXR+'/lib'
|
||||||
|
|
||||||
|
WITH_BF_JPEG = 'true'
|
||||||
|
BF_JPEG = LCGDIR + '/jpeg'
|
||||||
|
BF_JPEG_INC = BF_JPEG + '/include'
|
||||||
|
BF_JPEG_LIB = 'libjpeg'
|
||||||
|
BF_JPEG_LIBPATH = BF_JPEG + '/lib'
|
||||||
|
|
||||||
|
WITH_BF_PNG = 'true'
|
||||||
|
BF_PNG = LCGDIR + '/png'
|
||||||
|
BF_PNG_INC = BF_PNG + '/include'
|
||||||
|
BF_PNG_LIB = 'libpng'
|
||||||
|
BF_PNG_LIBPATH = BF_PNG + '/lib'
|
||||||
|
|
||||||
|
WITH_BF_TIFF = 'true'
|
||||||
|
BF_TIFF = LCGDIR + '/tiff'
|
||||||
|
BF_TIFF_INC = BF_TIFF + '/include'
|
||||||
|
BF_TIFF_LIB = 'libtiff'
|
||||||
|
BF_TIFF_LIBPATH = BF_TIFF + '/lib'
|
||||||
|
|
||||||
|
WITH_BF_ZLIB = 'true'
|
||||||
|
BF_ZLIB = LCGDIR + '/zlib'
|
||||||
|
BF_ZLIB_INC = BF_ZLIB + '/include'
|
||||||
|
BF_ZLIB_LIB = 'libz'
|
||||||
|
BF_ZLIB_LIBPATH = BF_ZLIB + '/lib'
|
||||||
|
|
||||||
|
WITH_BF_GETTEXT = 'true'
|
||||||
|
BF_GETTEXT = LCGDIR + '/gettext'
|
||||||
|
BF_GETTEXT_INC = BF_GETTEXT + '/include'
|
||||||
|
BF_GETTEXT_LIB = 'gnu_gettext'
|
||||||
|
BF_GETTEXT_LIBPATH = BF_GETTEXT + '/lib'
|
||||||
|
|
||||||
|
WITH_BF_FTGL = 'true'
|
||||||
|
BF_FTGL = LCGDIR + '/ftgl'
|
||||||
|
BF_FTGL_INC = BF_FTGL + '/include'
|
||||||
|
BF_FTGL_LIB = 'extern_ftgl'
|
||||||
|
|
||||||
|
WITH_BF_GAMEENGINE = 'true'
|
||||||
|
|
||||||
|
WITH_BF_ODE = 'true'
|
||||||
|
BF_ODE = LCGDIR + '/ode'
|
||||||
|
BF_ODE_INC = BF_ODE + '/include'
|
||||||
|
BF_ODE_LIB = BF_ODE + '/lib/libode.a'
|
||||||
|
|
||||||
|
WITH_BF_BULLET = 'true'
|
||||||
|
BF_BULLET = '#extern/bullet'
|
||||||
|
BF_BULLET_INC = BF_BULLET + '/LinearMath ' + BF_BULLET + '/BulletDynamics ' + BF_BULLET + '/Bullet'
|
||||||
|
BF_BULLET_LIB = 'extern_bullet'
|
||||||
|
|
||||||
|
BF_SOLID = '#extern/solid'
|
||||||
|
BF_SOLID_INC = BF_SOLID
|
||||||
|
BF_SOLID_LIB = 'extern_solid'
|
||||||
|
|
||||||
|
#WITH_BF_NSPR = 'true'
|
||||||
|
#BF_NSPR = $(LCGDIR)/nspr
|
||||||
|
#BF_NSPR_INC = -I$(BF_NSPR)/include -I$(BF_NSPR)/include/nspr
|
||||||
|
#BF_NSPR_LIB =
|
||||||
|
|
||||||
|
# Uncomment the following line to use Mozilla inplace of netscape
|
||||||
|
#CPPFLAGS += -DMOZ_NOT_NET
|
||||||
|
# Location of MOZILLA/Netscape header files...
|
||||||
|
#BF_MOZILLA = $(LCGDIR)/mozilla
|
||||||
|
#BF_MOZILLA_INC = -I$(BF_MOZILLA)/include/mozilla/nspr -I$(BF_MOZILLA)/include/mozilla -I$(BF_MOZILLA)/include/mozilla/xpcom -I$(BF_MOZILLA)/include/mozilla/idl
|
||||||
|
#BF_MOZILLA_LIB =
|
||||||
|
# Will fall back to look in BF_MOZILLA_INC/nspr and BF_MOZILLA_LIB
|
||||||
|
# if this is not set.
|
||||||
|
#
|
||||||
|
# Be paranoid regarding library creation (do not update archives)
|
||||||
|
#BF_PARANOID = 'true'
|
||||||
|
|
||||||
|
# enable freetype2 support for text objects
|
||||||
|
WITH_BF_FREETYPE = 'true'
|
||||||
|
BF_FREETYPE = LCGDIR + '/freetype'
|
||||||
|
BF_FREETYPE_INC = BF_FREETYPE + '/include ' + BF_FREETYPE + '/include/freetype2'
|
||||||
|
BF_FREETYPE_LIB = 'freetype2ST'
|
||||||
|
BF_FREETYPE_LIBPATH = BF_FREETYPE + '/lib'
|
||||||
|
|
||||||
|
WITH_BF_QUICKTIME = 'true' # -DWITH_QUICKTIME
|
||||||
|
BF_QUICKTIME = LCGDIR + '/QTDevWin'
|
||||||
|
BF_QUICKTIME_INC = BF_QUICKTIME + '/CIncludes'
|
||||||
|
BF_QUICKTIME_LIB = 'qtmlClient'
|
||||||
|
BF_QUICKTIME_LIBPATH = BF_QUICKTIME + '/Libraries'
|
||||||
|
|
||||||
|
# Mesa Libs should go here if your using them as well....
|
||||||
|
WITH_BF_OPENGL = 'true'
|
||||||
|
#BF_OPENGL = 'C:\\MingW'
|
||||||
|
BF_OPENGL_INC = BF_OPENGL + '/include'
|
||||||
|
BF_OPENGL_LIBINC = BF_OPENGL + '/lib'
|
||||||
|
BF_OPENGL_LIB = 'opengl32 glu32'
|
||||||
|
BF_OPENGL_LIB_STATIC = [ BF_OPENGL + '/lib/libGL.a', BF_OPENGL + '/lib/libGLU.a',
|
||||||
|
BF_OPENGL + '/lib/libXmu.a', BF_OPENGL + '/lib/libXext.a',
|
||||||
|
BF_OPENGL + '/lib/libX11.a', BF_OPENGL + '/lib/libXi.a' ]
|
||||||
|
##
|
||||||
|
##CC = gcc
|
||||||
|
##CCC = g++
|
||||||
|
##ifeq ($CPU),alpha)
|
||||||
|
## CFLAGS += -pipe -fPIC -funsigned-char -fno-strict-aliasing -mieee
|
||||||
|
|
||||||
|
CCFLAGS = ['/nologo', '/Og', '/Ot', '/Ob1', '/Op', '/G6','/EHsc', '/J', '/W3', '/Gd', '/MT']
|
||||||
|
|
||||||
|
CPPFLAGS = ['-DWIN32','-D_CONSOLE', '-D_LIB', '-DUSE_OPENAL', '-DFTGL_LIBRARY_STATIC']
|
||||||
|
REL_CFLAGS = []
|
||||||
|
REL_CCFLAGS = []
|
||||||
|
##BF_DEPEND = 'true'
|
||||||
|
##
|
||||||
|
##AR = ar
|
||||||
|
##ARFLAGS = ruv
|
||||||
|
##ARFLAGSQUIET = ru
|
||||||
|
##
|
||||||
|
C_WARN = []
|
||||||
|
#
|
||||||
|
CC_WARN = []
|
||||||
|
|
||||||
|
##FIX_STUBS_WARNINGS = -Wno-unused
|
||||||
|
|
||||||
|
LLIBS = 'ws2_32 dxguid vfw32 winmm kernel32 user32 gdi32 comdlg32 advapi32 shell32 ole32 oleaut32 uuid' #[ '-lutil', '-lc', '-lm', '-ldl', '-lpthread' ]
|
||||||
|
|
||||||
|
PLATFORM_LINKFLAGS = '''
|
||||||
|
/SUBSYSTEM:CONSOLE
|
||||||
|
/MACHINE:IX86
|
||||||
|
/ENTRY:mainCRTStartup
|
||||||
|
/INCREMENTAL:NO
|
||||||
|
/NODEFAULTLIB:"msvcprt.lib"
|
||||||
|
/NODEFAULTLIB:"glut32.lib"
|
||||||
|
/NODEFAULTLIB:"libc.lib"
|
||||||
|
/NODEFAULTLIB:"libcd.lib"
|
||||||
|
/NODEFAULTLIB:"libcpd.lib"
|
||||||
|
/NODEFAULTLIB:"libcp.lib"
|
||||||
|
/NODEFAULTLIB:"libcmtd.lib"
|
||||||
|
'''
|
||||||
|
|
||||||
|
##LOPTS = --dynamic
|
||||||
|
##DYNLDFLAGS = -shared $(LDFLAGS)
|
||||||
|
|
||||||
|
BF_BUILDDIR = '..\\build\\win32-vc'
|
||||||
|
BF_INSTALLDIR='..\\install\\win32-vc'
|
16
extern/SConscript
vendored
16
extern/SConscript
vendored
@@ -1,14 +1,10 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
|
|
||||||
Import('user_options_dict')
|
Import('env')
|
||||||
|
|
||||||
|
|
||||||
print "externs..."
|
|
||||||
SConscript(['qhull/SConscript',
|
SConscript(['qhull/SConscript',
|
||||||
'solid/SConscript',
|
'solid/SConscript',
|
||||||
'bullet/SConscript'])
|
'bullet/SConscript'])
|
||||||
|
|
||||||
|
if env['WITH_BF_FREETYPE'] == 1:
|
||||||
if user_options_dict['USE_INTERNATIONAL'] == 1:
|
SConscript(['bFTGL/SConscript'])
|
||||||
print "bftgl"
|
|
||||||
SConscript(['bFTGL/SConscript'])
|
|
||||||
|
61
extern/bFTGL/SConscript
vendored
61
extern/bFTGL/SConscript
vendored
@@ -2,52 +2,29 @@
|
|||||||
import sys
|
import sys
|
||||||
import os
|
import os
|
||||||
|
|
||||||
ftgl_env = Environment(ENV=os.environ)
|
Import('env')
|
||||||
|
|
||||||
# Import the C flags set in the SConstruct file
|
# Import the C flags set in the SConstruct file
|
||||||
Import ('cflags')
|
#Import ('cflags')
|
||||||
Import ('defines')
|
#Import ('defines')
|
||||||
Import ('user_options_dict')
|
#Import ('user_options_dict')
|
||||||
|
|
||||||
if sys.platform=='linux2' or sys.platform=='linux-i386':
|
#if sys.platform=='linux2' or sys.platform=='linux-i386':
|
||||||
ftgl_env.Append (CCFLAGS = ['-O2', '-ansi'])
|
# ftgl_env.Append (CCFLAGS = ['-O2', '-ansi'])
|
||||||
elif sys.platform=='win32':
|
#elif sys.platform=='win32':
|
||||||
ftgl_env.Append (CCFLAGS = ['/O2'])
|
#ftgl_env.Append (CCFLAGS = ['/O2'])
|
||||||
elif sys.platform=='sunos':
|
#elif sys.platform=='sunos':
|
||||||
ftgl_env.Append (CCFLAGS = ['Xc', '-v', '-fast'])
|
# ftgl_env.Append (CCFLAGS = ['Xc', '-v', '-fast'])
|
||||||
elif sys.platform=='darwin':
|
#elif sys.platform=='darwin':
|
||||||
ftgl_env.Append (CCFLAGS = ['-O2', '-pipe', '-fPIC', '-funsigned-char', '-ffast-math', '-mpowerpc' , '-mtune=G4'])
|
# ftgl_env.Append (CCFLAGS = ['-O2', '-pipe', '-fPIC', '-funsigned-char', '-ffast-math', '-mpowerpc' , '-mtune=G4'])
|
||||||
else:
|
#else:
|
||||||
ftgl_env.Append (CCFLAGS = cflags)
|
# ftgl_env.Append (CCFLAGS = cflags)
|
||||||
|
|
||||||
ftgl_env.Append (CPPDEFINES = defines)
|
#ftgl_env.Append (CPPDEFINES = defines)
|
||||||
ftgl_env.Append (CPPPATH = ['include',
|
|
||||||
'src'])
|
|
||||||
|
|
||||||
ftgl_env.Append (CPPPATH = user_options_dict['FREETYPE_INCLUDE'])
|
incs = 'include src ' + env['BF_FREETYPE_INC']
|
||||||
|
defs = ''
|
||||||
|
|
||||||
source_files = [
|
sources = env.Glob('src/*.cpp')
|
||||||
'src/FTBitmapGlyph.cpp',
|
|
||||||
'src/FTCharmap.cpp',
|
|
||||||
'src/FTContour.cpp',
|
|
||||||
'src/FTExtrdGlyph.cpp',
|
|
||||||
'src/FTFace.cpp',
|
|
||||||
'src/FTFont.cpp',
|
|
||||||
'src/FTGLBitmapFont.cpp',
|
|
||||||
'src/FTGLExtrdFont.cpp',
|
|
||||||
'src/FTGLOutlineFont.cpp',
|
|
||||||
'src/FTGLPixmapFont.cpp',
|
|
||||||
'src/FTGLPolygonFont.cpp',
|
|
||||||
'src/FTGLTextureFont.cpp',
|
|
||||||
'src/FTGlyph.cpp',
|
|
||||||
'src/FTGlyphContainer.cpp',
|
|
||||||
'src/FTLibrary.cpp',
|
|
||||||
'src/FTOutlineGlyph.cpp',
|
|
||||||
'src/FTPixmapGlyph.cpp',
|
|
||||||
'src/FTPoint.cpp',
|
|
||||||
'src/FTPolyGlyph.cpp',
|
|
||||||
'src/FTSize.cpp',
|
|
||||||
'src/FTTextureGlyph.cpp',
|
|
||||||
'src/FTVectoriser.cpp']
|
|
||||||
|
|
||||||
ftgl_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/extern_ftgl', source=source_files)
|
env.BlenderLib ( 'extern_ftgl', sources, Split(incs), Split(defs), libtype='international', priority=5)
|
||||||
|
178
extern/bullet/SConscript
vendored
178
extern/bullet/SConscript
vendored
@@ -2,28 +2,24 @@
|
|||||||
import sys
|
import sys
|
||||||
import os
|
import os
|
||||||
|
|
||||||
bullet_env = Environment(ENV = os.environ)
|
Import('env')
|
||||||
|
|
||||||
# Import the C flags set in the SConstruct file
|
defs = 'USE_DOUBLES QHULL _LIB'
|
||||||
Import ('cflags')
|
cflags = []
|
||||||
#Import ('cxxflags')
|
|
||||||
#Import ('defines')
|
|
||||||
Import ('user_options_dict')
|
|
||||||
#defines = ['QHULL', '_LIB']
|
|
||||||
defines = ['USE_DOUBLES','QHULL', '_LIB']
|
|
||||||
#cflags = []
|
|
||||||
cxxflags = []
|
|
||||||
|
|
||||||
if sys.platform=='win32':
|
if env['OURPLATFORM']=='win32-vc':
|
||||||
defines += ['WIN32','NDEBUG', '_WINDOWS', '_LIB']
|
defs += ' WIN32 NDEBUG _WINDOWS _LIB'
|
||||||
#cflags += ['/MT', '/W3', '/GX', '/O2', '/Op']
|
#cflags += ['/MT', '/W3', '/GX', '/O2', '/Op']
|
||||||
cflags += ['/MT', '/W3', '/GX', '/Og', '/Ot', '/Ob1', '/Op', '/G6']
|
cflags += ['/MT', '/W3', '/GX', '/Og', '/Ot', '/Ob1', '/Op', '/G6']
|
||||||
|
if env['OURPLATFORM']=='win32-mingw':
|
||||||
|
defs += ' NDEBUG'
|
||||||
|
cflags += ['-O2']
|
||||||
elif sys.platform=='linux2' or sys.platform=='linux-i386' or sys.platform=='freebsd4' or sys.platform=='freebsd5':
|
elif sys.platform=='linux2' or sys.platform=='linux-i386' or sys.platform=='freebsd4' or sys.platform=='freebsd5':
|
||||||
defines += ['NDEBUG']
|
defs += ' NDEBUG'
|
||||||
cflags += ['-O2']
|
cflags += ['-O2']
|
||||||
elif sys.platform=='darwin' :
|
elif sys.platform=='darwin':
|
||||||
defines += ['NDEBUG']
|
defs += ' NDEBUG'
|
||||||
cflags += ['-O2','-pipe', '-fPIC', '-funsigned-char', '-ffast-math', '-mpowerpc' , '-mtune=G4']
|
cflags += ['-O2','-pipe', '-fPIC', '-funsigned-char', '-ffast-math', '-mpowerpc' , '-mtune=G4']
|
||||||
|
|
||||||
else:
|
else:
|
||||||
print "################################################"
|
print "################################################"
|
||||||
@@ -33,79 +29,79 @@ else:
|
|||||||
print "and cflags / cxxflags to the"
|
print "and cflags / cxxflags to the"
|
||||||
print "extern/bullet/SConscript file"
|
print "extern/bullet/SConscript file"
|
||||||
|
|
||||||
bullet_env.Append (CCFLAGS = cflags)
|
#bullet_env.Append (CCFLAGS = cflags)
|
||||||
bullet_env.Append (CPPFLAGS = cxxflags)
|
#bullet_env.Append (CPPFLAGS = cxxflags)
|
||||||
|
|
||||||
bullet_env.Append (CPPDEFINES = defines)
|
#bullet_env.Append (CPPDEFINES = defines)
|
||||||
|
|
||||||
bullet_sources = ['Bullet/BroadphaseCollision/BroadphaseProxy.cpp',
|
sources = [ 'Bullet/BroadphaseCollision/BroadphaseProxy.cpp',
|
||||||
'Bullet/BroadphaseCollision/CollisionAlgorithm.cpp',
|
'Bullet/BroadphaseCollision/CollisionAlgorithm.cpp',
|
||||||
'Bullet/BroadphaseCollision/CollisionDispatcher.cpp',
|
'Bullet/BroadphaseCollision/CollisionDispatcher.cpp',
|
||||||
'Bullet/BroadphaseCollision/SimpleBroadphase.cpp',
|
'Bullet/BroadphaseCollision/SimpleBroadphase.cpp',
|
||||||
|
|
||||||
'Bullet/CollisionShapes/BoxShape.cpp',
|
'Bullet/CollisionShapes/BoxShape.cpp',
|
||||||
'Bullet/CollisionShapes/CollisionShape.cpp',
|
'Bullet/CollisionShapes/CollisionShape.cpp',
|
||||||
'Bullet/CollisionShapes/ConeShape.cpp',
|
'Bullet/CollisionShapes/ConeShape.cpp',
|
||||||
'Bullet/CollisionShapes/ConvexHullShape.cpp',
|
'Bullet/CollisionShapes/ConvexHullShape.cpp',
|
||||||
'Bullet/CollisionShapes/ConvexShape.cpp',
|
'Bullet/CollisionShapes/ConvexShape.cpp',
|
||||||
'Bullet/CollisionShapes/CylinderShape.cpp',
|
'Bullet/CollisionShapes/CylinderShape.cpp',
|
||||||
'Bullet/CollisionShapes/MinkowskiSumShape.cpp',
|
'Bullet/CollisionShapes/MinkowskiSumShape.cpp',
|
||||||
'Bullet/CollisionShapes/MultiSphereShape.cpp',
|
'Bullet/CollisionShapes/MultiSphereShape.cpp',
|
||||||
'Bullet/CollisionShapes/PolyhedralConvexShape.cpp',
|
'Bullet/CollisionShapes/PolyhedralConvexShape.cpp',
|
||||||
'Bullet/CollisionShapes/Simplex1to4Shape.cpp',
|
'Bullet/CollisionShapes/Simplex1to4Shape.cpp',
|
||||||
'Bullet/CollisionShapes/SphereShape.cpp',
|
'Bullet/CollisionShapes/SphereShape.cpp',
|
||||||
'Bullet/CollisionShapes/StridingMeshInterface.cpp',
|
'Bullet/CollisionShapes/StridingMeshInterface.cpp',
|
||||||
'Bullet/CollisionShapes/TriangleMesh.cpp',
|
'Bullet/CollisionShapes/TriangleMesh.cpp',
|
||||||
'Bullet/CollisionShapes/TriangleMeshShape.cpp',
|
'Bullet/CollisionShapes/TriangleMeshShape.cpp',
|
||||||
'Bullet/CollisionShapes/BvhTriangleMeshShape.cpp',
|
'Bullet/CollisionShapes/BvhTriangleMeshShape.cpp',
|
||||||
'Bullet/CollisionShapes/ConvexTriangleCallback.cpp',
|
'Bullet/CollisionShapes/ConvexTriangleCallback.cpp',
|
||||||
'Bullet/CollisionShapes/EmptyShape.cpp',
|
'Bullet/CollisionShapes/EmptyShape.cpp',
|
||||||
'Bullet/CollisionShapes/OptimizedBvh.cpp',
|
'Bullet/CollisionShapes/OptimizedBvh.cpp',
|
||||||
'Bullet/CollisionShapes/TriangleCallback.cpp',
|
'Bullet/CollisionShapes/TriangleCallback.cpp',
|
||||||
'Bullet/CollisionShapes/TriangleIndexVertexArray.cpp',
|
'Bullet/CollisionShapes/TriangleIndexVertexArray.cpp',
|
||||||
|
|
||||||
'Bullet/NarrowPhaseCollision/BU_AlgebraicPolynomialSolver.cpp',
|
'Bullet/NarrowPhaseCollision/BU_AlgebraicPolynomialSolver.cpp',
|
||||||
'Bullet/NarrowPhaseCollision/BU_Collidable.cpp',
|
'Bullet/NarrowPhaseCollision/BU_Collidable.cpp',
|
||||||
'Bullet/NarrowPhaseCollision/BU_CollisionPair.cpp',
|
'Bullet/NarrowPhaseCollision/BU_CollisionPair.cpp',
|
||||||
'Bullet/NarrowPhaseCollision/BU_EdgeEdge.cpp',
|
'Bullet/NarrowPhaseCollision/BU_EdgeEdge.cpp',
|
||||||
'Bullet/NarrowPhaseCollision/BU_Screwing.cpp',
|
'Bullet/NarrowPhaseCollision/BU_Screwing.cpp',
|
||||||
'Bullet/NarrowPhaseCollision/BU_VertexPoly.cpp',
|
'Bullet/NarrowPhaseCollision/BU_VertexPoly.cpp',
|
||||||
'Bullet/NarrowPhaseCollision/ContinuousConvexCollision.cpp',
|
'Bullet/NarrowPhaseCollision/ContinuousConvexCollision.cpp',
|
||||||
'Bullet/NarrowPhaseCollision/ConvexCast.cpp',
|
'Bullet/NarrowPhaseCollision/ConvexCast.cpp',
|
||||||
'Bullet/NarrowPhaseCollision/GjkConvexCast.cpp',
|
'Bullet/NarrowPhaseCollision/GjkConvexCast.cpp',
|
||||||
'Bullet/NarrowPhaseCollision/GjkPairDetector.cpp',
|
'Bullet/NarrowPhaseCollision/GjkPairDetector.cpp',
|
||||||
'Bullet/NarrowPhaseCollision/MinkowskiPenetrationDepthSolver.cpp',
|
'Bullet/NarrowPhaseCollision/MinkowskiPenetrationDepthSolver.cpp',
|
||||||
'Bullet/NarrowPhaseCollision/PersistentManifold.cpp',
|
'Bullet/NarrowPhaseCollision/PersistentManifold.cpp',
|
||||||
'Bullet/NarrowPhaseCollision/RaycastCallback.cpp',
|
'Bullet/NarrowPhaseCollision/RaycastCallback.cpp',
|
||||||
'Bullet/NarrowPhaseCollision/SubSimplexConvexCast.cpp',
|
'Bullet/NarrowPhaseCollision/SubSimplexConvexCast.cpp',
|
||||||
'Bullet/NarrowPhaseCollision/VoronoiSimplexSolver.cpp',
|
'Bullet/NarrowPhaseCollision/VoronoiSimplexSolver.cpp',
|
||||||
'Bullet/NarrowPhaseCollision/ManifoldContactAddResult.cpp',
|
'Bullet/NarrowPhaseCollision/ManifoldContactAddResult.cpp',
|
||||||
|
|
||||||
'BulletDynamics/CollisionDispatch/ConvexConcaveCollisionAlgorithm.cpp',
|
'BulletDynamics/CollisionDispatch/ConvexConcaveCollisionAlgorithm.cpp',
|
||||||
'BulletDynamics/CollisionDispatch/ConvexConvexAlgorithm.cpp',
|
'BulletDynamics/CollisionDispatch/ConvexConvexAlgorithm.cpp',
|
||||||
'BulletDynamics/CollisionDispatch/EmptyCollisionAlgorithm.cpp',
|
'BulletDynamics/CollisionDispatch/EmptyCollisionAlgorithm.cpp',
|
||||||
'BulletDynamics/CollisionDispatch/ManifoldResult.cpp',
|
'BulletDynamics/CollisionDispatch/ManifoldResult.cpp',
|
||||||
'BulletDynamics/CollisionDispatch/ToiContactDispatcher.cpp',
|
'BulletDynamics/CollisionDispatch/ToiContactDispatcher.cpp',
|
||||||
'BulletDynamics/CollisionDispatch/UnionFind.cpp',
|
'BulletDynamics/CollisionDispatch/UnionFind.cpp',
|
||||||
|
|
||||||
'BulletDynamics/ConstraintSolver/ContactConstraint.cpp',
|
'BulletDynamics/ConstraintSolver/ContactConstraint.cpp',
|
||||||
'BulletDynamics/ConstraintSolver/OdeConstraintSolver.cpp',
|
'BulletDynamics/ConstraintSolver/OdeConstraintSolver.cpp',
|
||||||
#'BulletDynamics/ConstraintSolver/OdeConstraintSolver2.cpp',
|
'BulletDynamics/ConstraintSolver/Point2PointConstraint.cpp',
|
||||||
'BulletDynamics/ConstraintSolver/Point2PointConstraint.cpp',
|
'BulletDynamics/ConstraintSolver/SimpleConstraintSolver.cpp',
|
||||||
'BulletDynamics/ConstraintSolver/SimpleConstraintSolver.cpp',
|
'BulletDynamics/ConstraintSolver/Solve2LinearConstraint.cpp',
|
||||||
'BulletDynamics/ConstraintSolver/Solve2LinearConstraint.cpp',
|
'BulletDynamics/ConstraintSolver/SorLcp.cpp',
|
||||||
'BulletDynamics/ConstraintSolver/SorLcp.cpp',
|
|
||||||
|
'BulletDynamics/Dynamics/BU_Joint.cpp',
|
||||||
'BulletDynamics/Dynamics/BU_Joint.cpp',
|
'BulletDynamics/Dynamics/ContactJoint.cpp',
|
||||||
'BulletDynamics/Dynamics/ContactJoint.cpp',
|
'BulletDynamics/Dynamics/RigidBody.cpp']
|
||||||
'BulletDynamics/Dynamics/RigidBody.cpp',
|
|
||||||
]
|
|
||||||
|
|
||||||
bullet_env.Append (CPPPATH = ['.',
|
#sources = env.Glob('Bullet/BroadPhaseCollision/*.cpp')
|
||||||
'Bullet',
|
#sources += env.Glob('Bullet/CollisionShapes/*.cpp')
|
||||||
'BulletDynamics',
|
#sources += env.Glob('Bullet/NarrowPhaseCollision/*.cpp')
|
||||||
'LinearMath'
|
#sources += env.Glob('BulletDynamics/CollisionDispatch/*.cpp')
|
||||||
])
|
#sources += env.Glob('BulletDynamics/ConstraintSolver/*.cpp')
|
||||||
source_files = bullet_sources
|
#sources += env.Glob('BulletDynamics/Dynamics/*.cpp')
|
||||||
|
|
||||||
bullet_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/extern_bullet', source=bullet_sources)
|
incs = '. Bullet BulletDynamics LinearMath'
|
||||||
|
|
||||||
|
env.BlenderLib ( libname = 'extern_bullet', sources=sources, includes=Split(incs), defines=Split(defs), libtype='game2', priority=20, compileflags=cflags )
|
||||||
|
54
extern/qhull/SConscript
vendored
54
extern/qhull/SConscript
vendored
@@ -2,38 +2,34 @@
|
|||||||
import sys
|
import sys
|
||||||
import os
|
import os
|
||||||
|
|
||||||
qhull_env = Environment(ENV = os.environ)
|
Import('env')
|
||||||
|
defs = ''
|
||||||
# Import the C flags set in the SConstruct file
|
cflags = []
|
||||||
Import ('cflags')
|
|
||||||
Import ('defines')
|
|
||||||
Import ('user_options_dict')
|
|
||||||
if sys.platform=='linux2' or sys.platform=='linux-i386':
|
if sys.platform=='linux2' or sys.platform=='linux-i386':
|
||||||
qhull_env.Append (CCFLAGS = ['-O2', '-ansi'])
|
cflags += ['-O2','-ansi']
|
||||||
elif sys.platform=='win32':
|
elif env['OURPLATFORM']=='win32-vc':
|
||||||
qhull_env.Append (CCFLAGS = ['/O2'])
|
cflags += ['/O2']
|
||||||
|
elif env['OURPLATFORM']=='win32-mingw':
|
||||||
|
cflags += ['-O2']
|
||||||
elif sys.platform=='sunos':
|
elif sys.platform=='sunos':
|
||||||
qhull_env.Append (CCFLAGS = ['Xc', '-v', '-fast'])
|
cflags += ['Xc', '-v', '-fast']
|
||||||
elif sys.platform=='darwin':
|
elif sys.platform=='darwin':
|
||||||
qhull_env.Append (CCFLAGS = ['-O2', '-pipe', '-fPIC', '-funsigned-char', '-ffast-math', '-mpowerpc' , '-mtune=G4'])
|
cflags += ['-O2', '-pipe', '-fPIC', '-funsigned-char', '-ffast-math', '-mpowerpc' , '-mtune=G4']
|
||||||
else:
|
|
||||||
qhull_env.Append (CCFLAGS = cflags)
|
|
||||||
qhull_env.Append (CPPDEFINES = defines)
|
|
||||||
|
|
||||||
source_files = ['src/geom.c',
|
sources = ['src/geom.c',
|
||||||
'src/geom2.c',
|
'src/geom2.c',
|
||||||
'src/global.c',
|
'src/global.c',
|
||||||
'src/io.c',
|
'src/io.c',
|
||||||
'src/mem.c',
|
'src/mem.c',
|
||||||
'src/merge.c',
|
'src/merge.c',
|
||||||
'src/poly.c',
|
'src/poly.c',
|
||||||
'src/poly2.c',
|
'src/poly2.c',
|
||||||
'src/qhull.c',
|
'src/qhull.c',
|
||||||
'src/qset.c',
|
'src/qset.c',
|
||||||
'src/stat.c',
|
'src/stat.c',
|
||||||
'src/user.c']
|
'src/user.c']
|
||||||
|
|
||||||
qhull_env.Append (CPPPATH = ['include',
|
|
||||||
'src'])
|
|
||||||
|
|
||||||
qhull_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/extern_qhull', source=source_files)
|
incs = 'include src'
|
||||||
|
|
||||||
|
env.BlenderLib ( 'extern_qhull', sources, Split(incs), Split(defs), libtype='game2', priority=50, compileflags = cflags)
|
||||||
|
75
extern/solid/SConscript
vendored
75
extern/solid/SConscript
vendored
@@ -1,29 +1,23 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
import sys
|
import sys
|
||||||
import os
|
|
||||||
|
|
||||||
solid_env = Environment(ENV = os.environ)
|
Import('env')
|
||||||
|
|
||||||
# Import the C flags set in the SConstruct file
|
defs = 'USE_DOUBLES QHULL _LIB'
|
||||||
Import ('cflags')
|
cflags = []
|
||||||
#Import ('cxxflags')
|
|
||||||
#Import ('defines')
|
|
||||||
Import ('user_options_dict')
|
|
||||||
#defines = ['QHULL', '_LIB']
|
|
||||||
defines = ['USE_DOUBLES','QHULL', '_LIB']
|
|
||||||
#cflags = []
|
|
||||||
cxxflags = []
|
|
||||||
|
|
||||||
if sys.platform=='win32':
|
if env['OURPLATFORM']=='win32-vc':
|
||||||
defines += ['WIN32','NDEBUG', '_WINDOWS', '_LIB']
|
defs += ' WIN32 NDEBUG _WINDOWS _LIB'
|
||||||
#cflags += ['/MT', '/W3', '/GX', '/O2', '/Op']
|
cflags += ['/MT', '/W3', '/GX', '/Og', '/Ot', '/Ob1', '/Op', '/G6']
|
||||||
cflags += ['/MT', '/W3', '/GX', '/Og', '/Ot', '/Ob1', '/Op', '/G6']
|
elif env['OURPLATFORM']=='win32-mingw':
|
||||||
|
defs += ' NDEBUG'
|
||||||
|
cflags += ['-O2']
|
||||||
elif sys.platform=='linux2' or sys.platform=='linux-i386' or sys.platform=='freebsd4' or sys.platform=='freebsd5':
|
elif sys.platform=='linux2' or sys.platform=='linux-i386' or sys.platform=='freebsd4' or sys.platform=='freebsd5':
|
||||||
defines += ['NDEBUG']
|
defs += ' NDEBUG'
|
||||||
cflags += ['-O2']
|
cflags += ['-O2']
|
||||||
elif sys.platform=='darwin' :
|
elif sys.platform=='darwin' :
|
||||||
defines += ['NDEBUG']
|
defs += ' NDEBUG'
|
||||||
cflags += ['-O2','-pipe', '-fPIC', '-funsigned-char', '-ffast-math', '-mpowerpc' , '-mtune=G4']
|
cflags += ['-O2','-pipe', '-fPIC', '-funsigned-char', '-ffast-math', '-mpowerpc' , '-mtune=G4']
|
||||||
|
|
||||||
else:
|
else:
|
||||||
print "################################################"
|
print "################################################"
|
||||||
@@ -33,45 +27,8 @@ else:
|
|||||||
print "and cflags / cxxflags to the"
|
print "and cflags / cxxflags to the"
|
||||||
print "extern/solid/SConscript file"
|
print "extern/solid/SConscript file"
|
||||||
|
|
||||||
solid_env.Append (CCFLAGS = cflags)
|
sources = env.Glob('src/*.cpp') + env.Glob('src/convex/*.cpp') + env.Glob('src/complex/*.cpp') + env.Glob('src/broad/*.cpp')
|
||||||
solid_env.Append (CPPFLAGS = cxxflags)
|
|
||||||
|
|
||||||
solid_env.Append (CPPDEFINES = defines)
|
incs = 'include src src/broad src/complex src/convex ../qhull/include'
|
||||||
|
|
||||||
solid_sources = ['src/DT_C-api.cpp',
|
env.BlenderLib ( libname='extern_solid', sources=sources, includes=Split(incs), defines=Split(defs), libtype='game2', priority=45 , compileflags = cflags)
|
||||||
'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)
|
|
||||||
|
@@ -13,6 +13,10 @@ SConscript(['SoundSystem/SConscript',
|
|||||||
'elbeem/SConscript',
|
'elbeem/SConscript',
|
||||||
'opennl/SConscript'])
|
'opennl/SConscript'])
|
||||||
|
|
||||||
|
# NEW_CSG was intended for intern/csg, but
|
||||||
|
# getting it to compile is difficult
|
||||||
|
# intern/bsp has been used anyway, so
|
||||||
|
# perhaps get rid of intern/csg?
|
||||||
NEW_CSG='false'
|
NEW_CSG='false'
|
||||||
|
|
||||||
if NEW_CSG=='false':
|
if NEW_CSG=='false':
|
||||||
|
@@ -1,47 +1,17 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
import sys
|
|
||||||
|
|
||||||
Import ('user_options_dict')
|
Import ('env')
|
||||||
Import ('extra_includes')
|
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
soundsys_env = library_env.Copy ()
|
sources = env.Glob('dummy/*.cpp') + env.Glob('intern/*.cpp')
|
||||||
|
|
||||||
source_files = ['dummy/SND_DummyDevice.cpp',
|
incs = '. intern ../moto/include ../string dummy openal sdl'
|
||||||
'intern/SND_AudioDevice.cpp',
|
defs = ''
|
||||||
'intern/SND_C-api.cpp',
|
if env['WITH_BF_OPENAL'] == 1:
|
||||||
'intern/SND_CDObject.cpp',
|
sources += env.Glob('openal/*.cpp') + env.Glob('sdl/*.cpp')
|
||||||
'intern/SND_DeviceManager.cpp',
|
incs += ' ' + env['BF_OPENAL_INC']
|
||||||
'intern/SND_IdObject.cpp',
|
incs += ' ' + env['BF_SDL_INC']
|
||||||
'intern/SND_Scene.cpp',
|
|
||||||
'intern/SND_SoundListener.cpp',
|
|
||||||
'intern/SND_SoundObject.cpp',
|
|
||||||
'intern/SND_Utils.cpp',
|
|
||||||
'intern/SND_WaveCache.cpp',
|
|
||||||
'intern/SND_WaveSlot.cpp']
|
|
||||||
|
|
||||||
soundsys_env.Append (CPPPATH = ['.',
|
if env['WITH_BF_OPENAL'] == 0:
|
||||||
'../SoundSystem',
|
defs = 'NO_SOUND'
|
||||||
'intern',
|
|
||||||
'../moto/include',
|
|
||||||
'../string',
|
|
||||||
'dummy',
|
|
||||||
'openal',
|
|
||||||
'sdl'])
|
|
||||||
|
|
||||||
if user_options_dict['USE_OPENAL'] == 1:
|
env.BlenderLib ('blender_sndsys', sources, Split(incs), Split(defs), libtype=['core','player2'], priority = [20,10] )
|
||||||
source_files += ['openal/SND_OpenALDevice.cpp',
|
|
||||||
'openal/pthread_cancel.cpp',
|
|
||||||
'sdl/SND_SDLCDDevice.cpp']
|
|
||||||
soundsys_env.Append (CPPPATH=user_options_dict['OPENAL_INCLUDE'])
|
|
||||||
soundsys_env.Append (CPPPATH=user_options_dict['SDL_INCLUDE'])
|
|
||||||
|
|
||||||
if user_options_dict['USE_FMOD'] == 1:
|
|
||||||
source_files += ['fmod/SND_FmodDevice.cpp']
|
|
||||||
|
|
||||||
if user_options_dict['USE_OPENAL'] == 0 and user_options_dict['USE_FMOD'] == 0:
|
|
||||||
soundsys_env.Append (CPPDEFINES = 'NO_SOUND')
|
|
||||||
|
|
||||||
soundsys_env.Append (CPPPATH = extra_includes)
|
|
||||||
|
|
||||||
soundsys_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/soundsystem', source=source_files)
|
|
||||||
|
@@ -1,24 +1,10 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
Import ('user_options_dict')
|
Import ('env')
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
bmfont_env = library_env.Copy ()
|
sources = env.Glob('intern/*.cpp')
|
||||||
|
|
||||||
source_files = ['intern/BMF_Api.cpp',
|
incs = '. intern'
|
||||||
'intern/BMF_BitmapFont.cpp',
|
incs += ' ' + env['BF_OPENGL_INC']
|
||||||
'intern/BMF_font_helv10.cpp',
|
defs = ''
|
||||||
'intern/BMF_font_helv12.cpp',
|
|
||||||
'intern/BMF_font_helvb10.cpp',
|
|
||||||
'intern/BMF_font_helvb12.cpp',
|
|
||||||
'intern/BMF_font_helvb14.cpp',
|
|
||||||
'intern/BMF_font_helvb8.cpp',
|
|
||||||
'intern/BMF_font_scr12.cpp',
|
|
||||||
'intern/BMF_font_scr14.cpp',
|
|
||||||
'intern/BMF_font_scr15.cpp']
|
|
||||||
|
|
||||||
bmfont_env.Append (CPPPATH = ['.',
|
env.BlenderLib ('blender_BMF', sources, Split(incs), Split(defs), libtype='intern', priority = 20 )
|
||||||
'../bmfont',
|
|
||||||
'intern'])
|
|
||||||
|
|
||||||
bmfont_env.Append (CPPPATH = user_options_dict['OPENGL_INCLUDE'])
|
|
||||||
bmfont_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/blender_BMF', source=source_files)
|
|
||||||
|
@@ -1,34 +1,8 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
Import ('user_options_dict')
|
Import ('env')
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
bop_env = library_env.Copy ()
|
sources = env.Glob('intern/*.cpp')
|
||||||
|
|
||||||
source_files = [
|
incs = '. intern extern ../moto/include ../container ../memutil'
|
||||||
'intern/BOP_BBox.cpp',
|
|
||||||
'intern/BOP_BSPNode.cpp',
|
|
||||||
'intern/BOP_BSPTree.cpp',
|
|
||||||
'intern/BOP_Edge.cpp',
|
|
||||||
'intern/BOP_Face.cpp',
|
|
||||||
'intern/BOP_Face2Face.cpp',
|
|
||||||
'intern/BOP_Interface.cpp',
|
|
||||||
'intern/BOP_Material.cpp',
|
|
||||||
'intern/BOP_MaterialContainer.cpp',
|
|
||||||
'intern/BOP_MathUtils.cpp',
|
|
||||||
'intern/BOP_Merge.cpp',
|
|
||||||
'intern/BOP_Mesh.cpp',
|
|
||||||
'intern/BOP_Segment.cpp',
|
|
||||||
'intern/BOP_Splitter.cpp',
|
|
||||||
'intern/BOP_Tag.cpp',
|
|
||||||
'intern/BOP_Triangulator.cpp',
|
|
||||||
'intern/BOP_Vertex.cpp'
|
|
||||||
]
|
|
||||||
|
|
||||||
bop_env.Append (CPPPATH = [ '.',
|
env.BlenderLib ('blender_bop', sources, Split(incs) , [], libtype='common', priority = 5 )
|
||||||
'intern',
|
|
||||||
'extern',
|
|
||||||
'#intern/moto/include',
|
|
||||||
'#intern/container',
|
|
||||||
'#intern/memutil'])
|
|
||||||
|
|
||||||
bop_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/blender_bop', source=source_files)
|
|
||||||
|
@@ -1,25 +1,8 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
Import ('user_options_dict')
|
Import ('env')
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
bsp_env = library_env.Copy ()
|
sources = env.Glob('intern/*.cpp')
|
||||||
|
|
||||||
source_files = ['intern/BSP_CSGHelper.cpp',
|
incs = 'intern ../container ../moto/include ../memutil'
|
||||||
'intern/BSP_CSGMesh.cpp',
|
|
||||||
'intern/BSP_CSGMeshBuilder.cpp',
|
|
||||||
'intern/BSP_CSGMeshSplitter.cpp',
|
|
||||||
'intern/BSP_CSGNCMeshSplitter.cpp',
|
|
||||||
'intern/BSP_CSGUserData.cpp',
|
|
||||||
'intern/BSP_FragNode.cpp',
|
|
||||||
'intern/BSP_FragTree.cpp',
|
|
||||||
'intern/BSP_MeshFragment.cpp',
|
|
||||||
'intern/BSP_MeshPrimitives.cpp',
|
|
||||||
'intern/BSP_Triangulate.cpp',
|
|
||||||
'intern/CSG_BooleanOps.cpp']
|
|
||||||
|
|
||||||
bsp_env.Append (CPPPATH = ['intern',
|
env.BlenderLib ('blender_BSP', sources, Split(incs), [], libtype='core', priority=15 )
|
||||||
'../container',
|
|
||||||
'../moto/include',
|
|
||||||
'../memutil'])
|
|
||||||
|
|
||||||
bsp_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/blender_BSP', source=source_files)
|
|
||||||
|
@@ -1,11 +1,7 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
Import ('user_options_dict')
|
Import ('env')
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
cont_env = library_env.Copy ()
|
sources = env.Glob('intern/*.cpp')
|
||||||
|
incs = '.'
|
||||||
|
|
||||||
source_files = ['intern/CTR_List.cpp']
|
env.BlenderLib ('blender_CTR', sources, Split(incs) , [], libtype='intern', priority = 5 )
|
||||||
|
|
||||||
cont_env.Append (CPPPATH = ['.','../container'])
|
|
||||||
|
|
||||||
cont_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/blender_CTR', source=source_files)
|
|
||||||
|
@@ -1,30 +1,8 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
csg_env = Environment()
|
Import('env')
|
||||||
|
|
||||||
# Import the C flags set in the SConstruct file
|
sources = env.Glob('intern/*.cpp') + env.Glob('intern/*.inl')
|
||||||
Import ('cflags')
|
|
||||||
Import ('cxxflags')
|
|
||||||
Import ('defines')
|
|
||||||
csg_env.Append (CCFLAGS = cflags)
|
|
||||||
csg_env.Append (CXXFLAGS = cxxflags)
|
|
||||||
csg_env.Append (CPPDEFINES = defines)
|
|
||||||
|
|
||||||
source_files = ['intern/CSG_BBoxTree.cpp',
|
incs = 'intern ../container ../moto/include ../memutil intern/blender extern'
|
||||||
'intern/CSG_ConnectedMeshWrapper.inl',
|
|
||||||
'intern/CSG_Math.inl',
|
|
||||||
'intern/CSG_Triangulate.inl',
|
|
||||||
'intern/blender/CSG_CsgOp.cpp',
|
|
||||||
'intern/blender/CSG_Interface.cpp',
|
|
||||||
'intern/CSG_BooleanOp.inl',
|
|
||||||
'intern/CSG_MeshWrapper.inl',
|
|
||||||
'intern/MT_Line3.cpp'
|
|
||||||
]
|
|
||||||
|
|
||||||
csg_env.Append (CPPPATH = ['intern',
|
env.BlenderLib ('blender_BSP', sources, Split(incs) , [], libtype='blender', priority=15)
|
||||||
'../container',
|
|
||||||
'../moto/include',
|
|
||||||
'../memutil',
|
|
||||||
'intern/blender',
|
|
||||||
'extern'])
|
|
||||||
|
|
||||||
csg_env.Library (target='#/lib/blender_BSP', source=source_files)
|
|
||||||
|
@@ -1,22 +1,8 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
Import ('user_options_dict')
|
Import ('env')
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
dec_env = library_env.Copy ()
|
sources = env.Glob('intern/*.cpp')
|
||||||
|
|
||||||
source_files = ['intern/LOD_EdgeCollapser.cpp',
|
incs = '. ../moto/include ../container ../memutil'
|
||||||
'intern/LOD_ExternNormalEditor.cpp',
|
|
||||||
'intern/LOD_FaceNormalEditor.cpp',
|
|
||||||
'intern/LOD_ManMesh2.cpp',
|
|
||||||
'intern/LOD_MeshPrimitives.cpp',
|
|
||||||
'intern/LOD_QSDecimator.cpp',
|
|
||||||
'intern/LOD_QuadricEditor.cpp',
|
|
||||||
'intern/LOD_decimation.cpp']
|
|
||||||
|
|
||||||
dec_env.Append (CPPPATH = ['intern',
|
env.BlenderLib ('blender_LOD', sources, Split(incs) , [], libtype=['core','common', 'player2'], priority = [10, 20, 5] )
|
||||||
'extern',
|
|
||||||
'../moto/include',
|
|
||||||
'../container',
|
|
||||||
'../memutil'])
|
|
||||||
|
|
||||||
dec_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/blender_LOD', source=source_files)
|
|
||||||
|
@@ -1,55 +1,23 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
Import ('library_env')
|
import sys
|
||||||
Import('user_options_dict');
|
Import('env')
|
||||||
Import('use_fluidsim');
|
|
||||||
|
#if use_fluidsim=='false':
|
||||||
|
# # print "El'Beem Fluid Simulation Disabled..." # debug
|
||||||
|
# elbeem_env.Append (CPPPATH = user_options_dict['PNG_INCLUDE'])
|
||||||
|
# elbeem_env.Append (CPPPATH = user_options_dict['SDL_INCLUDE'])
|
||||||
|
# elbeem_env.Append(CPPDEFINES= 'ELBEEM_DUMMIES');
|
||||||
|
# # dummy interface build
|
||||||
|
# Sources = [
|
||||||
|
# "intern/utilities.cpp",
|
||||||
|
# "intern/blenderdummy.cpp"
|
||||||
|
# ]; # sources
|
||||||
|
|
||||||
elbeem_env = library_env.Copy();
|
sources = env.Glob('intern/*.cpp')
|
||||||
elbeem_env.Append(CPPDEFINES= 'NOGUI');
|
|
||||||
elbeem_env.Append(CPPDEFINES= [('ELBEEM_BLENDER',1)] );
|
|
||||||
|
|
||||||
if use_fluidsim=='false':
|
|
||||||
# print "El'Beem Fluid Simulation Disabled..." # debug
|
|
||||||
elbeem_env.Append (CPPPATH = user_options_dict['PNG_INCLUDE'])
|
|
||||||
# dummy interface build
|
|
||||||
Sources = [
|
|
||||||
"intern/utilities.cpp",
|
|
||||||
"intern/blenderdummy.cpp"
|
|
||||||
]; # sources
|
|
||||||
else:
|
|
||||||
# print "Including El'Beem Fluid Simulation..." # debug
|
|
||||||
elbeem_env.Append (CPPPATH = user_options_dict['PNG_INCLUDE'])
|
|
||||||
elbeem_env.Append (CPPPATH = user_options_dict['Z_INCLUDE'])
|
|
||||||
elbeem_env.Append (CPPPATH = user_options_dict['SDL_INCLUDE'])
|
|
||||||
|
|
||||||
# main build----------------------------------------
|
defs = 'NOGUI ELBEEM_BLENDER=1'
|
||||||
Sources = [
|
if sys.platform=='win32':
|
||||||
|
defs += ' USE_MSVC6FIXES'
|
||||||
"intern/cfgparser.cpp",
|
incs = env['BF_PNG_INC'] + ' ' + env['BF_ZLIB_INC'] + ' ' +env['BF_SDL_INC']
|
||||||
"intern/cfglexer.cpp",
|
|
||||||
|
|
||||||
"intern/attributes.cpp",
|
|
||||||
"intern/elbeem.cpp",
|
|
||||||
"intern/isosurface.cpp",
|
|
||||||
"intern/ntl_blenderdumper.cpp",
|
|
||||||
"intern/ntl_bsptree.cpp",
|
|
||||||
"intern/ntl_geometrymodel.cpp",
|
|
||||||
"intern/ntl_geometryobject.cpp",
|
|
||||||
"intern/ntl_lightobject.cpp",
|
|
||||||
"intern/ntl_ray.cpp",
|
|
||||||
"intern/ntl_scene.cpp",
|
|
||||||
"intern/ntl_world.cpp",
|
|
||||||
"intern/parametrizer.cpp",
|
|
||||||
"intern/particletracer.cpp",
|
|
||||||
"intern/simulation_object.cpp",
|
|
||||||
"intern/utilities.cpp",
|
|
||||||
"intern/blendercall.cpp",
|
|
||||||
|
|
||||||
"intern/solver_init.cpp",
|
|
||||||
"intern/solver_interface.cpp",
|
|
||||||
"intern/solver_main.cpp",
|
|
||||||
"intern/solver_util.cpp"
|
|
||||||
|
|
||||||
]; # sources
|
|
||||||
|
|
||||||
elbeem_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/blender_elbeem', source=Sources)
|
|
||||||
|
|
||||||
|
env.BlenderLib ('blender_elbeem', sources, Split(incs), Split(defs), libtype='blender', priority=0 )
|
||||||
|
@@ -1,42 +1,30 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
Import ('user_options_dict')
|
import sys
|
||||||
Import ('library_env')
|
import os
|
||||||
Import ('window_system')
|
|
||||||
|
|
||||||
ghost_env = library_env.Copy ()
|
Import ('env')
|
||||||
|
|
||||||
source_files = ['intern/GHOST_Buttons.cpp',
|
window_system = sys.platform
|
||||||
'intern/GHOST_C-api.cpp',
|
|
||||||
'intern/GHOST_CallbackEventConsumer.cpp',
|
|
||||||
'intern/GHOST_DisplayManager.cpp',
|
|
||||||
'intern/GHOST_EventManager.cpp',
|
|
||||||
'intern/GHOST_EventPrinter.cpp',
|
|
||||||
'intern/GHOST_ISystem.cpp',
|
|
||||||
'intern/GHOST_ModifierKeys.cpp',
|
|
||||||
'intern/GHOST_Rect.cpp',
|
|
||||||
'intern/GHOST_System.cpp',
|
|
||||||
'intern/GHOST_TimerManager.cpp',
|
|
||||||
'intern/GHOST_Window.cpp',
|
|
||||||
'intern/GHOST_WindowManager.cpp']
|
|
||||||
|
|
||||||
if window_system == 'X11':
|
sources = env.Glob('intern/*.cpp')
|
||||||
source_files += ['intern/GHOST_DisplayManagerX11.cpp',
|
|
||||||
'intern/GHOST_SystemX11.cpp',
|
pf = ['GHOST_DisplayManager', 'GHOST_System', 'GHOST_Window']
|
||||||
'intern/GHOST_WindowX11.cpp']
|
|
||||||
elif window_system == 'WIN32':
|
if window_system == 'linux2':
|
||||||
source_files += ['intern/GHOST_DisplayManagerWin32.cpp',
|
for f in pf:
|
||||||
'intern/GHOST_SystemWin32.cpp',
|
sources.remove('intern' + os.sep + f + 'Win32.cpp')
|
||||||
'intern/GHOST_WindowWin32.cpp']
|
sources.remove('intern' + os.sep + f + 'Carbon.cpp')
|
||||||
elif window_system == 'CARBON':
|
elif window_system == 'win32':
|
||||||
source_files += ['intern/GHOST_DisplayManagerCarbon.cpp',
|
for f in pf:
|
||||||
'intern/GHOST_SystemCarbon.cpp',
|
sources.remove('intern' + os.sep + f + 'X11.cpp')
|
||||||
'intern/GHOST_WindowCarbon.cpp']
|
sources.remove('intern' + os.sep + f + 'Carbon.cpp')
|
||||||
|
elif window_system == 'darwin':
|
||||||
|
for f in pf:
|
||||||
|
sources.remove('intern' + os.sep + f + 'Win32.cpp')
|
||||||
|
sources.remove('intern' + os.sep + f + 'X11.cpp')
|
||||||
else:
|
else:
|
||||||
print "Unknown window system specified."
|
print "Unknown window system specified."
|
||||||
|
Exit()
|
||||||
|
|
||||||
ghost_env.Append (CPPPATH = ['.',
|
incs = '. ../string ' + env['BF_OPENGL_INC']
|
||||||
'../ghost',
|
env.BlenderLib ('blender_GHOST', sources, Split(incs), [], libtype='core', priority = 25 )
|
||||||
'../string'])
|
|
||||||
|
|
||||||
ghost_env.Append (CPPPATH = user_options_dict['OPENGL_INCLUDE'])
|
|
||||||
ghost_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/blender_GHOST', source=source_files)
|
|
||||||
|
@@ -1,11 +1,8 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
Import ('user_options_dict')
|
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
guardal_env = library_env.Copy ()
|
Import('env')
|
||||||
|
|
||||||
source_files = ['intern/mallocn.c']
|
sources = env.Glob('intern/*.c')
|
||||||
|
incs = '.'
|
||||||
|
|
||||||
guardal_env.Append (CPPPATH = ['../guardedalloc'])
|
env.BlenderLib ('blender_guardedalloc', sources, Split(incs), [], libtype='intern', priority = 0 )
|
||||||
|
|
||||||
guardal_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/blender_guardedalloc', source=source_files)
|
|
||||||
|
@@ -1,17 +1,8 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
Import ('user_options_dict')
|
Import ('env')
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
iksolver_env = library_env.Copy ()
|
sources = env.Glob('intern/*.cpp')
|
||||||
|
|
||||||
source_files = ['intern/IK_QTask.cpp',
|
incs = 'intern ../moto/include ../memutil'
|
||||||
'intern/IK_QJacobianSolver.cpp',
|
|
||||||
'intern/IK_QSegment.cpp',
|
|
||||||
'intern/IK_QJacobian.cpp',
|
|
||||||
'intern/IK_Solver.cpp']
|
|
||||||
|
|
||||||
iksolver_env.Append (CPPPATH = ['intern',
|
env.BlenderLib ('blender_IK', sources, Split(incs), [], libtype='blender', priority=10 )
|
||||||
'../moto/include',
|
|
||||||
'../memutil'])
|
|
||||||
|
|
||||||
iksolver_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/blender_IK', source=source_files)
|
|
||||||
|
@@ -1,11 +1,8 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
Import ('user_options_dict')
|
Import ('env')
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
memutil_env = library_env.Copy ()
|
sources = env.Glob('intern/*.cpp')
|
||||||
|
|
||||||
source_files = ['intern/MEM_RefCountedC-Api.cpp']
|
incs = '.'
|
||||||
|
|
||||||
memutil_env.Append (CPPPATH = ['.','../memutil'])
|
env.BlenderLib ('blender_MEM', sources, Split(incs), [], libtype='intern', priority = 10 )
|
||||||
|
|
||||||
memutil_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/blender_MEM', source=source_files)
|
|
||||||
|
@@ -1,22 +1,8 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
Import ('user_options_dict')
|
Import ('env')
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
moto_env = library_env.Copy ()
|
sources = env.Glob('intern/*.cpp')
|
||||||
|
|
||||||
source_files = ['intern/MT_Assert.cpp',
|
incs = 'include'
|
||||||
'intern/MT_CmMatrix4x4.cpp',
|
|
||||||
'intern/MT_Matrix3x3.cpp',
|
|
||||||
'intern/MT_Matrix4x4.cpp',
|
|
||||||
'intern/MT_Plane3.cpp',
|
|
||||||
'intern/MT_Point3.cpp',
|
|
||||||
'intern/MT_Quaternion.cpp',
|
|
||||||
'intern/MT_Transform.cpp',
|
|
||||||
'intern/MT_Vector2.cpp',
|
|
||||||
'intern/MT_Vector3.cpp',
|
|
||||||
'intern/MT_Vector4.cpp',
|
|
||||||
'intern/MT_random.cpp']
|
|
||||||
|
|
||||||
moto_env.Append (CPPPATH = ['include'])
|
env.BlenderLib ('blender_MT', sources, Split(incs), [], libtype=['intern','game','game2'], priority = [15, 55,100] )
|
||||||
|
|
||||||
moto_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/blender_MT', source=source_files)
|
|
||||||
|
@@ -1,43 +1,9 @@
|
|||||||
Import ('user_options_dict')
|
#!/usr/bin/python
|
||||||
Import ('library_env')
|
Import ('env')
|
||||||
|
|
||||||
opennl_env = library_env.Copy ()
|
sources = env.Glob('intern/*.c') + env.Glob('superlu/*.c')
|
||||||
|
|
||||||
source_files = ['intern/opennl.c',
|
incs = 'extern superlu'
|
||||||
'superlu/colamd.c',
|
|
||||||
'superlu/get_perm_c.c',
|
|
||||||
'superlu/heap_relax_snode.c',
|
|
||||||
'superlu/lsame.c',
|
|
||||||
'superlu/memory.c',
|
|
||||||
'superlu/mmd.c',
|
|
||||||
'superlu/relax_snode.c',
|
|
||||||
'superlu/scolumn_bmod.c',
|
|
||||||
'superlu/scolumn_dfs.c',
|
|
||||||
'superlu/scopy_to_ucol.c',
|
|
||||||
'superlu/sgssv.c',
|
|
||||||
'superlu/sgstrf.c',
|
|
||||||
'superlu/sgstrs.c',
|
|
||||||
'superlu/smemory.c',
|
|
||||||
'superlu/smyblas2.c',
|
|
||||||
'superlu/sp_coletree.c',
|
|
||||||
'superlu/sp_ienv.c',
|
|
||||||
'superlu/sp_preorder.c',
|
|
||||||
'superlu/spanel_bmod.c',
|
|
||||||
'superlu/spanel_dfs.c',
|
|
||||||
'superlu/spivotL.c',
|
|
||||||
'superlu/spruneL.c',
|
|
||||||
'superlu/ssnode_bmod.c',
|
|
||||||
'superlu/ssnode_dfs.c',
|
|
||||||
'superlu/ssp_blas2.c',
|
|
||||||
'superlu/ssp_blas3.c',
|
|
||||||
'superlu/strsv.c',
|
|
||||||
'superlu/superlu_timer.c',
|
|
||||||
'superlu/sutil.c',
|
|
||||||
'superlu/util.c',
|
|
||||||
'superlu/xerbla.c']
|
|
||||||
|
|
||||||
opennl_env.Append (CPPPATH = ['extern',
|
env.BlenderLib ('blender_ONL', sources, Split(incs), [], libtype='core', priority=55 )
|
||||||
'superlu'])
|
|
||||||
|
|
||||||
opennl_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/blender_ONL', source=source_files)
|
|
||||||
|
|
||||||
|
@@ -1,11 +1,7 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
Import ('user_options_dict')
|
Import ('env')
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
string_env = library_env.Copy ()
|
sources = env.Glob('intern/*.cpp')
|
||||||
|
incs = '.'
|
||||||
|
|
||||||
source_files = ['intern/STR_String.cpp']
|
env.BlenderLib ('blender_STR', sources, Split(incs), [], libtype='core', priority = 30 )
|
||||||
|
|
||||||
string_env.Append (CPPPATH = ['.', '../string'])
|
|
||||||
|
|
||||||
string_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/blender_STR', source=source_files)
|
|
||||||
|
@@ -1,8 +1,8 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
Import ('user_options_dict')
|
Import ('env')
|
||||||
|
|
||||||
SConscript(['blender/SConscript',
|
SConscript(['blender/SConscript',
|
||||||
'kernel/SConscript',
|
'kernel/SConscript',
|
||||||
'creator/SConscript'])
|
'creator/SConscript'])
|
||||||
if user_options_dict['BUILD_GAMEENGINE'] == 1:
|
if env['WITH_BF_GAMEENGINE'] == 1:
|
||||||
SConscript (['gameengine/SConscript'])
|
SConscript (['gameengine/SConscript'])
|
||||||
|
@@ -1,5 +1,5 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
Import ('user_options_dict')
|
Import ('env')
|
||||||
|
|
||||||
SConscript(['avi/SConscript',
|
SConscript(['avi/SConscript',
|
||||||
'blenkernel/SConscript',
|
'blenkernel/SConscript',
|
||||||
@@ -16,11 +16,11 @@ SConscript(['avi/SConscript',
|
|||||||
'src/SConscript',
|
'src/SConscript',
|
||||||
'yafray/SConscript'])
|
'yafray/SConscript'])
|
||||||
|
|
||||||
if user_options_dict['USE_OPENEXR'] == 1:
|
if env['WITH_BF_FREETYPE'] == 1:
|
||||||
SConscript (['imbuf/intern/openexr/SConscript'])
|
|
||||||
|
|
||||||
if user_options_dict['USE_INTERNATIONAL'] == 1:
|
|
||||||
SConscript (['ftfont/SConscript'])
|
SConscript (['ftfont/SConscript'])
|
||||||
|
|
||||||
if user_options_dict['USE_QUICKTIME'] == 1:
|
if env['WITH_BF_OPENEXR'] == 1:
|
||||||
|
SConscript (['imbuf/intern/openexr/SConscript'])
|
||||||
|
|
||||||
|
if env['WITH_BF_QUICKTIME'] == 1:
|
||||||
SConscript (['quicktime/SConscript'])
|
SConscript (['quicktime/SConscript'])
|
||||||
|
@@ -1,22 +1,10 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
Import ('extra_includes')
|
#Import ('extra_includes')
|
||||||
Import ('user_options_dict')
|
Import ('env')
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
avi_env = library_env.Copy ()
|
sources = env.Glob('intern/*.c')
|
||||||
|
|
||||||
source_files = ['intern/avi.c',
|
incs = '. #/intern/guardedalloc'
|
||||||
'intern/avirgb.c',
|
incs += ' ' + env['BF_JPEG_INC']
|
||||||
'intern/codecs.c',
|
|
||||||
'intern/endian.c',
|
|
||||||
'intern/mjpeg.c',
|
|
||||||
'intern/options.c',
|
|
||||||
'intern/rgb32.c']
|
|
||||||
|
|
||||||
avi_env.Append (CPPPATH = ['.',
|
env.BlenderLib ('blender_avi', sources, Split(incs), [], libtype='core', priority = 90 )
|
||||||
'../avi',
|
|
||||||
'#/intern/guardedalloc'])
|
|
||||||
|
|
||||||
avi_env.Append (CPPPATH=user_options_dict['JPEG_INCLUDE'])
|
|
||||||
avi_env.Append (CPPPATH=extra_includes)
|
|
||||||
avi_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/blender_avi', source=source_files)
|
|
||||||
|
@@ -1,81 +1,32 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
Import ('user_options_dict')
|
Import ('env')
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
blenkernel_env = library_env.Copy ()
|
sources = env.Glob('intern/*.c')
|
||||||
|
|
||||||
source_files = ['intern/constraint.c',
|
incs = '. #/intern/guardedalloc ../include ../blenlib ../makesdna'
|
||||||
'intern/depsgraph.c',
|
incs += ' ../python ../render/extern/include #/intern/decimation/extern'
|
||||||
'intern/DerivedMesh.c',
|
incs += ' ../imbuf ../avi #/intern/elbeem/extern'
|
||||||
'intern/group.c',
|
incs += ' #/intern/iksolver/extern ../blenloader ../quicktime'
|
||||||
'intern/icons.c',
|
|
||||||
'intern/material.c',
|
|
||||||
'intern/sca.c',
|
|
||||||
'intern/world.c',
|
|
||||||
'intern/curve.c',
|
|
||||||
'intern/mball.c',
|
|
||||||
'intern/scene.c',
|
|
||||||
'intern/writeavi.c',
|
|
||||||
'intern/action.c',
|
|
||||||
'intern/deform.c',
|
|
||||||
'intern/image.c',
|
|
||||||
'intern/mesh.c',
|
|
||||||
'intern/modifier.c',
|
|
||||||
'intern/screen.c',
|
|
||||||
'intern/anim.c',
|
|
||||||
'intern/displist.c',
|
|
||||||
'intern/ipo.c',
|
|
||||||
'intern/nla.c',
|
|
||||||
'intern/sound.c',
|
|
||||||
'intern/armature.c',
|
|
||||||
'intern/effect.c',
|
|
||||||
'intern/key.c',
|
|
||||||
'intern/object.c',
|
|
||||||
'intern/CCGSubSurf.c',
|
|
||||||
'intern/subsurf_ccg.c',
|
|
||||||
'intern/blender.c',
|
|
||||||
'intern/exotic.c',
|
|
||||||
'intern/lattice.c',
|
|
||||||
'intern/packedFile.c',
|
|
||||||
'intern/text.c',
|
|
||||||
'intern/script.c',
|
|
||||||
'intern/bmfont.c',
|
|
||||||
'intern/font.c',
|
|
||||||
'intern/library.c',
|
|
||||||
'intern/property.c',
|
|
||||||
'intern/softbody.c',
|
|
||||||
'intern/node.c',
|
|
||||||
'intern/node_shaders.c',
|
|
||||||
'intern/node_composite.c',
|
|
||||||
'intern/colortools.c',
|
|
||||||
'intern/texture.c']
|
|
||||||
|
|
||||||
blenkernel_env.Append (CPPPATH = ['.',
|
incs += ' ' + env['BF_OPENGL_INC']
|
||||||
'../blenkernel',
|
incs += ' ' + env['BF_ZLIB_INC']
|
||||||
'#/intern/guardedalloc',
|
incs += ' ' + env['BF_SDL_INC']
|
||||||
'../include',
|
|
||||||
'../blenlib',
|
|
||||||
'../makesdna',
|
|
||||||
'../python',
|
|
||||||
'../render/extern/include',
|
|
||||||
'../../../intern/decimation/extern',
|
|
||||||
'../imbuf',
|
|
||||||
'../avi',
|
|
||||||
'../quicktime',
|
|
||||||
'#/intern/elbeem/extern',
|
|
||||||
'#/intern/iksolver/extern',
|
|
||||||
'../blenloader'])
|
|
||||||
|
|
||||||
if user_options_dict['USE_INTERNATIONAL'] == 1:
|
defs = ''
|
||||||
blenkernel_env.Append (CPPDEFINES = 'WITH_FREETYPE2')
|
|
||||||
|
|
||||||
#fixme: if user_options_dict['USE_CCGSUBSURFLIB'] == 1:
|
if env['WITH_BF_FREETYPE'] == 1:
|
||||||
# blenkernel_env.Append (CPPDEFINES = 'WITH_CCGSUBSURF')
|
defs += 'WITH_FREETYPE2'
|
||||||
|
|
||||||
blenkernel_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/blender_blenkernel', source=source_files)
|
if env['WITH_BF_OPENEXR'] == 1:
|
||||||
|
defs += ' WITH_OPENEXR'
|
||||||
|
|
||||||
SConscript(['bad_level_call_stubs/SConscript'])
|
if env['WITH_BF_QUICKTIME'] == 1:
|
||||||
|
defs += ' WITH_QUICKTIME'
|
||||||
|
incs += ' ' + env['BF_QUICKTIME_INC']
|
||||||
|
|
||||||
blenkernel_env.Append (CPPPATH = user_options_dict['OPENGL_INCLUDE'])
|
defs += ' WITH_CCGSUBSURF'
|
||||||
blenkernel_env.Append (CPPPATH = user_options_dict['Z_INCLUDE'])
|
|
||||||
blenkernel_env.Append (CPPPATH = user_options_dict['SDL_INCLUDE'])
|
if env['WITH_BF_PLAYER']:
|
||||||
|
SConscript(['bad_level_call_stubs/SConscript'])
|
||||||
|
|
||||||
|
env.BlenderLib ( libname = 'blenkernel', sources = sources, includes = Split(incs), defines = Split(defs), libtype='core', priority = 65 )
|
||||||
|
@@ -1,27 +1,14 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
Import ('user_options_dict')
|
Import ('env')
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
blenkernel_blc_env = library_env.Copy ()
|
sources = 'stubs.c'
|
||||||
|
|
||||||
source_files = ['stubs.c'
|
incs = '. .. ../../render/extern/include'
|
||||||
]
|
incs += ' #/intern/iksolver/extern ../../blenlib'
|
||||||
blenkernel_blc_env.Append (CPPPATH = ['.',
|
incs += ' ../../include ../../makesdna'
|
||||||
'..',
|
|
||||||
'../../render/extern/include',
|
|
||||||
'#/intern/iksolver/extern',
|
|
||||||
'../../blenlib',
|
|
||||||
'../../include',
|
|
||||||
'../../makesdna'])
|
|
||||||
"""
|
|
||||||
,
|
|
||||||
'#/intern/guardedalloc',
|
|
||||||
'../python',
|
|
||||||
'../imbuf',
|
|
||||||
'../avi',
|
|
||||||
'../blenloader']
|
|
||||||
"""
|
|
||||||
if user_options_dict['USE_INTERNATIONAL'] == 1:
|
|
||||||
blenkernel_blc_env.Append (CPPDEFINES = 'WITH_FREETYPE2')
|
|
||||||
|
|
||||||
blenkernel_blc_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/blender_blenkernel_blc', source=source_files)
|
defs = ''
|
||||||
|
if env['WITH_BF_FREETYPE'] == 1:
|
||||||
|
defs += 'WITH_FREETYPE2'
|
||||||
|
|
||||||
|
env.BlenderLib ('blenkernel_blc', sources = Split(sources), includes=Split(incs), defines=Split(defs), libtype='player2',priority=0 )
|
||||||
|
@@ -1,47 +1,15 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
Import ('extra_includes')
|
Import ('env')
|
||||||
Import ('user_options_dict')
|
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
blenlib_env = library_env.Copy ()
|
sources = env.Glob('intern/*.c')
|
||||||
|
|
||||||
source_files = ['intern/BLI_dynstr.c',
|
incs = '. ../makesdna ../blenkernel #/intern/guardedalloc ../include'
|
||||||
'intern/BLI_ghash.c',
|
incs += ' ' + env['BF_FREETYPE_INC']
|
||||||
'intern/edgehash.c',
|
incs += ' ' + env['BF_ZLIB_INC']
|
||||||
'intern/BLI_linklist.c',
|
incs += ' ' + env['BF_SDL_INC']
|
||||||
'intern/BLI_memarena.c',
|
defs = ''
|
||||||
'intern/arithb.c',
|
|
||||||
'intern/dynlib.c',
|
|
||||||
'intern/fileops.c',
|
|
||||||
'intern/gsqueue.c',
|
|
||||||
'intern/matrixops.c',
|
|
||||||
'intern/noise.c',
|
|
||||||
'intern/psfont.c',
|
|
||||||
'intern/rand.c',
|
|
||||||
'intern/rct.c',
|
|
||||||
'intern/scanfill.c',
|
|
||||||
'intern/storage.c',
|
|
||||||
'intern/time.c',
|
|
||||||
'intern/util.c',
|
|
||||||
'intern/vectorops.c',
|
|
||||||
'intern/freetypefont.c',
|
|
||||||
'intern/jitter.c',
|
|
||||||
'intern/threads.c',
|
|
||||||
'intern/winstuff.c']
|
|
||||||
|
|
||||||
|
if env['WITH_BF_FREETYPE'] == 1:
|
||||||
|
defs = 'WITH_FREETYPE2'
|
||||||
|
|
||||||
blenlib_env.Append (CPPPATH = ['.',
|
env.BlenderLib ( 'blender_blenlib', sources, Split(incs), Split(defs), libtype='core', priority = 85 )
|
||||||
'../blenlib',
|
|
||||||
'../makesdna',
|
|
||||||
'../blenkernel',
|
|
||||||
'#/intern/guardedalloc',
|
|
||||||
'../include'])
|
|
||||||
|
|
||||||
if user_options_dict['USE_INTERNATIONAL'] == 1:
|
|
||||||
blenlib_env.Append (CPPDEFINES = 'WITH_FREETYPE2')
|
|
||||||
|
|
||||||
blenlib_env.Append (CPPPATH = extra_includes)
|
|
||||||
blenlib_env.Prepend (CPPPATH = user_options_dict['FREETYPE_INCLUDE'])
|
|
||||||
blenlib_env.Append (CPPPATH = user_options_dict['Z_INCLUDE'])
|
|
||||||
blenlib_env.Append (CPPPATH = user_options_dict['SDL_INCLUDE'])
|
|
||||||
blenlib_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/blender_blenlib', source=source_files)
|
|
||||||
|
@@ -1,28 +1,13 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
Import ('user_options_dict')
|
Import ('env')
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
blenloader_env = library_env.Copy ()
|
sources = env.Glob('intern/*.c')
|
||||||
|
|
||||||
source_files = ['intern/genfile.c',
|
incs = '. #/intern/guardedalloc ../blenlib ../blenkernel'
|
||||||
'intern/readblenentry.c',
|
incs += ' ../makesdna ../readblenfile ../include'
|
||||||
'intern/undofile.c',
|
incs += ' ../python ../../kernel/gen_messaging'
|
||||||
'intern/readfile.c',
|
incs += ' ../render/extern/include'
|
||||||
'intern/writefile.c']
|
|
||||||
|
|
||||||
blenloader_env.Append (CPPPATH = ['.',
|
incs += ' ' + env['BF_ZLIB_INC']
|
||||||
'../blenloader',
|
|
||||||
'#/intern/guardedalloc',
|
|
||||||
'../blenlib',
|
|
||||||
'../blenkernel',
|
|
||||||
'../makesdna',
|
|
||||||
'../readblenfile',
|
|
||||||
'../include',
|
|
||||||
'../python',
|
|
||||||
'../../kernel/gen_messaging',
|
|
||||||
'../render/extern/include',
|
|
||||||
'../writestreamglue',
|
|
||||||
'../readstreamglue'])
|
|
||||||
|
|
||||||
blenloader_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/blender_blenloader', source=source_files)
|
env.BlenderLib ( 'blender_blenloader', sources, Split(incs), [], libtype='core', priority = 70 )
|
||||||
blenloader_env.Append (CPPPATH = user_options_dict['Z_INCLUDE'])
|
|
||||||
|
@@ -1,17 +1,14 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
Import ('user_options_dict')
|
Import ('env')
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
blenplugin_env = library_env.Copy ()
|
sources = env.Glob('intern/*.c')
|
||||||
|
|
||||||
source_files = ['intern/pluginapi.c']
|
incs = '. .. #/intern/guardedalloc ../blenlib ../imbuf ../makesdna'
|
||||||
|
|
||||||
blenplugin_env.Append (CPPPATH = ['.',
|
defs = []
|
||||||
'..',
|
|
||||||
'../blenpluginapi',
|
|
||||||
'#/intern/guardedalloc',
|
|
||||||
'../blenlib',
|
|
||||||
'../imbuf',
|
|
||||||
'../makesdna'])
|
|
||||||
|
|
||||||
blenplugin_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/blender_blenpluginapi', source=source_files)
|
if env['WITH_BF_QUICKTIME'] == 1:
|
||||||
|
defs.append('WITH_QUICKTIME')
|
||||||
|
incs += ' ' + env['BF_QUICKTIME_INC']
|
||||||
|
|
||||||
|
env.BlenderLib ( libname = 'blender_blenpluginapi', sources = sources, includes = Split(incs), defines = defs, libtype='core', priority = 75 )
|
||||||
|
@@ -1,23 +1,15 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
Import ('extra_includes')
|
import sys
|
||||||
Import ('user_options_dict')
|
Import ('env')
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
ftf_env = library_env.Copy ()
|
sources = env.Glob('intern/*.cpp')
|
||||||
|
|
||||||
source_files = ['intern/FTF_Api.cpp',
|
incs = '. intern ../blenkernel ../blenlib ../makesdna'
|
||||||
'intern/FTF_TTFont.cpp']
|
incs += ' ' + env['BF_FTGL_INC']
|
||||||
|
incs += ' ' + env['BF_FREETYPE_INC']
|
||||||
include_paths = ['.',
|
incs += ' ' + env['BF_GETTEXT_INC']
|
||||||
'intern',
|
|
||||||
'../blenkernel',
|
|
||||||
'../blenlib',
|
|
||||||
'../makesdna']
|
|
||||||
|
|
||||||
ftf_env.Append(CPPPATH = extra_includes)
|
defs = 'FTGL_STATIC_LIBRARY'
|
||||||
ftf_env.Append(CPPPATH = include_paths)
|
if sys.platform == 'win32':
|
||||||
ftf_env.Prepend (CPPPATH = user_options_dict['FTGL_INCLUDE'])
|
defs += ' _WIN32 USE_GETTEXT_DLL'
|
||||||
ftf_env.Prepend (CPPPATH = user_options_dict['FREETYPE_INCLUDE'])
|
env.BlenderLib ( 'blender_FTF', sources, Split(incs), Split(defs), libtype='international', priority=0 )
|
||||||
ftf_env.Prepend (CPPPATH = user_options_dict['GETTEXT_INCLUDE'])
|
|
||||||
ftf_env.Append(CPPDEFINES = 'FTGL_STATIC_LIBRARY')
|
|
||||||
ftf_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/blender_FTF', source=source_files)
|
|
||||||
|
@@ -1,56 +1,23 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
Import ('extra_includes')
|
Import ('env')
|
||||||
Import ('user_options_dict')
|
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
imbuf_env = library_env.Copy ()
|
sources = env.Glob('intern/*.c')
|
||||||
|
|
||||||
#if user_options_dict['USE_OPENEXR'] == 1:
|
incs = '. ../makesdna #/intern/guardedalloc ../blenlib'
|
||||||
# SConscript (['intern/openexr/SConscript'])
|
incs += ' ../avi ../quicktime ../blenkernel'
|
||||||
|
|
||||||
source_files = ['intern/allocimbuf.c',
|
incs += ' ' + env['BF_JPEG_INC']
|
||||||
'intern/amiga.c',
|
incs += ' ' + env['BF_PNG_INC']
|
||||||
'intern/anim.c',
|
incs += ' ' + env['BF_TIFF_INC']
|
||||||
'intern/anim5.c',
|
incs += ' ' + env['BF_ZLIB_INC']
|
||||||
'intern/antialias.c',
|
|
||||||
'intern/bitplanes.c',
|
|
||||||
'intern/bmp.c',
|
|
||||||
'intern/cmap.c',
|
|
||||||
'intern/cspace.c',
|
|
||||||
'intern/data.c',
|
|
||||||
'intern/dither.c',
|
|
||||||
'intern/divers.c',
|
|
||||||
'intern/dynlibtiff.c',
|
|
||||||
'intern/filter.c',
|
|
||||||
'intern/ham.c',
|
|
||||||
'intern/hamx.c',
|
|
||||||
'intern/iff.c',
|
|
||||||
'intern/imageprocess.c',
|
|
||||||
'intern/iris.c',
|
|
||||||
'intern/jpeg.c',
|
|
||||||
'intern/png.c',
|
|
||||||
'intern/radiance_hdr.c',
|
|
||||||
'intern/readimage.c',
|
|
||||||
'intern/rectop.c',
|
|
||||||
'intern/rotate.c',
|
|
||||||
'intern/scaling.c',
|
|
||||||
'intern/targa.c',
|
|
||||||
'intern/tiff.c',
|
|
||||||
'intern/util.c',
|
|
||||||
'intern/writeimage.c']
|
|
||||||
|
|
||||||
imbuf_env.Append (CPPPATH = ['.',
|
defs = []
|
||||||
'../imbuf',
|
|
||||||
'../makesdna',
|
|
||||||
'#/intern/guardedalloc',
|
|
||||||
'../blenlib',
|
|
||||||
'../avi',
|
|
||||||
'../quicktime',
|
|
||||||
'../blenkernel'])
|
|
||||||
|
|
||||||
imbuf_env.Append (CPPPATH = user_options_dict['JPEG_INCLUDE'])
|
if env['WITH_BF_OPENEXR'] == 1:
|
||||||
imbuf_env.Append (CPPPATH = user_options_dict['PNG_INCLUDE'])
|
defs.append('WITH_OPENEXR')
|
||||||
imbuf_env.Append (CPPPATH = user_options_dict['TIFF_INCLUDE'])
|
|
||||||
imbuf_env.Append (CPPPATH = user_options_dict['Z_INCLUDE'])
|
if env['WITH_BF_QUICKTIME']==1:
|
||||||
imbuf_env.Append (CPPPATH = extra_includes)
|
incs += ' ' + env['BF_QUICKTIME_INC']
|
||||||
imbuf_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/blender_imbuf', source=source_files)
|
defs.append('WITH_QUICKTIME')
|
||||||
|
|
||||||
|
env.BlenderLib ( libname = 'blender_imbuf', sources = sources, includes = Split(incs), defines = defs, libtype='core', priority = 80 )
|
||||||
|
@@ -1,22 +1,17 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
Import ('extra_includes')
|
Import ('env')
|
||||||
Import ('user_options_dict')
|
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
openexr_env = library_env.Copy ()
|
source_files = ['openexr_api.cpp']
|
||||||
|
|
||||||
source_files = ['openexr_api.cpp'
|
incs = ['.',
|
||||||
]
|
'../../../blenkernel',
|
||||||
|
'../../',
|
||||||
|
'..',
|
||||||
|
'../../../blenlib',
|
||||||
|
'../../../makesdna']
|
||||||
|
incs += Split(env['BF_OPENEXR_INC'])
|
||||||
|
|
||||||
include_paths = ['.',
|
defs = []
|
||||||
'../../../blenkernel',
|
|
||||||
'../../',
|
|
||||||
'..',
|
|
||||||
'../../../blenlib',
|
|
||||||
'../../../makesdna']
|
|
||||||
|
|
||||||
openexr_env.Append(CPPPATH = extra_includes)
|
#openexr_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/blender_openexr', source=source_files)
|
||||||
openexr_env.Append(CPPPATH = include_paths)
|
env.BlenderLib ('blender_openexr', source_files, incs, defs, libtype='core', priority = 90)
|
||||||
openexr_env.Prepend (CPPPATH = user_options_dict['OPENEXR_INCLUDE'])
|
|
||||||
#ftf_env.Append(CPPDEFINES = 'FTGL_STATIC_LIBRARY')
|
|
||||||
openexr_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/blender_openexr', source=source_files)
|
|
||||||
|
@@ -1,15 +1,6 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/env python
|
||||||
Import ('user_options_dict')
|
Import ('env')
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
img_env = library_env.Copy ()
|
sources = env.Glob('intern/*.cpp')
|
||||||
|
|
||||||
source_files = ['intern/IMG_Api.cpp',
|
env.BlenderLib ( 'blender_img', sources, [], [], libtype='core', priority = 35 )
|
||||||
'intern/IMG_BrushRGBA32.cpp',
|
|
||||||
'intern/IMG_CanvasRGBA32.cpp',
|
|
||||||
'intern/IMG_Line.cpp',
|
|
||||||
'intern/IMG_Pixmap.cpp',
|
|
||||||
'intern/IMG_PixmapRGBA32.cpp',
|
|
||||||
'intern/IMG_Rect.cpp']
|
|
||||||
|
|
||||||
img_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/blender_img', source=source_files)
|
|
||||||
|
@@ -1,14 +1,11 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
Import ('user_options_dict')
|
Import ('env')
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
makesdna_env = library_env.Copy ()
|
|
||||||
|
|
||||||
objs = []
|
objs = []
|
||||||
|
|
||||||
o = SConscript('intern/SConscript')
|
o = SConscript('intern/SConscript')
|
||||||
objs.append (o)
|
objs.append (o)
|
||||||
|
|
||||||
makesdna_env.Append (CPPPATH = ['#/intern/guardedalloc'])
|
incs = '#/intern/guardedalloc'
|
||||||
|
|
||||||
makesdna_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/blender_makesdna', source=objs)
|
env.BlenderLib ( 'blender_makesdna', objs, Split(incs), [], libtype='common', priority = 10 )
|
||||||
|
@@ -2,33 +2,39 @@
|
|||||||
import sys
|
import sys
|
||||||
import os
|
import os
|
||||||
|
|
||||||
Import ('cflags')
|
#Import ('cflags')
|
||||||
Import ('defines')
|
#Import ('defines')
|
||||||
Import ('user_options_dict')
|
Import ('env')
|
||||||
|
cflags = ''
|
||||||
|
defines = []
|
||||||
|
root_build_dir=env['BF_BUILDDIR']
|
||||||
|
|
||||||
# TODO: make sure the makesdna program does not get installed on the system.
|
# TODO: make sure the makesdna program does not get installed on the system.
|
||||||
source_files = ['makesdna.c']
|
source_files = ['makesdna.c']
|
||||||
|
|
||||||
makesdna_tool = Environment (ENV = os.environ, CCFLAGS='-DBASE_HEADER="\\"source/blender/makesdna/\\"" ')
|
makesdna_tool = env.Copy()
|
||||||
|
dna = env.Copy()
|
||||||
|
makesdna_tool.Append(CCFLAGS = '-DBASE_HEADER="\\"source/blender/makesdna/\\"" ')
|
||||||
|
#makesdna_tool = Environment (ENV = os.environ, CCFLAGS='-DBASE_HEADER="\\"source/blender/makesdna/\\"" ')
|
||||||
|
|
||||||
makesdna_tool.Append (CPPPATH = ['#/intern/guardedalloc',
|
makesdna_tool.Append (CPPPATH = ['#/intern/guardedalloc',
|
||||||
'../../makesdna'])
|
'../../makesdna'])
|
||||||
|
|
||||||
makesdna_tool.Replace (CC = user_options_dict['HOST_CC'])
|
#makesdna_tool.Replace (CC = user_options_dict['HOST_CC'])
|
||||||
makesdna_tool.Replace (PATH = user_options_dict['PATH'])
|
#makesdna_tool.Replace (PATH = user_options_dict['PATH'])
|
||||||
|
|
||||||
if sys.platform != 'cygwin':
|
if sys.platform != 'cygwin':
|
||||||
makesdna_tool.Append (CCFLAGS = cflags)
|
makesdna_tool.Append (CCFLAGS = cflags)
|
||||||
makesdna_tool.Append (LINKFLAGS = user_options_dict['PLATFORM_LINKFLAGS'])
|
#makesdna_tool.Append (LINKFLAGS = user_options_dict['PLATFORM_LINKFLAGS'])
|
||||||
makesdna_tool.Append (CPPDEFINES = defines)
|
makesdna_tool.Append (CPPDEFINES = defines)
|
||||||
makesdna_tool.Append (LIBPATH = '#'+user_options_dict['BUILD_DIR']+'/lib')
|
makesdna_tool.Append (LIBPATH = '#'+root_build_dir+'/lib')
|
||||||
makesdna_tool.Append (LIBS = 'blender_guardedalloc')
|
makesdna_tool.Append (LIBS = 'blender_guardedalloc')
|
||||||
makesdna_tool.Program (target = '#'+user_options_dict['BUILD_DIR']+'makesdna', source = source_files)
|
makesdna_tool.Program (target = '#'+root_build_dir+'makesdna', source = source_files)
|
||||||
|
|
||||||
dna = Environment (ENV = os.environ)
|
#dna = Environment (ENV = os.environ)
|
||||||
dna_dict = dna.Dictionary()
|
dna_dict = dna.Dictionary()
|
||||||
makesdna_name = user_options_dict['BUILD_DIR']+'makesdna' + dna_dict['PROGSUFFIX']
|
makesdna_name = root_build_dir+'makesdna' + dna_dict['PROGSUFFIX']
|
||||||
dna.Depends ('dna.c', '#'+makesdna_name)
|
dna.Depends ('dna.c', '#'+makesdna_name)
|
||||||
dna.Command ('dna.c', '', user_options_dict['BUILD_DIR']+"makesdna $TARGET")
|
dna.Command ('dna.c', '', root_build_dir+"makesdna $TARGET")
|
||||||
obj = 'intern/dna.c'
|
obj = 'intern/dna.c'
|
||||||
Return ('obj')
|
Return ('obj')
|
||||||
|
@@ -1,81 +1,18 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
Import ('extra_includes')
|
Import ('env')
|
||||||
Import ('user_options_dict')
|
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
python_env = library_env.Copy ()
|
sources = Split('BPY_interface.c BPY_menus.c') + env.Glob('api2_2x/*.c')
|
||||||
|
|
||||||
source_files = ['BPY_interface.c',
|
incs = 'api2_2x ../blenkernel ../blenlib ../blenloader'
|
||||||
'BPY_menus.c',
|
incs += ' ../render/extern/include ../radiosity/extern/include'
|
||||||
'api2_2x/Armature.c',
|
incs += ' ../makesdna #intern/guardedalloc #intern/bmfont ../imbuf ../include'
|
||||||
'api2_2x/BezTriple.c',
|
incs += ' ' + env['BF_PYTHON_INC']
|
||||||
'api2_2x/BGL.c',
|
incs += ' ' + env['BF_OPENGL_INC']
|
||||||
'api2_2x/Blender.c',
|
|
||||||
'api2_2x/Bone.c',
|
|
||||||
'api2_2x/Camera.c',
|
|
||||||
'api2_2x/CurNurb.c',
|
|
||||||
'api2_2x/Curve.c',
|
|
||||||
'api2_2x/Draw.c',
|
|
||||||
'api2_2x/Effect.c',
|
|
||||||
'api2_2x/Font.c',
|
|
||||||
'api2_2x/EXPP_interface.c',
|
|
||||||
'api2_2x/Ipocurve.c',
|
|
||||||
'api2_2x/Ipo.c',
|
|
||||||
'api2_2x/Key.c',
|
|
||||||
'api2_2x/Lamp.c',
|
|
||||||
'api2_2x/Lattice.c',
|
|
||||||
'api2_2x/Library.c',
|
|
||||||
'api2_2x/MTex.c',
|
|
||||||
'api2_2x/Material.c',
|
|
||||||
'api2_2x/Mathutils.c',
|
|
||||||
'api2_2x/Mesh.c',
|
|
||||||
'api2_2x/Metaball.c',
|
|
||||||
'api2_2x/NLA.c',
|
|
||||||
'api2_2x/Noise.c',
|
|
||||||
'api2_2x/NMesh.c',
|
|
||||||
'api2_2x/Object.c',
|
|
||||||
'api2_2x/Pose.c',
|
|
||||||
'api2_2x/point.c',
|
|
||||||
'api2_2x/Registry.c',
|
|
||||||
'api2_2x/Scene.c',
|
|
||||||
'api2_2x/Sound.c',
|
|
||||||
'api2_2x/Sys.c',
|
|
||||||
'api2_2x/Types.c',
|
|
||||||
'api2_2x/Window.c',
|
|
||||||
'api2_2x/World.c',
|
|
||||||
'api2_2x/Pose.c',
|
|
||||||
'api2_2x/Image.c',
|
|
||||||
'api2_2x/Text.c',
|
|
||||||
'api2_2x/Text3d.c',
|
|
||||||
'api2_2x/Texture.c',
|
|
||||||
'api2_2x/Noise.c',
|
|
||||||
'api2_2x/charRGBA.c',
|
|
||||||
'api2_2x/constant.c',
|
|
||||||
'api2_2x/euler.c',
|
|
||||||
'api2_2x/gen_utils.c',
|
|
||||||
'api2_2x/logic.c',
|
|
||||||
'api2_2x/matrix.c',
|
|
||||||
'api2_2x/quat.c',
|
|
||||||
'api2_2x/rgbTuple.c',
|
|
||||||
'api2_2x/sceneRender.c',
|
|
||||||
'api2_2x/sceneRadio.c',
|
|
||||||
'api2_2x/sceneTimeLine.c',
|
|
||||||
'api2_2x/vector.c',
|
|
||||||
'api2_2x/windowTheme.c']
|
|
||||||
|
|
||||||
python_env.Append (CPPPATH = ['api2_2x',
|
defs = []
|
||||||
'../blenkernel',
|
|
||||||
'../blenlib',
|
|
||||||
'../blenloader',
|
|
||||||
'../render/extern/include',
|
|
||||||
'../radiosity/extern/include',
|
|
||||||
'../makesdna',
|
|
||||||
'#/intern/guardedalloc',
|
|
||||||
'#/intern/bmfont',
|
|
||||||
'../imbuf',
|
|
||||||
'../include'])
|
|
||||||
|
|
||||||
python_env.Append (CPPPATH = user_options_dict['PYTHON_INCLUDE'])
|
if env['WITH_BF_QUICKTIME']==1:
|
||||||
python_env.Append (CPPPATH = user_options_dict['OPENGL_INCLUDE'])
|
incs += ' ' + env['BF_QUICKTIME_INC']
|
||||||
python_env.Append (CPPPATH = extra_includes)
|
defs.append('WITH_QUICKTIME')
|
||||||
python_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/blender_python', source=source_files)
|
|
||||||
|
env.BlenderLib ( libname='blender_python', sources = Split(sources), includes = Split(incs), defines = defs, libtype=['core','game2'], priority = [60,115] )
|
||||||
|
@@ -1,26 +1,22 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
Import ('extra_includes')
|
Import ('env')
|
||||||
Import ('user_options_dict')
|
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
quicktime_env = library_env.Copy ()
|
|
||||||
|
|
||||||
quicktime_env.Append (CPPPATH = extra_includes)
|
|
||||||
|
|
||||||
source_files = ['apple/quicktime_import.c',
|
source_files = ['apple/quicktime_import.c',
|
||||||
'apple/quicktime_export.c']
|
'apple/quicktime_export.c']
|
||||||
|
|
||||||
quicktime_env.Append (CPPPATH = ['.',
|
incs = ['.',
|
||||||
'../quicktime',
|
'../quicktime',
|
||||||
'../makesdna',
|
'../makesdna',
|
||||||
'#/intern/guardedalloc',
|
'#/intern/guardedalloc',
|
||||||
'../blenlib',
|
'../blenlib',
|
||||||
'../blenkernel',
|
'../blenkernel',
|
||||||
'../avi',
|
'../avi',
|
||||||
'../imbuf',
|
'../imbuf',
|
||||||
'../imbuf/intern',
|
'../imbuf/intern',
|
||||||
'../blenloader',
|
'../blenloader',
|
||||||
'../render/extern/include',
|
'../render/extern/include',
|
||||||
'../include'])
|
'../include']
|
||||||
|
|
||||||
quicktime_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/blender_quicktime', source=source_files)
|
incs.append(env['BF_QUICKTIME_INC'])
|
||||||
|
|
||||||
|
env.BlenderLib ('blender_quicktime', sources=source_files, includes=incs, defines=['WITH_QUICKTIME'], libtype='core', priority=95)
|
||||||
|
@@ -1,26 +1,12 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
Import ('user_options_dict')
|
Import ('env')
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
rad_env = library_env.Copy ()
|
sources = env.Glob('intern/source/*.c')
|
||||||
|
|
||||||
source_files = ['intern/source/raddisplay.c',
|
incs = 'extern/include ../blenlib ../blenkernel ../makesdna ../include'
|
||||||
'intern/source/radfactors.c',
|
incs += ' #/intern/guardedalloc ../render/extern/include'
|
||||||
'intern/source/radrender.c',
|
incs += ' ../render/intern/include'
|
||||||
'intern/source/radio.c',
|
|
||||||
'intern/source/radnode.c',
|
|
||||||
'intern/source/radpostprocess.c',
|
|
||||||
'intern/source/radpreprocess.c']
|
|
||||||
|
|
||||||
rad_env.Append (CPPPATH = ['extern/include',
|
incs += ' ' + env['BF_OPENGL_INC']
|
||||||
'../blenlib',
|
|
||||||
'../blenkernel',
|
|
||||||
'../makesdna',
|
|
||||||
'../include',
|
|
||||||
'#/intern/guardedalloc',
|
|
||||||
'../render/extern/include',
|
|
||||||
'../render/intern/include'])
|
|
||||||
|
|
||||||
rad_env.Append (CPPPATH = user_options_dict['OPENGL_INCLUDE'])
|
env.BlenderLib ( 'blender_radiosity', sources, Split(incs), [], libtype='core', priority=50 )
|
||||||
|
|
||||||
rad_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/blender_radiosity', source=source_files)
|
|
||||||
|
@@ -1,20 +1,8 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
Import ('user_options_dict')
|
Import ('env')
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
readblenfile_env = library_env.Copy ()
|
sources = env.Glob('intern/*.c')
|
||||||
|
|
||||||
source_files = ['intern/BLO_readblenfile.c']
|
incs = '. ../blenloader ../blenloader/intern ../blenkernel ../blenlib ../makesdna ../../kernel/gen_messaging'
|
||||||
|
|
||||||
readblenfile_env.Append (CPPPATH = ['.',
|
env.BlenderLib ( 'blender_readblenfile', sources, Split(incs), [], libtype='common', priority = 0 )
|
||||||
|
|
||||||
'../readblenfile',
|
|
||||||
'../readstreamglue',
|
|
||||||
'../blenloader',
|
|
||||||
'../blenloader/intern',
|
|
||||||
'../blenkernel',
|
|
||||||
'../blenlib',
|
|
||||||
'../makesdna',
|
|
||||||
'../../kernel/gen_messaging'])
|
|
||||||
|
|
||||||
readblenfile_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/blender_readblenfile', source=source_files)
|
|
||||||
|
@@ -1,39 +1,18 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
Import ('user_options_dict')
|
Import ('env')
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
render_env = library_env.Copy ()
|
sources = env.Glob('intern/source/*.c')
|
||||||
|
|
||||||
source_files = ['intern/source/convertblender.c',
|
incs = 'intern/include #/intern/guardedalloc ../blenlib ../makesdna'
|
||||||
'intern/source/edgeRender.c',
|
incs += ' extern/include ../blenkernel ../radiosity/extern/include ../imbuf'
|
||||||
'intern/source/envmap.c',
|
incs += ' ../quicktime ../include ../../kernel/gen_messaging ../yafray'
|
||||||
'intern/source/gammaCorrectionTables.c',
|
|
||||||
'intern/source/imagetexture.c',
|
|
||||||
'intern/source/initrender.c',
|
|
||||||
'intern/source/pixelblending.c',
|
|
||||||
'intern/source/pixelshading.c',
|
|
||||||
'intern/source/pipeline.c',
|
|
||||||
'intern/source/ray.c',
|
|
||||||
'intern/source/rendercore.c',
|
|
||||||
'intern/source/renderdatabase.c',
|
|
||||||
'intern/source/shadbuf.c',
|
|
||||||
'intern/source/texture.c',
|
|
||||||
'intern/source/zbuf.c']
|
|
||||||
|
|
||||||
|
incs += ' ' + env['BF_SDL_INC']
|
||||||
|
|
||||||
render_env.Append (CPPPATH = ['intern/include',
|
defs = []
|
||||||
'#/intern/guardedalloc',
|
|
||||||
'../blenlib',
|
|
||||||
'../makesdna',
|
|
||||||
'extern/include',
|
|
||||||
'../blenkernel',
|
|
||||||
'../radiosity/extern/include',
|
|
||||||
'../imbuf',
|
|
||||||
'../quicktime',
|
|
||||||
'../include',
|
|
||||||
'../../kernel/gen_messaging',
|
|
||||||
'../yafray'])
|
|
||||||
|
|
||||||
render_env.Append (CPPPATH = user_options_dict['SDL_INCLUDE'])
|
if env['WITH_BF_QUICKTIME'] == 1:
|
||||||
|
defs.append('WITH_QUICKTIME')
|
||||||
|
incs += ' ' + env['BF_QUICKTIME_INC']
|
||||||
|
|
||||||
render_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/blender_render', source=source_files)
|
env.BlenderLib ( libname = 'blender_render', sources = sources, includes = Split(incs), defines=defs, libtype='core', priority=45 )
|
||||||
|
@@ -1,181 +1,38 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
Import ('extra_includes')
|
Import ('env')
|
||||||
Import ('user_options_dict')
|
|
||||||
Import ('library_env')
|
|
||||||
Import ('defines')
|
|
||||||
|
|
||||||
src_env = library_env.Copy ()
|
# TODO: src_env.Append (CCFLAGS = user_options_dict['SDL_CFLAGS'])
|
||||||
src_env.Append (CCFLAGS = user_options_dict['SDL_CFLAGS'])
|
|
||||||
src_env.Append(CPPDEFINES = defines)
|
|
||||||
|
|
||||||
source_files = ['B.blend.c',
|
sources = env.Glob('*.c')
|
||||||
'Bfont.c',
|
|
||||||
'bfont.ttf.c',
|
|
||||||
'blenderbuttons.c',
|
|
||||||
'booleanops.c',
|
|
||||||
'booleanops_mesh.c',
|
|
||||||
'buttons_editing.c',
|
|
||||||
'buttons_logic.c',
|
|
||||||
'buttons_object.c',
|
|
||||||
'buttons_scene.c',
|
|
||||||
'buttons_script.c',
|
|
||||||
'buttons_shading.c',
|
|
||||||
'butspace.c',
|
|
||||||
'cmap.tga.c',
|
|
||||||
'cmovie.tga.c',
|
|
||||||
'cursors.c',
|
|
||||||
'drawaction.c',
|
|
||||||
'drawarmature.c',
|
|
||||||
'drawdeps.c',
|
|
||||||
'drawimage.c',
|
|
||||||
'drawimasel.c',
|
|
||||||
'drawipo.c',
|
|
||||||
'drawmesh.c',
|
|
||||||
'drawnla.c',
|
|
||||||
'drawobject.c',
|
|
||||||
'drawoops.c',
|
|
||||||
'drawscene.c',
|
|
||||||
'drawscript.c',
|
|
||||||
'drawseq.c',
|
|
||||||
'drawsound.c',
|
|
||||||
'drawtext.c',
|
|
||||||
'drawtime.c',
|
|
||||||
'drawview.c',
|
|
||||||
'drawnode.c',
|
|
||||||
'edit.c',
|
|
||||||
'editaction.c',
|
|
||||||
'editarmature.c',
|
|
||||||
'editconstraint.c',
|
|
||||||
'editcurve.c',
|
|
||||||
'editdeform.c',
|
|
||||||
'editface.c',
|
|
||||||
'editfont.c',
|
|
||||||
'editgroup.c',
|
|
||||||
'editimasel.c',
|
|
||||||
'editipo.c',
|
|
||||||
'editipo_lib.c',
|
|
||||||
'editipo_mods.c',
|
|
||||||
'editkey.c',
|
|
||||||
'editlattice.c',
|
|
||||||
'editmball.c',
|
|
||||||
'editmesh.c',
|
|
||||||
'editnode.c',
|
|
||||||
'editmesh_add.c',
|
|
||||||
'editmesh_lib.c',
|
|
||||||
'editmesh_loop.c',
|
|
||||||
'editmesh_mods.c',
|
|
||||||
'editmesh_tools.c',
|
|
||||||
'editmode_undo.c',
|
|
||||||
'editnla.c',
|
|
||||||
'editobject.c',
|
|
||||||
'editoops.c',
|
|
||||||
'editscreen.c',
|
|
||||||
'editseq.c',
|
|
||||||
'editsima.c',
|
|
||||||
'editsound.c',
|
|
||||||
'edittime.c',
|
|
||||||
'editview.c',
|
|
||||||
'eventdebug.c',
|
|
||||||
'filesel.c',
|
|
||||||
'fluidsim.c',
|
|
||||||
'ghostwinlay.c',
|
|
||||||
'glutil.c',
|
|
||||||
'headerbuttons.c',
|
|
||||||
'header_action.c',
|
|
||||||
'header_buttonswin.c',
|
|
||||||
'header_filesel.c',
|
|
||||||
'header_image.c',
|
|
||||||
'header_imasel.c',
|
|
||||||
'header_info.c',
|
|
||||||
'header_ipo.c',
|
|
||||||
'header_nla.c',
|
|
||||||
'header_oops.c',
|
|
||||||
'header_script.c',
|
|
||||||
'header_seq.c',
|
|
||||||
'header_sound.c',
|
|
||||||
'header_text.c',
|
|
||||||
'header_time.c',
|
|
||||||
'header_view3d.c',
|
|
||||||
'header_node.c',
|
|
||||||
'imagepaint.c',
|
|
||||||
'imasel.c',
|
|
||||||
'interface.c',
|
|
||||||
'interface_panel.c',
|
|
||||||
'interface_draw.c',
|
|
||||||
'interface_icons.c',
|
|
||||||
'keyval.c',
|
|
||||||
'lorem.c',
|
|
||||||
'mainqueue.c',
|
|
||||||
'meshtools.c',
|
|
||||||
'mywindow.c',
|
|
||||||
'oops.c',
|
|
||||||
'outliner.c',
|
|
||||||
'splash.jpg.c',
|
|
||||||
'parametrizer.c',
|
|
||||||
'playanim.c',
|
|
||||||
'poseobject.c',
|
|
||||||
'previewrender.c',
|
|
||||||
'preview.blend.c',
|
|
||||||
'renderwin.c',
|
|
||||||
'resources.c',
|
|
||||||
'scrarea.c',
|
|
||||||
'screendump.c',
|
|
||||||
'sequence.c',
|
|
||||||
'seqaudio.c',
|
|
||||||
'space.c',
|
|
||||||
'spacetypes.c',
|
|
||||||
'swapbuffers.c',
|
|
||||||
'toets.c',
|
|
||||||
'toolbox.c',
|
|
||||||
'transform.c',
|
|
||||||
'transform_generics.c',
|
|
||||||
'transform_numinput.c',
|
|
||||||
'transform_constraints.c',
|
|
||||||
'transform_conversions.c',
|
|
||||||
'transform_manipulator.c',
|
|
||||||
'unwrapper.c',
|
|
||||||
'usiblender.c',
|
|
||||||
'view.c',
|
|
||||||
'vpaint.c',
|
|
||||||
'writeavicodec.c',
|
|
||||||
'writeimage.c',
|
|
||||||
'writemovie.c',
|
|
||||||
'language.c']
|
|
||||||
|
|
||||||
src_env.Append (CPPPATH = ['#/intern/guardedalloc',
|
incs = ' #/intern/guardedalloc ../blenlib ../makesdna ../blenkernel'
|
||||||
'../blenlib',
|
incs += ' ../include #/intern/bmfont ../imbuf ../render/extern/include'
|
||||||
'../makesdna',
|
incs += ' #/intern/bsp/extern ../renderconverter ../radiosity/extern/include'
|
||||||
'../blenkernel',
|
incs += ' #/intern/decimation/extern ../blenloader ../python'
|
||||||
'../include',
|
incs += ' ../../kernel/gen_system #/intern/SoundSystem ../readstreamglue'
|
||||||
'#/intern/bmfont',
|
incs += ' ../img ../quicktime #/intern/elbeem/extern'
|
||||||
'../imbuf',
|
incs += ' #/intern/ghost #/intern/opennl/extern'
|
||||||
'../render/extern/include',
|
|
||||||
'#/intern/bsp/extern',
|
|
||||||
'../radiosity/extern/include',
|
|
||||||
'#/intern/decimation/extern',
|
|
||||||
'../blenloader',
|
|
||||||
'../python',
|
|
||||||
'../../kernel/gen_system',
|
|
||||||
'#/intern/SoundSystem',
|
|
||||||
'../readstreamglue',
|
|
||||||
'../img',
|
|
||||||
'../quicktime',
|
|
||||||
'#/intern/elbeem/extern',
|
|
||||||
'#/intern/ghost',
|
|
||||||
'#/intern/opennl/extern'])
|
|
||||||
|
|
||||||
src_env.Append (CPPPATH = user_options_dict['PYTHON_INCLUDE'])
|
incs += ' ' + env['BF_PYTHON_INC']
|
||||||
src_env.Append (CPPPATH = user_options_dict['SDL_INCLUDE'])
|
incs += ' ' + env['BF_SDL_INC']
|
||||||
src_env.Append (CPPPATH = user_options_dict['OPENGL_INCLUDE'])
|
incs += ' ' + env['BF_OPENGL_INC']
|
||||||
|
|
||||||
if user_options_dict['USE_INTERNATIONAL'] == 1:
|
defs = []
|
||||||
src_env.Append (CPPPATH=['../ftfont'])
|
|
||||||
src_env.Append (CPPDEFINES = 'INTERNATIONAL')
|
|
||||||
src_env.Append (CPPDEFINES = 'FTGL_STATIC_LIBRARY')
|
|
||||||
|
|
||||||
if user_options_dict['USE_BUILDINFO'] == 1:
|
if env['WITH_BF_FREETYPE'] == 1:
|
||||||
src_env.Append (CPPDEFINES = 'NAN_BUILDINFO')
|
incs += ' ../ftfont'
|
||||||
|
defs.append('INTERNATIONAL')
|
||||||
|
defs.append('FTGL_STATIC_LIBRARY')
|
||||||
|
|
||||||
src_env.Append (CPPPATH=extra_includes)
|
if env['WITH_BF_OPENEXR'] == 1:
|
||||||
|
defs.append('WITH_OPENEXR')
|
||||||
|
|
||||||
src_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/blender_blendersrc', source=source_files)
|
if env['WITH_BF_QUICKTIME']==1:
|
||||||
|
incs += ' ' + env['BF_QUICKTIME_INC']
|
||||||
|
defs.append('WITH_QUICKTIME')
|
||||||
|
|
||||||
|
# TODO buildinfo
|
||||||
|
#if env['USE_BUILDINFO'] == 1:
|
||||||
|
# defs += ' NAN_BUILDINFO'
|
||||||
|
|
||||||
|
env.BlenderLib ( libname = 'src', sources = sources, includes = Split(incs), defines = defs, libtype=['core', 'intern'], priority = [5, 25] )
|
||||||
|
@@ -1,22 +1,9 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
Import ('user_options_dict')
|
Import ('env')
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
yafray_env = library_env.Copy ()
|
sources = env.Glob('intern/*.cpp')
|
||||||
|
|
||||||
source_files = ['intern/yafray_Render.cpp',
|
incs = '#/intern/guardedalloc ../blenlib ../makesdna ../blenkernel'
|
||||||
'intern/export_File.cpp',
|
incs += ' ../imbuf ../include ../render/extern/include ../render/intern/include'
|
||||||
'intern/export_Plugin.cpp',
|
|
||||||
'intern/yafexternal.cpp',
|
|
||||||
'intern/api.cpp']
|
|
||||||
|
|
||||||
yafray_env.Append (CPPPATH = ['#/intern/guardedalloc',
|
env.BlenderLib ( 'blender_yafray', sources, Split(incs), [], libtype='blender', priority=5 )
|
||||||
'../blenlib',
|
|
||||||
'../makesdna',
|
|
||||||
'../blenkernel',
|
|
||||||
'../imbuf',
|
|
||||||
'../include',
|
|
||||||
'../render/extern/include',
|
|
||||||
'../render/intern/include'])
|
|
||||||
|
|
||||||
yafray_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/blender_yafray', source=source_files)
|
|
||||||
|
@@ -1,25 +1,18 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
Import ('user_options_dict')
|
Import ('env')
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
creator_env = library_env.Copy ()
|
sources = 'creator.c'
|
||||||
|
|
||||||
source_files = ['creator.c']
|
incs = '#/intern/guardedalloc ../blender/blenlib ../blender/blenkernel'
|
||||||
|
incs += ' ../blender/include ../blender/blenloader ../blender/imbuf'
|
||||||
|
incs += ' ../blender/renderconverter ../blender/render/extern/include'
|
||||||
|
incs += ' ../blender/python ../blender/makesdna ../kernel/gen_messaging'
|
||||||
|
incs += ' ../kernel/gen_system'
|
||||||
|
incs += ' ' + env['BF_OPENGL_INC']
|
||||||
|
|
||||||
creator_env.Append (CPPPATH = ['#/intern/guardedalloc',
|
defs = []
|
||||||
'../blender/blenlib',
|
if env['WITH_BF_QUICKTIME']==1:
|
||||||
'../blender/blenkernel',
|
incs += ' ' + env['BF_QUICKTIME_INC']
|
||||||
'../blender/include',
|
defs.append('WITH_QUICKTIME')
|
||||||
'../blender/blenloader',
|
|
||||||
'../blender/imbuf',
|
|
||||||
'../blender/render/extern/include',
|
|
||||||
'../blender/python',
|
|
||||||
'../blender/makesdna',
|
|
||||||
'../kernel/gen_messaging',
|
|
||||||
'../kernel/gen_system'])
|
|
||||||
creator_env.Append (CPPPATH = user_options_dict['OPENGL_INCLUDE'])
|
|
||||||
|
|
||||||
if user_options_dict['USE_QUICKTIME'] == 1:
|
env.BlenderLib ( libname = 'blender_creator', sources = Split(sources), includes = Split(incs), defines = defs, libtype='core', priority = 1 )
|
||||||
creator_env.Append (CPPDEFINES = ['WITH_QUICKTIME'])
|
|
||||||
|
|
||||||
creator_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/blender_creator', source=source_files)
|
|
||||||
|
@@ -1,55 +1,29 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
import sys
|
import sys
|
||||||
Import ('user_options_dict')
|
Import ('env')
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
kx_blenderhook_env = library_env.Copy ()
|
sources = env.Glob('*.cpp')
|
||||||
|
|
||||||
source_files = ['KX_BlenderSystem.cpp',
|
incs = '. #source/kernel/gen_system #intern/string #intern/guardedalloc'
|
||||||
'KX_BlenderRenderTools.cpp',
|
incs += ' #source/gameengine/Rasterizer/RAS_OpenGLRasterizer #intern/bmfont'
|
||||||
'KX_BlenderMouseDevice.cpp',
|
incs += ' #source/gameengine/Converter #source/blender/imbuf'
|
||||||
'KX_BlenderKeyboardDevice.cpp',
|
incs += ' #intern/ghost/include'
|
||||||
'KX_BlenderInputDevice.cpp',
|
incs += ' #intern/moto/include #source/gameengine/Ketsji #source/blender/blenlib'
|
||||||
'KX_BlenderGL.cpp',
|
incs += ' #source/blender/blenkernel #source/blender #source/blender/include'
|
||||||
'KX_BlenderCanvas.cpp',
|
incs += ' #source/blender/makesdna #source/gameengine/Rasterizer #source/gameengine/GameLogic'
|
||||||
'BL_KetsjiEmbedStart.cpp']
|
incs += ' #source/gameengine/Expressions #source/gameengine/Network'
|
||||||
|
incs += ' #source/gameengine/SceneGraph #source/gameengine/Physics/common'
|
||||||
|
incs += ' #source/gameengine/Physics/Bullet #source/gameengine/Physics/Sumo'
|
||||||
|
incs += ' #source/gameengine/Physics/Sumo/Fuzzics/include #source/gameengine/Network/LoopBackNetwork'
|
||||||
|
incs += ' #intern/SoundSystem #source/blender/misc #source/blender/blenloader'
|
||||||
|
|
||||||
kx_blenderhook_env.Append (CPPPATH=['.',
|
incs += ' ' + env['BF_PYTHON_INC']
|
||||||
'#source/kernel/gen_system',
|
incs += ' ' + env['BF_SOLID_INC']
|
||||||
'#intern/string',
|
incs += ' ' + env['BF_BULLET_INC']
|
||||||
'#intern/guardedalloc',
|
incs += ' ' + env['BF_OPENGL_INC']
|
||||||
'#source/gameengine/Rasterizer/RAS_OpenGLRasterizer',
|
|
||||||
'#intern/bmfont',
|
|
||||||
'#source/gameengine/Converter',
|
|
||||||
'#source/blender/imbuf',
|
|
||||||
'#intern/moto/include',
|
|
||||||
'#source/gameengine/Ketsji',
|
|
||||||
'#source/blender/blenlib',
|
|
||||||
'#source/blender/blenkernel',
|
|
||||||
'#source/blender',
|
|
||||||
'#source/blender/include',
|
|
||||||
'#source/blender/makesdna',
|
|
||||||
'#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/Sumo',
|
|
||||||
'#source/gameengine/Physics/Sumo/Fuzzics/include',
|
|
||||||
'#source/gameengine/Network/LoopBackNetwork',
|
|
||||||
'#intern/SoundSystem',
|
|
||||||
'#source/blender/misc',
|
|
||||||
'#source/blender/blenloader'
|
|
||||||
])
|
|
||||||
|
|
||||||
kx_blenderhook_env.Append (CPPPATH = user_options_dict['PYTHON_INCLUDE'])
|
# TODO:
|
||||||
kx_blenderhook_env.Append (CPPPATH = user_options_dict['SOLID_INCLUDE'])
|
#if sys.platform=='win32':
|
||||||
kx_blenderhook_env.Append (CPPPATH = user_options_dict['BULLET_INCLUDE'])
|
# kx_blenderhook_env.Append (CXXFLAGS = ['/GR'])
|
||||||
kx_blenderhook_env.Append (CPPPATH = user_options_dict['OPENGL_INCLUDE'])
|
|
||||||
|
|
||||||
if sys.platform=='win32':
|
env.BlenderLib ( 'KX_blenderhook', sources, Split(incs), [], libtype=['game', 'game2'], priority=[0, 0] )
|
||||||
kx_blenderhook_env.Append (CXXFLAGS = ['/GR'])
|
|
||||||
|
|
||||||
kx_blenderhook_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/KX_blenderhook', source=source_files)
|
|
||||||
|
@@ -1,67 +1,25 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
Import ('user_options_dict')
|
Import ('env')
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
kx_converter_env = library_env.Copy ()
|
sources = env.Glob('*.cpp')
|
||||||
|
|
||||||
source_files = ['KX_IpoConvert.cpp',
|
incs = '. #source/kernel/gen_system #intern/string #intern/guardedalloc'
|
||||||
'KX_ConvertSensors.cpp',
|
incs += ' #source/gameengine/Rasterizer/RAS_OpenGLRasterizer #intern/bmfont'
|
||||||
'KX_ConvertProperties.cpp',
|
incs += ' #intern/SoundSystem #intern/SoundSystem/include #intern/SoundSystem/openal'
|
||||||
'KX_ConvertControllers.cpp',
|
incs += ' #intern/SoundSystem/dummy #intern/SoundSystem/intern #source/gameengine/Converter'
|
||||||
'KX_ConvertActuators.cpp',
|
incs += ' #source/gameengine/BlenderRoutines #source/blender/imbuf'
|
||||||
'KX_BlenderSceneConverter.cpp',
|
incs += ' #intern/moto/include #source/gameengine/Ketsji #source/gameengine/Ketsji/KXNetwork'
|
||||||
'KX_BlenderScalarInterpolator.cpp',
|
incs += ' #source/blender/blenlib #source/blender/blenkernel #source/blender'
|
||||||
'BlenderWorldInfo.cpp',
|
incs += ' #source/blender/include #source/blender/makesdna #source/gameengine/Rasterizer'
|
||||||
'BL_SkinMeshObject.cpp',
|
incs += ' #source/gameengine/Rasterizer/RAS_OpenGLRasterizer #source/gameengine/GameLogic'
|
||||||
'BL_SkinDeformer.cpp',
|
incs += ' #source/gameengine/Expressions #source/gameengine/Network #source/gameengine/SceneGraph'
|
||||||
'BL_MeshDeformer.cpp',
|
incs += ' #source/gameengine/Physics/common #source/gameengine/Physics/Bullet #source/gameengine/Physics/BlOde'
|
||||||
'BL_DeformableGameObject.cpp',
|
incs += ' #source/gameengine/Physics/Dummy #source/gameengine/Physics/Sumo'
|
||||||
'BL_BlenderDataConversion.cpp',
|
incs += ' #source/gameengine/Physics/Sumo/Fuzzics/include #source/gameengine/Network/LoopBackNetwork'
|
||||||
'BL_ArmatureObject.cpp',
|
incs += ' #source/blender/misc #source/blender/blenloader'
|
||||||
'BL_ActionActuator.cpp'
|
|
||||||
]
|
|
||||||
|
|
||||||
kx_converter_env.Append (CPPPATH = ['.',
|
incs += ' ' + env['BF_PYTHON_INC']
|
||||||
'#source/kernel/gen_system',
|
incs += ' ' + env['BF_SOLID_INC']
|
||||||
'#intern/string',
|
incs += ' ' + env['BF_BULLET_INC']
|
||||||
'#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/gameengine/Rasterizer',
|
|
||||||
'#source/gameengine/Rasterizer/RAS_OpenGLRasterizer',
|
|
||||||
'#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/Fuzzics/include',
|
|
||||||
'#source/gameengine/Network/LoopBackNetwork',
|
|
||||||
'#source/blender/misc',
|
|
||||||
'#source/blender/blenloader'
|
|
||||||
])
|
|
||||||
|
|
||||||
kx_converter_env.Append (CPPPATH = user_options_dict['PYTHON_INCLUDE'])
|
env.BlenderLib ( 'KX_converter', sources, Split(incs), [], libtype='game', priority=5 )
|
||||||
kx_converter_env.Append (CPPPATH = user_options_dict['SOLID_INCLUDE'])
|
|
||||||
kx_converter_env.Append (CPPPATH = user_options_dict['BULLET_INCLUDE'])
|
|
||||||
|
|
||||||
kx_converter_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/KX_converter', source=source_files)
|
|
||||||
|
@@ -1,34 +1,9 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
Import ('user_options_dict')
|
Import ('env')
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
expressions_env = library_env.Copy ()
|
sources = env.Glob('*.cpp')
|
||||||
|
|
||||||
source_files = ['BoolValue.cpp',
|
incs ='. #source/kernel/gen_system #intern/string #intern/moto/include'
|
||||||
'ConstExpr.cpp',
|
incs += ' ' + env['BF_PYTHON_INC']
|
||||||
'EmptyValue.cpp',
|
|
||||||
'ErrorValue.cpp',
|
|
||||||
'EXP_C-Api.cpp',
|
|
||||||
'Expression.cpp',
|
|
||||||
'FloatValue.cpp',
|
|
||||||
'IdentifierExpr.cpp',
|
|
||||||
'IfExpr.cpp',
|
|
||||||
'InputParser.cpp',
|
|
||||||
'IntValue.cpp',
|
|
||||||
'KX_HashedPtr.cpp',
|
|
||||||
'ListValue.cpp',
|
|
||||||
'Operator1Expr.cpp',
|
|
||||||
'Operator2Expr.cpp',
|
|
||||||
'PyObjectPlus.cpp',
|
|
||||||
'StringValue.cpp',
|
|
||||||
'Value.cpp',
|
|
||||||
'VectorValue.cpp']
|
|
||||||
|
|
||||||
expressions_env.Append (CPPPATH = ['.',
|
env.BlenderLib ( 'blender_expressions', sources, Split(incs), [], libtype='game', priority = 45 )
|
||||||
'#source/kernel/gen_system',
|
|
||||||
'#intern/string',
|
|
||||||
'#intern/moto/include'])
|
|
||||||
|
|
||||||
expressions_env.Append (CPPPATH = user_options_dict['PYTHON_INCLUDE'])
|
|
||||||
|
|
||||||
expressions_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/blender_expressions', source=source_files)
|
|
||||||
|
@@ -1,48 +1,12 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
Import ('user_options_dict')
|
Import ('env')
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
sca_gamelogic_env = library_env.Copy ()
|
sources = env.Glob('*.cpp') + env.Glob('Joystick/*.cpp')
|
||||||
|
|
||||||
source_files = ['SCA_ANDController.cpp',
|
incs = '. #/source/kernel/gen_system #/intern/string'
|
||||||
'SCA_AlwaysEventManager.cpp',
|
incs += ' #/source/gameengine/Expressions #/intern/moto/include'
|
||||||
'SCA_AlwaysSensor.cpp',
|
|
||||||
'SCA_EventManager.cpp',
|
|
||||||
'SCA_ExpressionController.cpp',
|
|
||||||
'SCA_IActuator.cpp',
|
|
||||||
'SCA_IController.cpp',
|
|
||||||
'SCA_IInputDevice.cpp',
|
|
||||||
'SCA_ILogicBrick.cpp',
|
|
||||||
'SCA_IObject.cpp',
|
|
||||||
'SCA_IScene.cpp',
|
|
||||||
'SCA_ISensor.cpp',
|
|
||||||
'SCA_JoystickManager.cpp',
|
|
||||||
'SCA_JoystickSensor.cpp',
|
|
||||||
'SCA_KeyboardManager.cpp',
|
|
||||||
'SCA_KeyboardSensor.cpp',
|
|
||||||
'SCA_LogicManager.cpp',
|
|
||||||
'SCA_MouseManager.cpp',
|
|
||||||
'SCA_MouseSensor.cpp',
|
|
||||||
'SCA_ORController.cpp',
|
|
||||||
'SCA_PropertyActuator.cpp',
|
|
||||||
'SCA_PropertyEventManager.cpp',
|
|
||||||
'SCA_PropertySensor.cpp',
|
|
||||||
'SCA_PythonController.cpp',
|
|
||||||
'SCA_RandomActuator.cpp',
|
|
||||||
'SCA_RandomEventManager.cpp',
|
|
||||||
'SCA_RandomNumberGenerator.cpp',
|
|
||||||
'SCA_RandomSensor.cpp',
|
|
||||||
'SCA_TimeEventManager.cpp',
|
|
||||||
'Joystick/SCA_Joystick.cpp',
|
|
||||||
'Joystick/SCA_JoystickEvents.cpp']
|
|
||||||
|
|
||||||
sca_gamelogic_env.Append (CPPPATH=['.',
|
incs += ' ' + env['BF_PYTHON_INC']
|
||||||
'#/source/kernel/gen_system',
|
incs += ' ' + env['BF_SDL_INC']
|
||||||
'#/intern/string',
|
|
||||||
'#/source/gameengine/Expressions',
|
|
||||||
'#/intern/moto/include'])
|
|
||||||
|
|
||||||
sca_gamelogic_env.Append (CPPPATH = user_options_dict['PYTHON_INCLUDE'])
|
env.BlenderLib ( 'SCA_GameLogic', sources, Split(incs), [], libtype='game', priority=30 )
|
||||||
sca_gamelogic_env.Append (CPPPATH = user_options_dict['SDL_INCLUDE'])
|
|
||||||
|
|
||||||
sca_gamelogic_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/SCA_GameLogic', source=source_files)
|
|
||||||
|
@@ -1,3 +1,3 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
SConscript(['common/SConscript',
|
SConscript(['common/SConscript',
|
||||||
'ghost/SConscript'])
|
'ghost/SConscript'])
|
||||||
|
@@ -1,73 +1,72 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
import sys
|
import sys
|
||||||
Import ('user_options_dict')
|
Import ('env')
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
gp_common_env = library_env.Copy()
|
|
||||||
|
|
||||||
source_files = ['bmfont.cpp',
|
source_files = ['bmfont.cpp',
|
||||||
'GPC_Canvas.cpp',
|
'GPC_Canvas.cpp',
|
||||||
'GPC_Engine.cpp',
|
'GPC_Engine.cpp',
|
||||||
'GPC_KeyboardDevice.cpp',
|
'GPC_KeyboardDevice.cpp',
|
||||||
'GPC_MouseDevice.cpp',
|
'GPC_MouseDevice.cpp',
|
||||||
'GPC_PolygonMaterial.cpp',
|
'GPC_PolygonMaterial.cpp',
|
||||||
'GPC_RawImage.cpp',
|
'GPC_RawImage.cpp',
|
||||||
'GPC_RawLoadDotBlendArray.cpp',
|
'GPC_RawLoadDotBlendArray.cpp',
|
||||||
'GPC_RawLogoArrays.cpp',
|
'GPC_RawLogoArrays.cpp',
|
||||||
'GPC_RenderTools.cpp',
|
'GPC_RenderTools.cpp',
|
||||||
'GPC_System.cpp']
|
'GPC_System.cpp']
|
||||||
|
|
||||||
gp_common_env.Append( CPPPATH = ['.',
|
incs = ['.',
|
||||||
'#intern/string',
|
'#intern/string',
|
||||||
'#intern/ghost',
|
'#intern/ghost',
|
||||||
'#intern/guardedalloc',
|
'#intern/guardedalloc',
|
||||||
'#intern/bmfont',
|
'#intern/bmfont',
|
||||||
'#intern/moto/include',
|
'#intern/moto/include',
|
||||||
'#intern/SoundSystem',
|
'#intern/SoundSystem',
|
||||||
'#source/gameengine/Rasterizer/RAS_OpenGLRasterizer',
|
'#source/gameengine/Rasterizer/RAS_OpenGLRasterizer',
|
||||||
'#source/kernel/gen_system',
|
'#source/kernel/gen_system',
|
||||||
'#source/kernel/gen_messaging',
|
'#source/kernel/gen_messaging',
|
||||||
'#source/gameengine/Converter',
|
'#source/gameengine/Converter',
|
||||||
'#source/blender/imbuf',
|
'#source/blender/imbuf',
|
||||||
'#source/gameengine/Ketsji',
|
'#source/gameengine/Ketsji',
|
||||||
'#source/blender/blenlib',
|
'#source/blender/blenlib',
|
||||||
'#source/blender/blenkernel',
|
'#source/blender/blenkernel',
|
||||||
'#source/blender',
|
'#source/blender',
|
||||||
'#source/blender/include',
|
'#source/blender/include',
|
||||||
'#source/blender/makesdna',
|
'#source/blender/makesdna',
|
||||||
'#source/gameengine/Rasterizer',
|
'#source/gameengine/Rasterizer',
|
||||||
'#source/gameengine/GameLogic',
|
'#source/gameengine/GameLogic',
|
||||||
'#source/gameengine/Expressions',
|
'#source/gameengine/Expressions',
|
||||||
'#source/gameengine/Network',
|
'#source/gameengine/Network',
|
||||||
'#source/gameengine/SceneGraph',
|
'#source/gameengine/SceneGraph',
|
||||||
'#source/gameengine/Physics/common',
|
'#source/gameengine/Physics/common',
|
||||||
'#source/gameengine/Physics/Sumo',
|
'#source/gameengine/Physics/Sumo',
|
||||||
'#source/gameengine/Physics/Sumo/Fuzzics/include',
|
'#source/gameengine/Physics/Sumo/Fuzzics/include',
|
||||||
'#source/gameengine/Network/LoopBackNetwork',
|
'#source/gameengine/Network/LoopBackNetwork',
|
||||||
'#source/gameengine/GamePlayer/ghost',
|
'#source/gameengine/GamePlayer/ghost',
|
||||||
'#source/blender/misc',
|
'#source/blender/misc',
|
||||||
'#source/blender/blenloader'])
|
'#source/blender/blenloader']
|
||||||
|
|
||||||
#This is all plugin stuff!
|
#This is all plugin stuff!
|
||||||
#if sys.platform=='win32':
|
#if sys.platform=='win32':
|
||||||
# source_files += ['windows/GPW_Canvas.cpp',
|
# source_files += ['windows/GPW_Canvas.cpp',
|
||||||
# 'windows/GPW_Engine.cpp',
|
# 'windows/GPW_Engine.cpp',
|
||||||
# 'windows/GPW_KeyboardDevice.cpp',
|
# 'windows/GPW_KeyboardDevice.cpp',
|
||||||
# 'windows/GPW_System.cpp']
|
# 'windows/GPW_System.cpp']
|
||||||
# gp_common_env.Append ( CPPPATH = ['windows'])
|
# gp_common_env.Append ( CPPPATH = ['windows'])
|
||||||
#elif sys.platform=='linux2' or sys.platform=='linux-i386':
|
#elif sys.platform=='linux2' or sys.platform=='linux-i386':
|
||||||
# source_files += ['unix/GPU_Canvas.cpp',
|
# source_files += ['unix/GPU_Canvas.cpp',
|
||||||
# 'unix/GPU_Engine.cpp',
|
# 'unix/GPU_Engine.cpp',
|
||||||
# 'unix/GPU_KeyboardDevice.cpp',
|
# 'unix/GPU_KeyboardDevice.cpp',
|
||||||
# 'unix/GPU_System.cpp']
|
# 'unix/GPU_System.cpp']
|
||||||
# gp_common_env.Append ( CPPPATH = ['unix'])
|
# gp_common_env.Append ( CPPPATH = ['unix'])
|
||||||
|
|
||||||
gp_common_env.Append (CPPPATH = user_options_dict['PYTHON_INCLUDE'])
|
incs += Split(env['BF_PYTHON_INC'])
|
||||||
gp_common_env.Append (CPPPATH = user_options_dict['SOLID_INCLUDE'])
|
incs += Split(env['BF_SOLID_INC'])
|
||||||
gp_common_env.Append (CPPPATH = user_options_dict['PNG_INCLUDE'])
|
incs += Split(env['BF_PNG_INC'])
|
||||||
gp_common_env.Append (CPPPATH = user_options_dict['Z_INCLUDE'])
|
incs += Split(env['BF_ZLIB_INC'])
|
||||||
|
|
||||||
|
cflags=[]
|
||||||
if sys.platform=='win32':
|
if sys.platform=='win32':
|
||||||
gp_common_env.Append (CXXFLAGS = ['/GR'])
|
cflags = ['/GR']
|
||||||
|
|
||||||
gp_common_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/GPC_common', source=source_files)
|
env.BlenderLib (libname='GPC_common', sources=source_files, includes=incs, defines = [], libtype=['player'], priority=[5], compileflags=cflags)
|
||||||
|
@@ -1,52 +1,49 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
import sys
|
import sys
|
||||||
Import ('user_options_dict')
|
Import ('env')
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
gp_ghost_env = library_env.Copy()
|
|
||||||
|
|
||||||
source_files = ['GPG_Application.cpp',
|
source_files = ['GPG_Application.cpp',
|
||||||
'GPG_Canvas.cpp',
|
'GPG_Canvas.cpp',
|
||||||
'GPG_ghost.cpp',
|
'GPG_ghost.cpp',
|
||||||
'GPG_KeyboardDevice.cpp',
|
'GPG_KeyboardDevice.cpp',
|
||||||
'GPG_System.cpp']
|
'GPG_System.cpp']
|
||||||
|
|
||||||
gp_ghost_env.Append( CPPPATH = ['.',
|
incs = ['.',
|
||||||
'#intern/string',
|
'#intern/string',
|
||||||
'#intern/ghost',
|
'#intern/ghost',
|
||||||
'#intern/guardedalloc',
|
'#intern/guardedalloc',
|
||||||
'#intern/bmfont',
|
'#intern/bmfont',
|
||||||
'#intern/moto/include',
|
'#intern/moto/include',
|
||||||
'#intern/SoundSystem',
|
'#intern/SoundSystem',
|
||||||
'#source/gameengine/Rasterizer/RAS_OpenGLRasterizer',
|
'#source/gameengine/Rasterizer/RAS_OpenGLRasterizer',
|
||||||
'#source/kernel/gen_system',
|
'#source/kernel/gen_system',
|
||||||
'#source/kernel/gen_messaging',
|
'#source/kernel/gen_messaging',
|
||||||
'#source/gameengine/Converter',
|
'#source/gameengine/Converter',
|
||||||
'#source/blender/imbuf',
|
'#source/blender/imbuf',
|
||||||
'#source/gameengine/Ketsji',
|
'#source/gameengine/Ketsji',
|
||||||
'#source/blender/blenlib',
|
'#source/blender/blenlib',
|
||||||
'#source/blender/blenkernel',
|
'#source/blender/blenkernel',
|
||||||
'#source/blender/readblenfile',
|
'#source/blender/readblenfile',
|
||||||
'#source/blender',
|
'#source/blender',
|
||||||
'#source/blender/include',
|
'#source/blender/include',
|
||||||
'#source/blender/makesdna',
|
'#source/blender/makesdna',
|
||||||
'#source/gameengine/Rasterizer',
|
'#source/gameengine/Rasterizer',
|
||||||
'#source/gameengine/GameLogic',
|
'#source/gameengine/GameLogic',
|
||||||
'#source/gameengine/Expressions',
|
'#source/gameengine/Expressions',
|
||||||
'#source/gameengine/Network',
|
'#source/gameengine/Network',
|
||||||
'#source/gameengine/SceneGraph',
|
'#source/gameengine/SceneGraph',
|
||||||
'#source/gameengine/Physics/common',
|
'#source/gameengine/Physics/common',
|
||||||
'#source/gameengine/Physics/Sumo',
|
'#source/gameengine/Physics/Sumo',
|
||||||
'#source/gameengine/Physics/Sumo/Fuzzics/include',
|
'#source/gameengine/Physics/Sumo/Fuzzics/include',
|
||||||
'#source/gameengine/Network/LoopBackNetwork',
|
'#source/gameengine/Network/LoopBackNetwork',
|
||||||
'#source/gameengine/GamePlayer/common',
|
'#source/gameengine/GamePlayer/common',
|
||||||
'#source/blender/misc',
|
'#source/blender/misc',
|
||||||
'#source/blender/blenloader'])
|
'#source/blender/blenloader']
|
||||||
|
|
||||||
gp_ghost_env.Append (CPPPATH = user_options_dict['PYTHON_INCLUDE'])
|
|
||||||
gp_ghost_env.Append (CPPPATH = user_options_dict['SOLID_INCLUDE'])
|
|
||||||
|
|
||||||
|
incs += Split(env['BF_PYTHON_INC'])
|
||||||
|
incs += Split(env['BF_SOLID_INC'])
|
||||||
|
cflags = []
|
||||||
if sys.platform=='win32':
|
if sys.platform=='win32':
|
||||||
gp_ghost_env.Append (CXXFLAGS = ['/GR'])
|
cflags = ['/GR']
|
||||||
|
|
||||||
gp_ghost_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/GPG_ghost', source=source_files)
|
env.BlenderLib (libname='GPG_ghost', sources=source_files, includes = incs, defines = [], libtype='player',priority=0, compileflags=cflags)
|
||||||
|
@@ -1,25 +1,12 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
Import ('user_options_dict')
|
Import ('env')
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
kx_network_env = library_env.Copy ()
|
sources = env.Glob('*.cpp')
|
||||||
|
|
||||||
source_files = ['KX_NetworkEventManager.cpp',
|
incs = '. #source/kernel/gen_system #intern/string #source/gameengine/Ketsji'
|
||||||
'KX_NetworkMessageActuator.cpp',
|
incs += ' #source/gameengine/GameLogic #source/gameengine/Expressions'
|
||||||
'KX_NetworkMessageSensor.cpp',
|
incs += ' #source/gameengine/Network'
|
||||||
'KX_NetworkObjectActuator.cpp',
|
|
||||||
'KX_NetworkObjectSensor.cpp'
|
|
||||||
]
|
|
||||||
|
|
||||||
kx_network_env.Append (CPPPATH = ['.',
|
incs += ' ' + env['BF_PYTHON_INC']
|
||||||
'#source/kernel/gen_system',
|
|
||||||
'#intern/string',
|
|
||||||
'#source/gameengine/Ketsji',
|
|
||||||
'#source/gameengine/GameLogic',
|
|
||||||
'#source/gameengine/Expressions',
|
|
||||||
'#source/gameengine/Network',
|
|
||||||
])
|
|
||||||
|
|
||||||
kx_network_env.Append (CPPPATH = user_options_dict['PYTHON_INCLUDE'])
|
env.BlenderLib ( 'KX_network', Split(sources), Split(incs), defines=[],libtype='game2', priority=5 )
|
||||||
|
|
||||||
kx_network_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/KX_network', source=source_files)
|
|
||||||
|
@@ -1,126 +1,33 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
import sys
|
import sys
|
||||||
|
|
||||||
Import ('user_options_dict')
|
Import ('env')
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
ketsji_env = library_env.Copy ()
|
sources = env.Glob('*.cpp')
|
||||||
|
|
||||||
source_files = ['BL_Shader.cpp',
|
incs = '. #source/kernel/gen_system #intern/string #intern/guardedalloc'
|
||||||
'BL_Material.cpp',
|
incs += ' #source/gameengine/Rasterizer/RAS_OpenGLRasterizer #intern/bmfont'
|
||||||
'BL_Texture.cpp',
|
incs += ' #intern/SoundSystem #intern/SoundSystem/include #intern/SoundSystem/openal'
|
||||||
'KX_WorldIpoController.cpp',
|
incs += ' #intern/SoundSystem/dummy #intern/SoundSystem/intern #source/gameengine/Converter'
|
||||||
'KX_WorldInfo.cpp',
|
incs += ' #source/gameengine/BlenderRoutines #source/blender/imbuf #intern/moto/include'
|
||||||
'KX_VisibilityActuator.cpp',
|
incs += ' #source/gameengine/Ketsji #source/gameengine/Ketsji/KXNetwork #source/blender/blenlib'
|
||||||
'KX_VertexProxy.cpp',
|
incs += ' #source/blender/blenkernel #source/blender #source/blender/include'
|
||||||
'KX_TrackToActuator.cpp',
|
incs += ' #source/blender/makesdna #source/blender/python #source/gameengine/Rasterizer'
|
||||||
'KX_TouchSensor.cpp',
|
incs += ' #source/gameengine/GameLogic #source/gameengine/Expressions #source/gameengine/Network'
|
||||||
'KX_TouchEventManager.cpp',
|
incs += ' #source/gameengine/SceneGraph #source/gameengine/Physics/common #source/gameengine/Physics/Bullet'
|
||||||
'KX_TimeLogger.cpp',
|
incs += ' #source/gameengine/Physics/BlOde #source/gameengine/Physics/Dummy'
|
||||||
'KX_TimeCategoryLogger.cpp',
|
incs += ' #source/gameengine/Physics/Sumo #source/gameengine/Physics/Sumo/include'
|
||||||
'KX_SoundActuator.cpp',
|
incs += ' #source/gameengine/Physics/Sumo/Fuzzics/include #source/gameengine/Network/LoopBackNetwork'
|
||||||
'KX_SG_NodeRelationships.cpp',
|
incs += ' #source/blender/misc #source/blender/blenloader'
|
||||||
'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':
|
#TODO:
|
||||||
source_files += ['KX_SumoPhysicsController.cpp']
|
#if sys.platform == 'win32':
|
||||||
ketsji_env.Append (CPPPATH = user_options_dict['SOLID_INCLUDE'])
|
# ketsji_env.Append (CXXFLAGS = ['/GR'])
|
||||||
|
# ketsji_env.Append ( CCFLAGS =['/Ox'])
|
||||||
|
|
||||||
if user_options_dict['USE_PHYSICS'] == 'ode':
|
incs += ' ' + env['BF_SOLID_INC']
|
||||||
source_files += ['KX_OdePhysicsController.cpp']
|
incs += ' ' + env['BF_PYTHON_INC']
|
||||||
ketsji_env.Append (CPPPATH = user_options_dict['SOLID_INCLUDE'])
|
incs += ' ' + env['BF_SDL_INC']
|
||||||
|
incs += ' ' + env['BF_BULLET_INC']
|
||||||
|
|
||||||
|
env.BlenderLib ( 'KX_ketsji', sources, Split(incs), [], libtype='game', priority=25 )
|
||||||
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)
|
|
||||||
|
@@ -1,15 +1,8 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
Import ('user_options_dict')
|
Import ('env')
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
ng_loopbacknetwork_env = library_env.Copy ()
|
sources = 'NG_LoopBackNetworkDeviceInterface.cpp'
|
||||||
|
|
||||||
source_files = ['NG_LoopBackNetworkDeviceInterface.cpp']
|
incs = '. #source/kernel/gen_system #intern/string #source/gameengine/Network'
|
||||||
|
|
||||||
ng_loopbacknetwork_env.Append (CPPPATH=['.',
|
env.BlenderLib ( 'NG_loopbacknetwork', Split(sources), Split(incs), defines=[],libtype='game2', priority=25 )
|
||||||
'#source/kernel/gen_system',
|
|
||||||
'#intern/string',
|
|
||||||
'#source/gameengine/Network',
|
|
||||||
])
|
|
||||||
|
|
||||||
ng_loopbacknetwork_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/NG_loopbacknetwork', source=source_files)
|
|
||||||
|
@@ -1,17 +1,8 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
Import ('user_options_dict')
|
Import ('env')
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
ng_network_env = library_env.Copy ()
|
sources = env.Glob('*.cpp') #'NG_NetworkMessage.cpp NG_NetworkObject.cpp NG_NetworkScene.cpp'
|
||||||
|
|
||||||
source_files = ['NG_NetworkMessage.cpp',
|
incs = '. #source/kernel/gen_system #intern/string #intern/moto/include'
|
||||||
'NG_NetworkObject.cpp',
|
|
||||||
'NG_NetworkScene.cpp']
|
|
||||||
|
|
||||||
ng_network_env.Append (CPPPATH=['.',
|
env.BlenderLib ( 'NG_network', sources, Split(incs), [], libtype='game2', priority=15 )
|
||||||
'#source/kernel/gen_system',
|
|
||||||
'#intern/string',
|
|
||||||
'#intern/moto/include'
|
|
||||||
])
|
|
||||||
|
|
||||||
ng_network_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/NG_network', source=source_files)
|
|
||||||
|
@@ -1,22 +1,16 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
import sys
|
import sys
|
||||||
Import ('user_options_dict')
|
Import ('env')
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
phy_bullet_env = library_env.Copy ()
|
sources = 'CcdPhysicsEnvironment.cpp CcdPhysicsController.cpp'
|
||||||
|
|
||||||
source_files = ['CcdPhysicsEnvironment.cpp',
|
incs = '. ../common'
|
||||||
'CcdPhysicsController.cpp'
|
|
||||||
]
|
|
||||||
|
|
||||||
phy_bullet_env.Append (CPPPATH=['.',
|
incs += ' ' + env['BF_BULLET_INC']
|
||||||
'../common'])
|
|
||||||
|
|
||||||
phy_bullet_env.Append (CPPPATH = user_options_dict['BULLET_INCLUDE'])
|
#TODO:
|
||||||
|
#if sys.platform=='win32':
|
||||||
|
# phy_bullet_env.Append (CXXFLAGS = ['/GR'])
|
||||||
|
# phy_bullet_env.Append (CCFLAGS =['/O2'])
|
||||||
|
|
||||||
|
env.BlenderLib ( 'PHY_Bullet', Split(sources), Split(incs), [], libtype='game', priority=15 )
|
||||||
if sys.platform=='win32':
|
|
||||||
phy_bullet_env.Append (CXXFLAGS = ['/GR'])
|
|
||||||
phy_bullet_env.Append (CCFLAGS =['/O2'])
|
|
||||||
|
|
||||||
phy_bullet_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/PHY_Bullet', source=source_files)
|
|
||||||
|
@@ -1,13 +1,8 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
Import ('user_options_dict')
|
Import ('env')
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
phy_dummy_env = library_env.Copy ()
|
sources = 'DummyPhysicsEnvironment.cpp'
|
||||||
|
|
||||||
source_files = ['DummyPhysicsEnvironment.cpp']
|
incs = '. ../common'
|
||||||
|
|
||||||
phy_dummy_env.Append (CPPPATH = ['.',
|
env.BlenderLib ( 'PHY_Dummy', Split(sources), Split(incs), [], libtype='game', priority=10 )
|
||||||
'../common'
|
|
||||||
])
|
|
||||||
|
|
||||||
phy_dummy_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/PHY_Dummy', source=source_files)
|
|
||||||
|
@@ -1,11 +1,8 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
import sys
|
Import ('env')
|
||||||
Import ('user_options_dict')
|
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
phy_sumo_env = library_env.Copy ()
|
sumoenv = env.Copy()
|
||||||
|
sources = ['SumoPHYCallbackBridge.cpp',
|
||||||
source_files = ['SumoPHYCallbackBridge.cpp',
|
|
||||||
'SumoPhysicsController.cpp',
|
'SumoPhysicsController.cpp',
|
||||||
'SumoPhysicsEnvironment.cpp',
|
'SumoPhysicsEnvironment.cpp',
|
||||||
'Fuzzics/src/SM_FhObject.cpp',
|
'Fuzzics/src/SM_FhObject.cpp',
|
||||||
@@ -14,16 +11,16 @@ source_files = ['SumoPHYCallbackBridge.cpp',
|
|||||||
'Fuzzics/src/SM_MotionState.cpp'
|
'Fuzzics/src/SM_MotionState.cpp'
|
||||||
]
|
]
|
||||||
|
|
||||||
phy_sumo_env.Append (CPPPATH = ['.',
|
incs =['.',
|
||||||
'../common',
|
'../common',
|
||||||
'Fuzzics/include',
|
'Fuzzics/include',
|
||||||
'#/intern/moto/include'
|
'#/intern/moto/include'
|
||||||
])
|
]
|
||||||
|
incs += [sumoenv['BF_SOLID_INC']]
|
||||||
|
|
||||||
phy_sumo_env.Append (CPPPATH = user_options_dict['SOLID_INCLUDE'])
|
if sumoenv['PLATFORM']=='win32':
|
||||||
|
sumoenv.Append (CXXFLAGS = ['/GR'])
|
||||||
|
sumoenv.Append ( CCFLAGS =['/O1'])
|
||||||
|
|
||||||
if sys.platform=='win32':
|
#env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/PHY_Sumo', source=source_files)
|
||||||
phy_sumo_env.Append (CXXFLAGS = ['/GR'])
|
env.BlenderLib ( 'PHY_Sumo', sources, incs, [], libtype='game2', priority=30 )
|
||||||
phy_sumo_env.Append ( CCFLAGS =['/O1'])
|
|
||||||
|
|
||||||
phy_sumo_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/PHY_Sumo', source=source_files)
|
|
||||||
|
@@ -1,16 +1,8 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
Import ('user_options_dict')
|
Import ('env')
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
phy_physics_env = library_env.Copy ()
|
sources = 'PHY_IMotionState.cpp PHY_IPhysicsController.cpp PHY_IPhysicsEnvironment.cpp'
|
||||||
|
|
||||||
source_files = ['PHY_IMotionState.cpp',
|
incs = '. ../Dummy #intern/moto/include'
|
||||||
'PHY_IPhysicsController.cpp',
|
|
||||||
'PHY_IPhysicsEnvironment.cpp']
|
|
||||||
|
|
||||||
phy_physics_env.Append (CPPPATH = ['.',
|
env.BlenderLib ( 'PHY_Physics', Split(sources), Split(incs), [], libtype=['game', 'game2'], priority=[20, 35] )
|
||||||
'../Dummy',
|
|
||||||
'#intern/moto/include'
|
|
||||||
])
|
|
||||||
|
|
||||||
phy_physics_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/PHY_Physics', source=source_files)
|
|
||||||
|
@@ -1,19 +1,9 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
Import ('user_options_dict')
|
Import ('env')
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
ras_openglrasterizer_env = library_env.Copy ()
|
sources = env.Glob('*.cpp') #'RAS_GLExtensionManager.cpp RAS_OpenGLRasterizer.cpp RAS_VAOpenGLRasterizer.cpp'
|
||||||
|
|
||||||
source_files = ['RAS_GLExtensionManager.cpp',
|
incs = '. #source/kernel/gen_system #intern/string #intern/moto/include #source/gameengine/Rasterizer'
|
||||||
'RAS_OpenGLRasterizer.cpp',
|
incs += ' ' + env['BF_OPENGL_INC']
|
||||||
'RAS_VAOpenGLRasterizer.cpp']
|
|
||||||
|
|
||||||
ras_openglrasterizer_env.Append (CPPPATH=['.',
|
env.BlenderLib ( 'RAS_OpenGLRasterizer', Split(sources), Split(incs), [], libtype='game', priority=40 )
|
||||||
'#source/kernel/gen_system',
|
|
||||||
'#intern/string',
|
|
||||||
'#intern/moto/include',
|
|
||||||
'#source/gameengine/Rasterizer'
|
|
||||||
])
|
|
||||||
ras_openglrasterizer_env.Append (CPPPATH = user_options_dict['OPENGL_INCLUDE'])
|
|
||||||
|
|
||||||
ras_openglrasterizer_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/RAS_OpenGLRasterizer', source=source_files)
|
|
||||||
|
@@ -1,27 +1,13 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
import sys
|
import sys
|
||||||
Import ('user_options_dict')
|
Import ('env')
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
ras_rasterizer_env = library_env.Copy ()
|
sources = env.Glob('*.cpp')
|
||||||
|
|
||||||
source_files = ['RAS_BucketManager.cpp',
|
incs = '. #source/kernel/gen_system #intern/string #intern/moto/include'
|
||||||
'RAS_FramingManager.cpp',
|
|
||||||
'RAS_IPolygonMaterial.cpp',
|
|
||||||
'RAS_IRenderTools.cpp',
|
|
||||||
'RAS_MaterialBucket.cpp',
|
|
||||||
'RAS_MeshObject.cpp',
|
|
||||||
'RAS_Polygon.cpp',
|
|
||||||
'RAS_TexVert.cpp',
|
|
||||||
'RAS_texmatrix.cpp']
|
|
||||||
|
|
||||||
ras_rasterizer_env.Append (CPPPATH=['.',
|
#TODO:
|
||||||
'#source/kernel/gen_system',
|
#if sys.platform=='win32':
|
||||||
'#intern/string',
|
# ras_rasterizer_env.Append ( CCFLAGS =['/Ox'])
|
||||||
'#intern/moto/include'
|
|
||||||
])
|
|
||||||
|
|
||||||
if sys.platform=='win32':
|
env.BlenderLib ( 'RAS_rasterizer', sources, Split(incs), [], libtype='game', priority=35 )
|
||||||
ras_rasterizer_env.Append ( CCFLAGS =['/Ox'])
|
|
||||||
|
|
||||||
ras_rasterizer_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/RAS_rasterizer', source=source_files)
|
|
||||||
|
@@ -1,5 +1,5 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
Import ('user_options_dict')
|
Import ('env')
|
||||||
|
|
||||||
SConscript(['BlenderRoutines/SConscript',
|
SConscript(['BlenderRoutines/SConscript',
|
||||||
'Converter/SConscript',
|
'Converter/SConscript',
|
||||||
@@ -14,12 +14,14 @@ SConscript(['BlenderRoutines/SConscript',
|
|||||||
'Rasterizer/SConscript',
|
'Rasterizer/SConscript',
|
||||||
'Rasterizer/RAS_OpenGLRasterizer/SConscript',
|
'Rasterizer/RAS_OpenGLRasterizer/SConscript',
|
||||||
'SceneGraph/SConscript',
|
'SceneGraph/SConscript',
|
||||||
'Physics/Bullet/SConscript'])
|
'Physics/Bullet/SConscript',
|
||||||
|
'Physics/Sumo/SConscript'
|
||||||
|
])
|
||||||
|
|
||||||
if user_options_dict['BUILD_BLENDER_PLAYER']:
|
if env['WITH_BF_PLAYER']:
|
||||||
SConscript(['GamePlayer/SConscript'])
|
SConscript(['GamePlayer/SConscript'])
|
||||||
|
|
||||||
if user_options_dict['USE_PHYSICS'] == 'solid':
|
#if user_options_dict['USE_PHYSICS'] == 'solid':
|
||||||
SConscript(['Physics/Sumo/SConscript'])
|
# SConscript(['Physics/Sumo/SConscript'])
|
||||||
elif user_options_dict['USE_PHYSICS'] == 'ode':
|
#elif user_options_dict['USE_PHYSICS'] == 'ode':
|
||||||
SConscript(['Physics/BlOde/SConscript'])
|
# SConscript(['Physics/BlOde/SConscript'])
|
||||||
|
@@ -1,19 +1,9 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
|
|
||||||
Import ('user_options_dict')
|
Import ('env')
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
sg_scenegraph_env = library_env.Copy ()
|
sources = env.Glob('*.cpp') #'SG_BBox.cpp SG_Controller.cpp SG_IObject.cpp SG_Node.cpp SG_Spatial.cpp SG_Tree.cpp'
|
||||||
|
|
||||||
source_files = ['SG_BBox.cpp',
|
incs = '. #intern/moto/include'
|
||||||
'SG_Controller.cpp',
|
|
||||||
'SG_IObject.cpp',
|
|
||||||
'SG_Node.cpp',
|
|
||||||
'SG_Spatial.cpp',
|
|
||||||
'SG_Tree.cpp']
|
|
||||||
|
|
||||||
sg_scenegraph_env.Append (CPPPATH=['.',
|
env.BlenderLib ( 'SG_SceneGraph', sources, Split(incs), [], libtype='game', priority=50 )
|
||||||
'#intern/moto/include'
|
|
||||||
])
|
|
||||||
|
|
||||||
sg_scenegraph_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/SG_SceneGraph', source=source_files)
|
|
||||||
|
@@ -1,18 +1,10 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python
|
||||||
Import ('user_options_dict')
|
Import ('env')
|
||||||
Import ('library_env')
|
|
||||||
|
|
||||||
kernel_env = library_env.Copy ()
|
sources = 'gen_messaging/intern/messaging.c gen_system/GEN_HashedPtr.cpp'
|
||||||
|
sources += ' gen_system/GEN_Matrix4x4.cpp gen_system/SYS_SingletonSystem.cpp'
|
||||||
|
sources += ' gen_system/SYS_System.cpp'
|
||||||
|
|
||||||
source_files = ['gen_messaging/intern/messaging.c',
|
incs = 'gen_messaging gen_system #/intern/string #/intern/moto/include'
|
||||||
'gen_system/GEN_HashedPtr.cpp',
|
|
||||||
'gen_system/GEN_Matrix4x4.cpp',
|
|
||||||
'gen_system/SYS_SingletonSystem.cpp',
|
|
||||||
'gen_system/SYS_System.cpp']
|
|
||||||
|
|
||||||
kernel_env.Append (CPPPATH = ['gen_messaging',
|
env.BlenderLib ( 'blender_kernel', Split(sources), Split(incs), [], libtype = ['common','game2'], priority = [15, 10] )
|
||||||
'gen_system',
|
|
||||||
'#/intern/string',
|
|
||||||
'#/intern/moto/include'])
|
|
||||||
|
|
||||||
kernel_env.Library (target='#'+user_options_dict['BUILD_DIR']+'/lib/blender_kernel', source=source_files)
|
|
||||||
|
323
tools/Blender.py
Normal file
323
tools/Blender.py
Normal file
@@ -0,0 +1,323 @@
|
|||||||
|
#!/usr/bin/env python
|
||||||
|
|
||||||
|
"""
|
||||||
|
tools.BlenderEnvironment
|
||||||
|
|
||||||
|
This environment builds on SCons.Script.SConscript.SConsEnvironment
|
||||||
|
|
||||||
|
* library repository
|
||||||
|
* custom printout
|
||||||
|
* wrapper functions
|
||||||
|
|
||||||
|
TODO: clean up and sanitise code - crosscheck with btools and SConstruct
|
||||||
|
to kill any code duplication
|
||||||
|
"""
|
||||||
|
|
||||||
|
import os.path
|
||||||
|
import string
|
||||||
|
import glob
|
||||||
|
import time
|
||||||
|
import sys
|
||||||
|
|
||||||
|
from SCons.Script.SConscript import SConsEnvironment
|
||||||
|
import SCons.Action
|
||||||
|
import SCons.Util
|
||||||
|
import SCons.Builder
|
||||||
|
import SCons.Tool
|
||||||
|
import bcolors
|
||||||
|
bc = bcolors.bcolors()
|
||||||
|
|
||||||
|
Split = SCons.Util.Split
|
||||||
|
Action = SCons.Action.Action
|
||||||
|
Builder = SCons.Builder.Builder
|
||||||
|
GetBuildPath = SConsEnvironment.GetBuildPath
|
||||||
|
|
||||||
|
# a few globals
|
||||||
|
root_build_dir = ''
|
||||||
|
quickie = None # Anything else than None if BF_QUICK has been passed
|
||||||
|
quicklist = [] # The list of libraries/programs to compile during a quickie
|
||||||
|
program_list = [] # A list holding Nodes to final binaries, used to create installs
|
||||||
|
arguments = None
|
||||||
|
targets = None
|
||||||
|
|
||||||
|
#some internals
|
||||||
|
blenderdeps = [] # don't manipulate this one outside this module!
|
||||||
|
|
||||||
|
##### LIB STUFF ##########
|
||||||
|
|
||||||
|
possible_types = ['core'] # can be set in ie. SConstruct
|
||||||
|
libs = {}
|
||||||
|
def init_lib_dict():
|
||||||
|
for pt in possible_types:
|
||||||
|
libs[pt] = {}
|
||||||
|
|
||||||
|
# helper func for add_lib_to_dict
|
||||||
|
def internal_lib_to_dict(dict = None, libtype = None, libname = None, priority = 100):
|
||||||
|
if not libname in dict[libtype]:
|
||||||
|
done = None
|
||||||
|
while not done:
|
||||||
|
if dict[libtype].has_key(priority):
|
||||||
|
priority = priority + 1
|
||||||
|
else:
|
||||||
|
done = True
|
||||||
|
dict[libtype][priority] = libname
|
||||||
|
|
||||||
|
# libtype and priority can both be lists, for defining lib in multiple places
|
||||||
|
def add_lib_to_dict(dict = None, libtype = None, libname = None, priority = 100):
|
||||||
|
if not dict or not libtype or not libname:
|
||||||
|
print "Passed wrong arg"
|
||||||
|
Exit()
|
||||||
|
|
||||||
|
if type(libtype) is str and type(priority) is int:
|
||||||
|
internal_lib_to_dict(dict, libtype, libname, priority)
|
||||||
|
elif type(libtype) is list and type(priority) is list:
|
||||||
|
if len(libtype)==len(priority):
|
||||||
|
for lt, p in zip(libtype, priority):
|
||||||
|
internal_lib_to_dict(dict, lt, libname, p)
|
||||||
|
else:
|
||||||
|
print "libtype and priority lists are unequal in length"
|
||||||
|
Exit()
|
||||||
|
else:
|
||||||
|
print "Wrong type combinations for libtype and priority. Only str and int or list and list"
|
||||||
|
Exit()
|
||||||
|
|
||||||
|
#libs = init_lib_dict(libs)
|
||||||
|
|
||||||
|
def create_blender_liblist(lenv = None, libtype = None):
|
||||||
|
if not lenv or not libtype:
|
||||||
|
print "missing arg"
|
||||||
|
|
||||||
|
lst = []
|
||||||
|
if libtype in possible_types:
|
||||||
|
sortlist = []
|
||||||
|
for k,v in libs[libtype].iteritems():
|
||||||
|
sortlist.append(k)
|
||||||
|
sortlist.sort()
|
||||||
|
curlib = libs[libtype]
|
||||||
|
for sk in sortlist:
|
||||||
|
v = curlib[sk]
|
||||||
|
#for k,v in sorted(libs[libtype].iteritems()):
|
||||||
|
lst.append('#' + root_build_dir + 'lib/'+lenv['LIBPREFIX'] + v + lenv['LIBSUFFIX'])
|
||||||
|
|
||||||
|
return lst
|
||||||
|
|
||||||
|
## TODO: static linking
|
||||||
|
def setup_staticlibs(lenv):
|
||||||
|
statlibs = [
|
||||||
|
#here libs for static linking
|
||||||
|
]
|
||||||
|
libincs = [
|
||||||
|
'/usr/lib',
|
||||||
|
lenv['BF_PYTHON_LIBPATH'],
|
||||||
|
lenv['BF_OPENGL_LIBPATH'],
|
||||||
|
lenv['BF_SDL_LIBPATH'],
|
||||||
|
lenv['BF_JPEG_LIBPATH'],
|
||||||
|
lenv['BF_TIFF_LIBPATH'],
|
||||||
|
lenv['BF_PNG_LIBPATH'],
|
||||||
|
lenv['BF_GETTEXT_LIBPATH'],
|
||||||
|
lenv['BF_ZLIB_LIBPATH'],
|
||||||
|
lenv['BF_OPENAL_LIBPATH'],
|
||||||
|
lenv['BF_FREETYPE_LIBPATH'],
|
||||||
|
# lenv['BF_QUICKTIME_LIBPATH'],
|
||||||
|
lenv['BF_ICONV_LIBPATH']
|
||||||
|
]
|
||||||
|
libincs += Split(lenv['BF_OPENEXR_LIBPATH'])
|
||||||
|
|
||||||
|
return statlibs, libincs
|
||||||
|
|
||||||
|
def setup_syslibs(lenv):
|
||||||
|
syslibs = [
|
||||||
|
lenv['BF_PYTHON_LIB'],
|
||||||
|
lenv['BF_JPEG_LIB'],
|
||||||
|
lenv['BF_PNG_LIB'],
|
||||||
|
lenv['BF_ZLIB_LIB'],
|
||||||
|
lenv['BF_OPENAL_LIB'],
|
||||||
|
lenv['BF_FREETYPE_LIB'],
|
||||||
|
lenv['BF_GETTEXT_LIB']
|
||||||
|
|
||||||
|
#here libs for linking
|
||||||
|
]
|
||||||
|
if lenv['OURPLATFORM']=='win32vc':
|
||||||
|
syslibs += Split(lenv['BF_ICONV_LIB'])
|
||||||
|
syslibs += Split(lenv['BF_TIFF_LIB'])
|
||||||
|
syslibs += Split(lenv['BF_OPENEXR_LIB'])
|
||||||
|
syslibs += Split(lenv['BF_SDL_LIB'])
|
||||||
|
syslibs += Split(lenv['BF_OPENGL_LIB'])
|
||||||
|
syslibs += Split(lenv['LLIBS'])
|
||||||
|
|
||||||
|
return syslibs
|
||||||
|
|
||||||
|
def propose_priorities():
|
||||||
|
print bc.OKBLUE+"Priorities:"+bc.ENDC
|
||||||
|
for t in possible_types:
|
||||||
|
print bc.OKGREEN+"\t"+t+bc.ENDC
|
||||||
|
new_priority = 0
|
||||||
|
sortlist = []
|
||||||
|
for k,v in libs[t].iteritems():
|
||||||
|
sortlist.append(k)
|
||||||
|
sortlist.sort()
|
||||||
|
curlib = libs[t]
|
||||||
|
for sk in sortlist:
|
||||||
|
v = curlib[sk]
|
||||||
|
#for p,v in sorted(libs[t].iteritems()):
|
||||||
|
print "\t\t",new_priority, v
|
||||||
|
new_priority += 5
|
||||||
|
|
||||||
|
## TODO: see if this can be made in an emitter
|
||||||
|
def buildinfo(lenv, build_type):
|
||||||
|
"""
|
||||||
|
Generate a buildinfo object
|
||||||
|
"""
|
||||||
|
build_date = time.strftime ("%Y-%m-%d")
|
||||||
|
build_time = time.strftime ("%H:%M:%S")
|
||||||
|
obj = []
|
||||||
|
if True: #user_options_dict['USE_BUILDINFO'] == 1:
|
||||||
|
if sys.platform=='win32':
|
||||||
|
build_info_file = open("source/creator/winbuildinfo.h", 'w')
|
||||||
|
build_info_file.write("char *build_date=\"%s\";\n"%build_date)
|
||||||
|
build_info_file.write("char *build_time=\"%s\";\n"%build_time)
|
||||||
|
build_info_file.write("char *build_platform=\"win32\";\n")
|
||||||
|
build_info_file.write("char *build_type=\"dynamic\";\n")
|
||||||
|
build_info_file.close()
|
||||||
|
lenv.Append (CPPDEFINES = ['NAN_BUILDINFO', 'BUILD_DATE'])
|
||||||
|
else:
|
||||||
|
lenv.Append (CPPDEFINES = ['BUILD_TIME=\'"%s"\''%(build_time),
|
||||||
|
'BUILD_DATE=\'"%s"\''%(build_date),
|
||||||
|
'BUILD_TYPE=\'"dynamic"\'',
|
||||||
|
'NAN_BUILDINFO',
|
||||||
|
'BUILD_PLATFORM=\'"%s"\''%(sys.platform)])
|
||||||
|
obj = [lenv.Object (root_build_dir+'source/creator/%s_buildinfo'%build_type,
|
||||||
|
[root_build_dir+'source/creator/buildinfo.c'])]
|
||||||
|
return obj
|
||||||
|
|
||||||
|
##### END LIB STUFF ############
|
||||||
|
|
||||||
|
##### ACTION STUFF #############
|
||||||
|
|
||||||
|
def my_compile_print(target, source, env):
|
||||||
|
a = '%s' % (source[0])
|
||||||
|
d, f = os.path.split(a)
|
||||||
|
return bc.OKBLUE+"Compiling"+bc.ENDC +" ==> '"+bc.OKGREEN+"%s" % (f) + "'"+bc.ENDC
|
||||||
|
|
||||||
|
def my_moc_print(target, source, env):
|
||||||
|
a = '%s' % (source[0])
|
||||||
|
d, f = os.path.split(a)
|
||||||
|
return bc.OKBLUE+"Creating MOC"+bc.ENDC+ " ==> '"+bc.OKGREEN+"%s" %(f) + "'"+bc.ENDC
|
||||||
|
|
||||||
|
def my_linking_print(target, source, env):
|
||||||
|
t = '%s' % (target[0])
|
||||||
|
d, f = os.path.split(t)
|
||||||
|
return bc.OKBLUE+"Linking library"+bc.ENDC +" ==> '"+bc.OKGREEN+"%s" % (f) + "'"+bc.ENDC
|
||||||
|
|
||||||
|
def my_program_print(target, source, env):
|
||||||
|
t = '%s' % (target[0])
|
||||||
|
d, f = os.path.split(t)
|
||||||
|
return bc.OKBLUE+"Linking program"+bc.ENDC +" ==> '"+bc.OKGREEN+"%s" % (f) + "'"+bc.ENDC
|
||||||
|
|
||||||
|
def msvc_hack(env):
|
||||||
|
static_lib = SCons.Tool.createStaticLibBuilder(env)
|
||||||
|
program = SCons.Tool.createProgBuilder(env)
|
||||||
|
|
||||||
|
env['BUILDERS']['Library'] = static_lib
|
||||||
|
env['BUILDERS']['StaticLibrary'] = static_lib
|
||||||
|
env['BUILDERS']['Program'] = program
|
||||||
|
|
||||||
|
def set_quiet_output(env):
|
||||||
|
mycaction = Action("$CCCOM", strfunction=my_compile_print)
|
||||||
|
myshcaction = Action("$SHCCCOM", strfunction=my_compile_print)
|
||||||
|
mycppaction = Action("$CXXCOM", strfunction=my_compile_print)
|
||||||
|
myshcppaction = Action("$SHCXXCOM", strfunction=my_compile_print)
|
||||||
|
mylibaction = Action("$ARCOM", strfunction=my_linking_print)
|
||||||
|
mylinkaction = Action("$LINKCOM", strfunction=my_program_print)
|
||||||
|
|
||||||
|
static_ob, shared_ob = SCons.Tool.createObjBuilders(env)
|
||||||
|
static_ob.add_action('.c', mycaction)
|
||||||
|
static_ob.add_action('.cpp', mycppaction)
|
||||||
|
shared_ob.add_action('.c', myshcaction)
|
||||||
|
shared_ob.add_action('.cpp', myshcppaction)
|
||||||
|
|
||||||
|
static_lib = SCons.Builder.Builder(action = mylibaction,
|
||||||
|
emitter = '$LIBEMITTER',
|
||||||
|
prefix = '$LIBPREFIX',
|
||||||
|
suffix = '$LIBSUFFIX',
|
||||||
|
src_suffix = '$OBJSUFFIX',
|
||||||
|
src_builder = 'StaticObject')
|
||||||
|
|
||||||
|
program = SCons.Builder.Builder(action = mylinkaction,
|
||||||
|
emitter = '$PROGEMITTER',
|
||||||
|
prefix = '$PROGPREFIX',
|
||||||
|
suffix = '$PROGSUFFIX',
|
||||||
|
src_suffix = '$OBJSUFFIX',
|
||||||
|
src_builder = 'Object',
|
||||||
|
target_scanner = SCons.Defaults.ProgScan)
|
||||||
|
|
||||||
|
env['BUILDERS']['Object'] = static_ob
|
||||||
|
env['BUILDERS']['StaticObject'] = static_ob
|
||||||
|
env['BUILDERS']['StaticLibrary'] = static_lib
|
||||||
|
env['BUILDERS']['Library'] = static_lib
|
||||||
|
env['BUILDERS']['Program'] = program
|
||||||
|
|
||||||
|
|
||||||
|
#### END ACTION STUFF #########
|
||||||
|
|
||||||
|
class BlenderEnvironment(SConsEnvironment):
|
||||||
|
|
||||||
|
def BlenderLib(self=None, libname=None, sources=None, includes=[], defines=[], libtype='common', priority = 100, compileflags=None):
|
||||||
|
if not self or not libname or not sources:
|
||||||
|
print bc.FAIL+'Cannot continue. Missing argument for BuildBlenderLib '+libname+bc.ENDC
|
||||||
|
Exit()
|
||||||
|
if libname in quickie or len(quickie)==0:
|
||||||
|
print bc.HEADER+'Configuring library '+bc.ENDC+bc.OKGREEN+libname+bc.ENDC
|
||||||
|
lenv = self.Copy()
|
||||||
|
lenv.Append(CPPPATH=includes)
|
||||||
|
lenv.Append(CPPDEFINES=defines)
|
||||||
|
if lenv['WITH_BF_GAMEENGINE']:
|
||||||
|
lenv.Append(CPPDEFINES=['GAMEBLENDER=1'])
|
||||||
|
if lenv['BF_DEBUG']:
|
||||||
|
lenv.Append(CCFLAGS = lenv['BF_DEBUG_FLAGS'], CXXFLAGS = lenv['BF_DEBUG_FLAGS'])
|
||||||
|
if lenv['BF_PROFILE']:
|
||||||
|
lenv.Append(CCFLAGS = lenv['BF_PROFILE_FLAGS'], CXXFLAGS = lenv['BF_PROFILE_FLAGS'])
|
||||||
|
if compileflags:
|
||||||
|
lenv.Append(CCFLAGS = compileflags)
|
||||||
|
lenv.Append(CXXFLAGS = compileflags)
|
||||||
|
lib = lenv.Library(target= '#'+root_build_dir+'lib/'+libname, source=sources)
|
||||||
|
SConsEnvironment.Default(self, lib) # we add to default target, because this way we get some kind of progress info during build
|
||||||
|
else:
|
||||||
|
print bc.WARNING+'Not building '+bc.ENDC+bc.OKGREEN+libname+bc.ENDC+' for '+bc.OKBLUE+'BF_QUICK'+bc.ENDC
|
||||||
|
# note: libs is a global
|
||||||
|
add_lib_to_dict(libs, libtype, libname, priority)
|
||||||
|
|
||||||
|
def BlenderProg(self=None, builddir=None, progname=None, sources=None, includes=None, libs=None, libpath=None):
|
||||||
|
print bc.HEADER+'Configuring program '+bc.ENDC+bc.OKGREEN+progname+bc.ENDC
|
||||||
|
lenv = self.Copy()
|
||||||
|
if lenv['OURPLATFORM']=='win32-vc':
|
||||||
|
lenv.Append(LINKFLAGS = Split(lenv['PLATFORM_LINKFLAGS']))
|
||||||
|
if lenv['OURPLATFORM']=='darwin':
|
||||||
|
lenv.Append(LINKFLAGS = lenv['PLATFORM_LINKFLAGS'])
|
||||||
|
lenv.Append(LINKFLAGS = lenv['BF_PYTHON_LINKFLAGS'])
|
||||||
|
lenv.Append(LINKFLAGS = lenv['BF_OPENGL_LINKFLAGS'])
|
||||||
|
lenv.Append(CPPPATH=includes)
|
||||||
|
lenv.Append(LIBPATH=libpath)
|
||||||
|
lenv.Append(LIBS=libs)
|
||||||
|
if lenv['WITH_BF_QUICKTIME']:
|
||||||
|
lenv.Append(LIBS = lenv['BF_QUICKTIME_LIB'])
|
||||||
|
lenv.Append(LIBPATH = lenv['BF_QUICKTIME_LIBPATH'])
|
||||||
|
prog = lenv.Program(target=builddir+'bin/'+progname, source=sources)
|
||||||
|
SConsEnvironment.Default(self, prog)
|
||||||
|
program_list.append(prog)
|
||||||
|
|
||||||
|
## TODO: have register for libs/programs, so that we test only that
|
||||||
|
# which have expressed their need to be tested in their own sconscript
|
||||||
|
def BlenderUnitTest(env, source, **kwargs):
|
||||||
|
test = env.Program(source, **kwargs)
|
||||||
|
env.AddPostAction(test, test[0].abspath)
|
||||||
|
env.Alias('check', test)
|
||||||
|
env.AlwaysBuild(test)
|
||||||
|
return test
|
||||||
|
|
||||||
|
def Glob(lenv, pattern):
|
||||||
|
path = string.replace(GetBuildPath(lenv,'SConscript'),'SConscript', '')
|
||||||
|
files = []
|
||||||
|
for i in glob.glob(path + pattern):
|
||||||
|
files.append(string.replace(i, path, ''))
|
||||||
|
return files
|
16
tools/bcolors.py
Executable file
16
tools/bcolors.py
Executable file
@@ -0,0 +1,16 @@
|
|||||||
|
class bcolors:
|
||||||
|
HEADER = '\033[95m'
|
||||||
|
OKBLUE = '\033[94m'
|
||||||
|
OKGREEN = '\033[92m'
|
||||||
|
WARNING = '\033[93m'
|
||||||
|
FAIL = '\033[91m'
|
||||||
|
ENDC = '\033[0m'
|
||||||
|
|
||||||
|
def disable(self):
|
||||||
|
self.HEADER = ''
|
||||||
|
self.OKBLUE = ''
|
||||||
|
self.OKGREEN = ''
|
||||||
|
self.WARNING = ''
|
||||||
|
self.FAIL = ''
|
||||||
|
self.ENDC = ''
|
||||||
|
|
257
tools/btools.py
Executable file
257
tools/btools.py
Executable file
@@ -0,0 +1,257 @@
|
|||||||
|
import sys
|
||||||
|
import StringIO
|
||||||
|
import SCons.Options
|
||||||
|
import SCons.Options.BoolOption
|
||||||
|
|
||||||
|
Options = SCons.Options
|
||||||
|
BoolOption = SCons.Options.BoolOption
|
||||||
|
|
||||||
|
def print_arguments(args, bc):
|
||||||
|
if len(args):
|
||||||
|
for k,v in args.iteritems():
|
||||||
|
print '\t'+bc.OKBLUE+k+bc.ENDC+' = '+bc.OKGREEN + v + bc.ENDC
|
||||||
|
else:
|
||||||
|
print '\t'+bc.WARNING+'No command-line arguments given'+bc.ENDC
|
||||||
|
|
||||||
|
def validate_arguments(args, bc):
|
||||||
|
opts_list = [
|
||||||
|
'BF_PYTHON', 'BF_PYTHON_VERSION', 'BF_PYTHON_INC', 'BF_PYTHON_BINARY', 'BF_PYTHON_LIB', 'BF_PYTHON_LIBPATH', 'BF_PYTHON_LINKFLAGS',
|
||||||
|
'WITH_BF_OPENAL', 'BF_OPENAL', 'BF_OPENAL_INC', 'BF_OPENAL_LIB', 'BF_OPENAL_LIBPATH',
|
||||||
|
'WITH_BF_SDL', 'BF_SDL', 'BF_SDL_INC', 'BF_SDL_LIB', 'BF_SDL_LIBPATH',
|
||||||
|
'WITH_BF_FMOD',
|
||||||
|
'WITH_BF_OPENEXR', 'BF_OPENEXR', 'BF_OPENEXR_INC', 'BF_OPENEXR_LIB', 'BF_OPENEXR_LIBPATH',
|
||||||
|
'WITH_BF_JPEG', 'BF_JPEG', 'BF_JPEG_INC', 'BF_JPEG_LIB', 'BF_JPEG_LIBPATH',
|
||||||
|
'WITH_BF_PNG', 'BF_PNG', 'BF_PNG_INC', 'BF_PNG_LIB', 'BF_PNG_LIBPATH',
|
||||||
|
'WITH_BF_TIFF', 'BF_TIFF', 'BF_TIFF_INC', 'BF_TIFF_LIB', 'BF_TIFF_LIBPATH',
|
||||||
|
'WITH_BF_ZLIB', 'BF_ZLIB', 'BF_ZLIB_INC', 'BF_ZLIB_LIB', 'BF_ZLIB_LIBPATH',
|
||||||
|
'WITH_BF_GETTEXT', 'BF_GETTEXT', 'BF_GETTEXT_INC', 'BF_GETTEXT_LIB', 'BF_GETTEXT_LIBPATH',
|
||||||
|
'WITH_BF_ICONV', 'BF_ICONV', 'BF_ICONV_INC', 'BF_ICONV_LIB', 'BF_ICONV_LIBPATH',
|
||||||
|
'WITH_BF_ODE', 'BF_ODE', 'BF_ODE_INC', 'BF_ODE_LIB',
|
||||||
|
'WITH_BF_GAMEENGINE', 'WITH_BF_BULLET', 'BF_BULLET', 'BF_BULLET_INC', 'BF_BULLET_LIB',
|
||||||
|
'BF_SOLID', 'BF_SOLID_INC',
|
||||||
|
'WITH_BF_FREETYPE', 'BF_FREETYPE', 'BF_FREETYPE_INC', 'BF_FREETYPE_LIB', 'BF_FREETYPE_LIBPATH',
|
||||||
|
'WITH_BF_QUICKTIME', 'BF_QUICKTIME', 'BF_QUICKTIME_INC', 'BF_QUICKTIME_LIB', 'BF_QUICKTIME_LIBPATH',
|
||||||
|
'WITH_BF_OPENGL', 'BF_OPENGL', 'BF_OPENGL_INC', 'BF_OPENGL_LIB', 'BF_OPENGL_LIBPATH', 'BF_OPENGL_LIB_STATIC', 'BF_OPENGL_LINKFLAGS',
|
||||||
|
'WITH_BF_FTGL', 'BF_FTGL', 'BF_FTGL_INC', 'BF_FTGL_LIB',
|
||||||
|
'WITH_BF_PLAYER',
|
||||||
|
'CFLAGS', 'CCFLAGS', 'CPPFLAGS',
|
||||||
|
'REL_CFLAGS', 'REL_CCFLAGS',
|
||||||
|
'C_WARN', 'CC_WARN', 'LLIBS', 'PLATFORM_LINKFLAGS',
|
||||||
|
'BF_PROFILE_FLAGS' ]
|
||||||
|
arg_list = ['BF_DEBUG', 'BF_QUIET', 'BF_CROSS', 'BF_UPDATE',
|
||||||
|
'BF_INSTALLDIR', 'BF_TOOLSET', 'BF_BINNAME',
|
||||||
|
'BF_BUILDDIR', 'BF_FANCY', 'BF_QUICK', 'BF_PROFILE', 'BF_DEBUG',
|
||||||
|
'BF_PRIORITYLIST'
|
||||||
|
]
|
||||||
|
|
||||||
|
all_list = opts_list + arg_list
|
||||||
|
okdict = {}
|
||||||
|
|
||||||
|
for k,v in args.iteritems():
|
||||||
|
if k in all_list:
|
||||||
|
okdict[k] = v
|
||||||
|
else:
|
||||||
|
print '\t'+bc.WARNING+'Invalid argument: '+bc.ENDC+k+'='+v
|
||||||
|
|
||||||
|
return okdict
|
||||||
|
|
||||||
|
def print_targets(targs, bc):
|
||||||
|
if len(targs)>0:
|
||||||
|
for t in targs:
|
||||||
|
print '\t'+bc.OKBLUE+t+bc.ENDC
|
||||||
|
else:
|
||||||
|
print '\t'+bc.WARNING+'No targets given, using '+bc.ENDC+bc.OKGREEN+'default'+bc.ENDC
|
||||||
|
|
||||||
|
def validate_targets(targs, bc):
|
||||||
|
valid_list = ['.', 'blender', 'blenderstatic', 'blenderplayer', 'webplugin',
|
||||||
|
'blendernogame', 'blenderstaticnogame', 'release',
|
||||||
|
'everything', 'clean', 'install-bin', 'install']
|
||||||
|
oklist = []
|
||||||
|
for t in targs:
|
||||||
|
if t in valid_list:
|
||||||
|
oklist.append(t)
|
||||||
|
else:
|
||||||
|
print '\t'+bc.WARNING+'Invalid target: '+bc.ENDC+t
|
||||||
|
return oklist
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
class idBuffering:
|
||||||
|
def buffered_spawn( self, sh, escape, cmd, args, env ):
|
||||||
|
stderr = StringIO.StringIO()
|
||||||
|
stdout = StringIO.StringIO()
|
||||||
|
command_string = ''
|
||||||
|
for i in args:
|
||||||
|
if ( len( command_string ) ):
|
||||||
|
command_string += ' '
|
||||||
|
command_string += i
|
||||||
|
try:
|
||||||
|
retval = self.env['PSPAWN']( sh, escape, cmd, args, env, stdout, stderr )
|
||||||
|
except OSError, x:
|
||||||
|
if x.errno != 10:
|
||||||
|
raise x
|
||||||
|
print 'OSError ignored on command: %s' % command_string
|
||||||
|
retval = 0
|
||||||
|
sys.stdout.write( stdout.getvalue() )
|
||||||
|
sys.stderr.write( stderr.getvalue() )
|
||||||
|
return retval
|
||||||
|
|
||||||
|
# get a clean error output when running multiple jobs
|
||||||
|
def SetupBufferedOutput( env ):
|
||||||
|
buf = idBuffering()
|
||||||
|
buf.env = env
|
||||||
|
env['SPAWN'] = buf.buffered_spawn
|
||||||
|
|
||||||
|
|
||||||
|
def read_opts(cfg, args):
|
||||||
|
localopts = Options.Options(cfg, args)
|
||||||
|
localopts.AddOptions(
|
||||||
|
('BF_PYTHON', 'base path for python', ''),
|
||||||
|
('BF_PYTHON_VERSION', 'Python version to use', ''),
|
||||||
|
('BF_PYTHON_INC', 'include path for Python headers', ''),
|
||||||
|
('BF_PYTHON_BINARY', 'Path to the Python interpreter', ''),
|
||||||
|
('BF_PYTHON_LIB', 'Python library', ''),
|
||||||
|
('BF_PYTHON_LIBPATH', 'Library path', ''),
|
||||||
|
('BF_PYTHON_LINKFLAGS', 'Python link flags', ''),
|
||||||
|
|
||||||
|
(BoolOption('WITH_BF_OPENAL', 'Use OpenAL if true', '')),
|
||||||
|
('BF_OPENAL', 'base path for OpenAL', ''),
|
||||||
|
('BF_OPENAL_INC', 'include path for python headers', ''),
|
||||||
|
('BF_OPENAL_LIB', 'Path to OpenAL library', ''),
|
||||||
|
('BF_OPENAL_LIBPATH', 'Path to OpenAL library', ''),
|
||||||
|
|
||||||
|
(BoolOption('WITH_BF_SDL', 'Use SDL if true', '')),
|
||||||
|
('BF_SDL', 'SDL base path', ''),
|
||||||
|
('BF_SDL_INC', 'SDL include path', ''), #$(shell $(BF_SDL)/bin/sdl-config --cflags)
|
||||||
|
('BF_SDL_LIB', 'SDL library', ''), #$(shell $(BF_SDL)/bin/sdl-config --libs) -lSDL_mixer
|
||||||
|
('BF_SDL_LIBPATH', 'SDL library path', ''),
|
||||||
|
|
||||||
|
(BoolOption('WITH_BF_FMOD', 'Use FMOD if true', 'false')),
|
||||||
|
# BF_FMOD = $(LCGDIR)/fmod
|
||||||
|
|
||||||
|
(BoolOption('WITH_BF_OPENEXR', 'Use OPENEXR if true', 'true')),
|
||||||
|
('BF_OPENEXR', 'OPENEXR base path', ''),
|
||||||
|
('BF_OPENEXR_INC', 'OPENEXR include path', ''),
|
||||||
|
('BF_OPENEXR_LIB', 'OPENEXR library', ''),
|
||||||
|
('BF_OPENEXR_LIBPATH', 'OPENEXR library path', ''),
|
||||||
|
|
||||||
|
(BoolOption('WITH_BF_JPEG', 'Use JPEG if true', 'true')),
|
||||||
|
('BF_JPEG', 'JPEG base path', ''),
|
||||||
|
('BF_JPEG_INC', 'JPEG include path', ''),
|
||||||
|
('BF_JPEG_LIB', 'JPEG library', ''),
|
||||||
|
('BF_JPEG_LIBPATH', 'JPEG library path', ''),
|
||||||
|
|
||||||
|
(BoolOption('WITH_BF_PNG', 'Use PNG if true', 'true')),
|
||||||
|
('BF_PNG', 'PNG base path', ''),
|
||||||
|
('BF_PNG_INC', 'PNG include path', ''),
|
||||||
|
('BF_PNG_LIB', 'PNG library', ''),
|
||||||
|
('BF_PNG_LIBPATH', 'PNG library path', ''),
|
||||||
|
|
||||||
|
(BoolOption('WITH_BF_TIFF', 'Use TIFF if true', 'true')),
|
||||||
|
('BF_TIFF', 'TIFF base path', ''),
|
||||||
|
('BF_TIFF_INC', 'TIFF include path', ''),
|
||||||
|
('BF_TIFF_LIB', 'TIFF library', ''),
|
||||||
|
('BF_TIFF_LIBPATH', 'TIFF library path', ''),
|
||||||
|
|
||||||
|
(BoolOption('WITH_BF_ZLIB', 'Use ZLib if true', 'true')),
|
||||||
|
('BF_ZLIB', 'ZLib base path', ''),
|
||||||
|
('BF_ZLIB_INC', 'ZLib include path', ''),
|
||||||
|
('BF_ZLIB_LIB', 'ZLib library', ''),
|
||||||
|
('BF_ZLIB_LIBPATH', 'ZLib library path', ''),
|
||||||
|
|
||||||
|
(BoolOption('WITH_BF_GETTEXT', 'Use gettext if true', 'true')),
|
||||||
|
('BF_GETTEXT', 'gettext base path', ''),
|
||||||
|
('BF_GETTEXT_INC', 'gettext include path', ''),
|
||||||
|
('BF_GETTEXT_LIB', 'gettext library', ''),
|
||||||
|
('BF_GETTEXT_LIBPATH', 'gettext library path', ''),
|
||||||
|
|
||||||
|
(BoolOption('WITH_BF_ICONV', 'Use iconv if true', 'true')),
|
||||||
|
('BF_ICONV', 'iconv base path', ''),
|
||||||
|
('BF_ICONV_INC', 'iconv include path', ''),
|
||||||
|
('BF_ICONV_LIB', 'iconv library', ''),
|
||||||
|
('BF_ICONV_LIBPATH', 'iconv library path', ''),
|
||||||
|
|
||||||
|
(BoolOption('WITH_BF_GAMEENGINE', 'Build with gameengine' , 'true')),
|
||||||
|
|
||||||
|
(BoolOption('WITH_BF_ODE', 'Use ODE if true', 'true')),
|
||||||
|
('BF_ODE', 'ODE base path', ''),
|
||||||
|
('BF_ODE_INC', 'ODE include path' , ''),
|
||||||
|
('BF_ODE_LIB', 'ODE library', ''),
|
||||||
|
|
||||||
|
(BoolOption('WITH_BF_BULLET', 'Use Bullet if true', 'true')),
|
||||||
|
('BF_BULLET', 'Bullet base dir', ''),
|
||||||
|
('BF_BULLET_INC', 'Bullet include path', ''),
|
||||||
|
('BF_BULLET_LIB', 'Bullet library', ''),
|
||||||
|
|
||||||
|
('BF_SOLID', 'Solid base dir', '#/extern/solid'),
|
||||||
|
('BF_SOLID_INC', 'Solid include path', ''),
|
||||||
|
##
|
||||||
|
##WITH_BF_NSPR = 'true'
|
||||||
|
##BF_NSPR = $(LCGDIR)/nspr
|
||||||
|
##BF_NSPR_INC = -I$(BF_NSPR)/include -I$(BF_NSPR)/include/nspr
|
||||||
|
##BF_NSPR_LIB =
|
||||||
|
### Uncomment the following line to use Mozilla inplace of netscape
|
||||||
|
##CPPFLAGS += -DMOZ_NOT_NET
|
||||||
|
### Location of MOZILLA/Netscape header files...
|
||||||
|
##BF_MOZILLA = $(LCGDIR)/mozilla
|
||||||
|
##BF_MOZILLA_INC = -I$(BF_MOZILLA)/include/mozilla/nspr -I$(BF_MOZILLA)/include/mozilla -I$(BF_MOZILLA)/include/mozilla/xpcom -I$(BF_MOZILLA)/include/mozilla/idl
|
||||||
|
##BF_MOZILLA_LIB =
|
||||||
|
### Will fall back to look in BF_MOZILLA_INC/nspr and BF_MOZILLA_LIB
|
||||||
|
### if this is not set.
|
||||||
|
##
|
||||||
|
### Be paranoid regarding library creation (do not update archives)
|
||||||
|
##BF_PARANOID = 'true'
|
||||||
|
##
|
||||||
|
### enable freetype2 support for text objects
|
||||||
|
(BoolOption('WITH_BF_FREETYPE', 'Use Freetype if true', 'true')),
|
||||||
|
('BF_FREETYPE', 'Freetype base path', ''),
|
||||||
|
('BF_FREETYPE_INC', 'Freetype include path', ''),
|
||||||
|
('BF_FREETYPE_LIB', 'Freetype library', ''),
|
||||||
|
('BF_FREETYPE_LIBPATH', 'Freetype library path', ''),
|
||||||
|
|
||||||
|
(BoolOption('WITH_BF_QUICKTIME', 'Use QuickTime if true', 'false')),
|
||||||
|
('BF_QUICKTIME', 'QuickTime base path', ''),
|
||||||
|
('BF_QUICKTIME_INC', 'QuickTime include path', ''),
|
||||||
|
('BF_QUICKTIME_LIB', 'QuickTime library', ''),
|
||||||
|
('BF_QUICKTIME_LIBPATH', 'QuickTime library path', ''),
|
||||||
|
|
||||||
|
(BoolOption('WITH_BF_OPENGL', 'Use MESA if true', 'true')),
|
||||||
|
('BF_OPENGL', 'OpenGL base path', ''),
|
||||||
|
('BF_OPENGL_INC', 'OpenGL include path', ''),
|
||||||
|
('BF_OPENGL_LIB', 'OpenGL libraries', ''),
|
||||||
|
('BF_OPENGL_LIBPATH', 'OpenGL library path', ''),
|
||||||
|
('BF_OPENGL_LIB_STATIC', 'OpenGL static libraries', ''),
|
||||||
|
('BF_OPENGL_LINKFLAGS', 'OpenGL link flags', ''),
|
||||||
|
|
||||||
|
(BoolOption('WITH_BF_FTGL', 'Use FTGL if true', 'true')),
|
||||||
|
('BF_FTGL', 'FTGL base path', ''),
|
||||||
|
('BF_FTGL_INC', 'FTGL include path', ''),
|
||||||
|
('BF_FTGL_LIB', 'FTGL libraries', ''),
|
||||||
|
|
||||||
|
(BoolOption('WITH_BF_PLAYER', 'Build blenderplayer if true', 'false')),
|
||||||
|
|
||||||
|
('CFLAGS', 'C-compiler flags', ''),
|
||||||
|
('CCFLAGS', 'C++-compiler flags', ''),
|
||||||
|
('CPPFLAGS', 'Defines', ''),
|
||||||
|
('REL_CFLAGS', 'C release flags', ''),
|
||||||
|
('REL_CCFLAGS', 'C++ release flags', ''),
|
||||||
|
|
||||||
|
('C_WARN', 'C warning flags', ''),
|
||||||
|
('CC_WARN', 'C++ warning flags', ''),
|
||||||
|
|
||||||
|
('LLIBS', 'Platform libs', ''),
|
||||||
|
('PLATFORM_LINKFLAGS', 'Platform linkflags', ''),
|
||||||
|
|
||||||
|
(BoolOption('BF_PROFILE', 'Add profiling information if true', 'false')),
|
||||||
|
('BF_PROFILE_FLAGS', 'Profiling flags', ''),
|
||||||
|
|
||||||
|
(BoolOption('BF_DEBUG', 'Add debug flags if true', 'false')),
|
||||||
|
('BF_DEBUG_FLAGS', 'Debug flags', ''),
|
||||||
|
|
||||||
|
('BF_BUILDDIR', 'Build dir', ''),
|
||||||
|
('BF_INSTALLDIR', 'Installation dir', '')
|
||||||
|
|
||||||
|
) # end of opts.AddOptions()
|
||||||
|
|
||||||
|
return localopts
|
||||||
|
|
189
tools/crossmingw.py
Executable file
189
tools/crossmingw.py
Executable file
@@ -0,0 +1,189 @@
|
|||||||
|
#coments are #JB where this file was altered by Jasen Betts
|
||||||
|
# email: 'n@tres'.join(['jase','hna.com'])
|
||||||
|
|
||||||
|
"""tools.crossmingw
|
||||||
|
|
||||||
|
Tool-specific initialization for MinGW (http://www.mingw.org/)
|
||||||
|
|
||||||
|
There normally shouldn't be any need to import this module directly.
|
||||||
|
It will usually be imported through the generic SCons.Tool.Tool()
|
||||||
|
selection method.
|
||||||
|
|
||||||
|
"""
|
||||||
|
|
||||||
|
#
|
||||||
|
# Copyright (c) 2001, 2002, 2003, 2004 The SCons Foundation
|
||||||
|
#
|
||||||
|
# Permission is hereby granted, free of charge, to any person obtaining
|
||||||
|
# a copy of this software and associated documentation files (the
|
||||||
|
# "Software"), to deal in the Software without restriction, including
|
||||||
|
# without limitation the rights to use, copy, modify, merge, publish,
|
||||||
|
# distribute, sublicense, and/or sell copies of the Software, and to
|
||||||
|
# permit persons to whom the Software is furnished to do so, subject to
|
||||||
|
# the following conditions:
|
||||||
|
#
|
||||||
|
# The above copyright notice and this permission notice shall be included
|
||||||
|
# in all copies or substantial portions of the Software.
|
||||||
|
#
|
||||||
|
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY
|
||||||
|
# KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
|
||||||
|
# WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||||
|
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
||||||
|
# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
||||||
|
# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
||||||
|
# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
#
|
||||||
|
|
||||||
|
__revision__ = "/home/scons/scons/branch.0/branch.96/baseline/src/engine/SCons/Tool/mingw.py 0.96.91.D001 2005/09/08 09:14:36 knight"
|
||||||
|
|
||||||
|
import os
|
||||||
|
import os.path
|
||||||
|
import string
|
||||||
|
|
||||||
|
import SCons.Action
|
||||||
|
import SCons.Builder
|
||||||
|
import SCons.Tool
|
||||||
|
import SCons.Util
|
||||||
|
|
||||||
|
# This is what we search for to find mingw:
|
||||||
|
prefixes = SCons.Util.Split("""
|
||||||
|
mingw32-
|
||||||
|
i386-mingw32msvc-
|
||||||
|
i486-mingw32msvc-
|
||||||
|
i586-mingw32msvc-
|
||||||
|
i686-mingw32msvc-
|
||||||
|
""")
|
||||||
|
|
||||||
|
def find(env):
|
||||||
|
for prefix in prefixes:
|
||||||
|
# First search in the SCons path and then the OS path:
|
||||||
|
if env.WhereIs(prefix + 'gcc') or SCons.Util.WhereIs(prefix + 'gcc'):
|
||||||
|
return prefix
|
||||||
|
|
||||||
|
return ''
|
||||||
|
|
||||||
|
def shlib_generator(target, source, env, for_signature):
|
||||||
|
cmd = SCons.Util.CLVar(['$SHLINK', '$SHLINKFLAGS'])
|
||||||
|
|
||||||
|
dll = env.FindIxes(target, 'SHLIBPREFIX', 'SHLIBSUFFIX')
|
||||||
|
if dll: cmd.extend(['-o', dll])
|
||||||
|
|
||||||
|
cmd.extend(['$SOURCES', '$_LIBDIRFLAGS', '$_LIBFLAGS'])
|
||||||
|
|
||||||
|
implib = env.FindIxes(target, 'LIBPREFIX', 'LIBSUFFIX')
|
||||||
|
if implib: cmd.append('-Wl,--out-implib,'+implib.get_string(for_signature))
|
||||||
|
|
||||||
|
def_target = env.FindIxes(target, 'WIN32DEFPREFIX', 'WIN32DEFSUFFIX')
|
||||||
|
if def_target: cmd.append('-Wl,--output-def,'+def_target.get_string(for_signature))
|
||||||
|
|
||||||
|
return [cmd]
|
||||||
|
|
||||||
|
def shlib_emitter(target, source, env):
|
||||||
|
dll = env.FindIxes(target, 'SHLIBPREFIX', 'SHLIBSUFFIX')
|
||||||
|
no_import_lib = env.get('no_import_lib', 0)
|
||||||
|
|
||||||
|
if not dll:
|
||||||
|
raise SCons.Errors.UserError, "A shared library should have exactly one target with the suffix: %s" % env.subst("$SHLIBSUFFIX")
|
||||||
|
|
||||||
|
if not no_import_lib and \
|
||||||
|
not env.FindIxes(target, 'LIBPREFIX', 'LIBSUFFIX'):
|
||||||
|
|
||||||
|
# Append an import library to the list of targets.
|
||||||
|
target.append(env.ReplaceIxes(dll,
|
||||||
|
'SHLIBPREFIX', 'SHLIBSUFFIX',
|
||||||
|
'LIBPREFIX', 'LIBSUFFIX'))
|
||||||
|
|
||||||
|
# Append a def file target if there isn't already a def file target
|
||||||
|
# or a def file source. There is no option to disable def file
|
||||||
|
# target emitting, because I can't figure out why someone would ever
|
||||||
|
# want to turn it off.
|
||||||
|
def_source = env.FindIxes(source, 'WIN32DEFPREFIX', 'WIN32DEFSUFFIX')
|
||||||
|
def_target = env.FindIxes(target, 'WIN32DEFPREFIX', 'WIN32DEFSUFFIX')
|
||||||
|
if not def_source and not def_target:
|
||||||
|
target.append(env.ReplaceIxes(dll,
|
||||||
|
'SHLIBPREFIX', 'SHLIBSUFFIX',
|
||||||
|
'WIN32DEFPREFIX', 'WIN32DEFSUFFIX'))
|
||||||
|
|
||||||
|
return (target, source)
|
||||||
|
|
||||||
|
#JB """ I'm blindly susbstuting lines from the mingw.py
|
||||||
|
#JB file becase these lines cause python errors here. """
|
||||||
|
#JB shlib_action = SCons.Action.Action(shlib_generator,generator=1)
|
||||||
|
shlib_action = SCons.Action.CommandGenerator(shlib_generator)
|
||||||
|
|
||||||
|
res_action = SCons.Action.Action('$RCCOM', '$RCCOMSTR')
|
||||||
|
|
||||||
|
#JB """ changed for what was in mingw.py """
|
||||||
|
#JB res_builder = SCons.Builder.Builder(action=res_action, suffix='.o',
|
||||||
|
#JB source_scanner=SCons.Tool.SourceFileScanner)
|
||||||
|
|
||||||
|
res_builder = SCons.Builder.Builder(action='$RCCOM', suffix='.o',
|
||||||
|
source_scanner=SCons.Defaults.ObjSourceScan)
|
||||||
|
|
||||||
|
#JB SCons.Tool.SourceFileScanner.add_scanner('.rc', SCons.Defaults.CScan)
|
||||||
|
SCons.Defaults.ObjSourceScan.add_scanner('.rc', SCons.Defaults.CScan)
|
||||||
|
#JB """ no more changes """
|
||||||
|
|
||||||
|
def generate(env):
|
||||||
|
mingw_prefix = find(env)
|
||||||
|
|
||||||
|
if mingw_prefix:
|
||||||
|
dir = os.path.dirname(env.WhereIs(mingw_prefix + 'gcc') or SCons.Util.WhereIs(mingw_prefix + 'gcc'))
|
||||||
|
|
||||||
|
# The mingw bin directory must be added to the path:
|
||||||
|
path = env['ENV'].get('PATH', [])
|
||||||
|
if not path:
|
||||||
|
path = []
|
||||||
|
if SCons.Util.is_String(path):
|
||||||
|
path = string.split(path, os.pathsep)
|
||||||
|
|
||||||
|
env['ENV']['PATH'] = string.join([dir] + path, os.pathsep)
|
||||||
|
|
||||||
|
# Most of mingw is the same as gcc and friends...
|
||||||
|
gnu_tools = ['gcc', 'g++', 'gnulink', 'ar', 'gas']
|
||||||
|
for tool in gnu_tools:
|
||||||
|
SCons.Tool.Tool(tool)(env)
|
||||||
|
|
||||||
|
#... but a few things differ:
|
||||||
|
env['CC'] = mingw_prefix + 'gcc'
|
||||||
|
env['SHCCFLAGS'] = SCons.Util.CLVar('$CCFLAGS')
|
||||||
|
env['CXX'] = mingw_prefix + 'g++'
|
||||||
|
env['SHCXXFLAGS'] = SCons.Util.CLVar('$CXXFLAGS')
|
||||||
|
env['SHLINKFLAGS'] = SCons.Util.CLVar('$LINKFLAGS -shared')
|
||||||
|
env['SHLINKCOM'] = shlib_action
|
||||||
|
env['AR'] = mingw_prefix + 'ar'
|
||||||
|
env['RANLIB'] = mingw_prefix + 'ranlib'
|
||||||
|
env.Append(SHLIBEMITTER = [shlib_emitter])
|
||||||
|
env['LINK'] = mingw_prefix + 'gcc'
|
||||||
|
env['AS'] = mingw_prefix + 'as'
|
||||||
|
env['WIN32DEFPREFIX'] = ''
|
||||||
|
env['WIN32DEFSUFFIX'] = '.def'
|
||||||
|
env['SHOBJSUFFIX'] = '.o'
|
||||||
|
env['STATIC_AND_SHARED_OBJECTS_ARE_THE_SAME'] = 1
|
||||||
|
|
||||||
|
env['RC'] = mingw_prefix + 'windres'
|
||||||
|
env['RCFLAGS'] = SCons.Util.CLVar('')
|
||||||
|
env['RCINCFLAGS'] = '$( ${_concat(RCINCPREFIX, CPPPATH, RCINCSUFFIX, __env__, RDirs, TARGET)} $)'
|
||||||
|
env['RCINCPREFIX'] = '--include-dir '
|
||||||
|
env['RCINCSUFFIX'] = ''
|
||||||
|
env['RCCOM'] = '$RC $RCINCFLAGS $RCINCPREFIX $SOURCE.dir $RCFLAGS -i $SOURCE -o $TARGET'
|
||||||
|
env['BUILDERS']['RES'] = res_builder
|
||||||
|
|
||||||
|
# Some setting from the platform also have to be overridden:
|
||||||
|
env['OBJPREFIX'] = ''
|
||||||
|
env['OBJSUFFIX'] = '.o'
|
||||||
|
env['LIBPREFIX'] = 'lib'
|
||||||
|
env['LIBSUFFIX'] = '.a'
|
||||||
|
env['SHOBJPREFIX'] = '$OBJPREFIX'
|
||||||
|
env['SHOBJSUFFIX'] = '$OBJSUFFIX'
|
||||||
|
env['PROGPREFIX'] = ''
|
||||||
|
env['PROGSUFFIX'] = '.exe'
|
||||||
|
env['LIBPREFIX'] = ''
|
||||||
|
env['LIBSUFFIX'] = '.lib'
|
||||||
|
env['SHLIBPREFIX'] = ''
|
||||||
|
env['SHLIBSUFFIX'] = '.dll'
|
||||||
|
env['LIBPREFIXES'] = [ '$LIBPREFIX' ]
|
||||||
|
env['LIBSUFFIXES'] = [ '$LIBSUFFIX' ]
|
||||||
|
|
||||||
|
def exists(env):
|
||||||
|
return find(env)
|
353
tools/mstoolkit.py
Executable file
353
tools/mstoolkit.py
Executable file
@@ -0,0 +1,353 @@
|
|||||||
|
"""tools.mstoolkit
|
||||||
|
|
||||||
|
Tool-specific initialization for Microsoft Visual C/C++ Toolkit Commandline
|
||||||
|
|
||||||
|
There normally shouldn't be any need to import this module directly.
|
||||||
|
It will usually be imported through the generic SCons.Tool.Tool()
|
||||||
|
selection method.
|
||||||
|
|
||||||
|
"""
|
||||||
|
|
||||||
|
#
|
||||||
|
# Copyright (c) 2004 John Connors
|
||||||
|
#
|
||||||
|
# Permission is hereby granted, free of charge, to any person obtaining
|
||||||
|
# a copy of this software and associated documentation files (the
|
||||||
|
# "Software"), to deal in the Software without restriction, including
|
||||||
|
# without limitation the rights to use, copy, modify, merge, publish,
|
||||||
|
# distribute, sublicense, and/or sell copies of the Software, and to
|
||||||
|
# permit persons to whom the Software is furnished to do so, subject to
|
||||||
|
# the following conditions:
|
||||||
|
#
|
||||||
|
# The above copyright notice and this permission notice shall be included
|
||||||
|
# in all copies or substantial portions of the Software.
|
||||||
|
#
|
||||||
|
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY
|
||||||
|
# KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
|
||||||
|
# WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||||
|
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
||||||
|
# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
||||||
|
# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
||||||
|
# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
#
|
||||||
|
|
||||||
|
|
||||||
|
import os.path
|
||||||
|
import re
|
||||||
|
import string
|
||||||
|
import types
|
||||||
|
|
||||||
|
import SCons.Action
|
||||||
|
import SCons.Builder
|
||||||
|
import SCons.Errors
|
||||||
|
import SCons.Platform.win32
|
||||||
|
import SCons.Tool
|
||||||
|
import SCons.Util
|
||||||
|
import SCons.Warnings
|
||||||
|
|
||||||
|
CSuffixes = ['.c', '.C']
|
||||||
|
CXXSuffixes = ['.cc', '.cpp', '.cxx', '.c++', '.C++']
|
||||||
|
|
||||||
|
def get_msvctoolkit_paths():
|
||||||
|
"""Return a 4-tuple of (INCLUDE, LIB, PATH, TOOLKIT) as the values of those
|
||||||
|
three environment variables that should be set in order to execute
|
||||||
|
the MSVC .NET tools properly, if the information wasn't available
|
||||||
|
from the registry."""
|
||||||
|
|
||||||
|
MSToolkitDir = None
|
||||||
|
paths = {}
|
||||||
|
exe_path = ''
|
||||||
|
lib_path = ''
|
||||||
|
include_path = ''
|
||||||
|
|
||||||
|
# First, we get the shell folder for this user:
|
||||||
|
if not SCons.Util.can_read_reg:
|
||||||
|
raise SCons.Errors.InternalError, "No Windows registry module was found"
|
||||||
|
|
||||||
|
# look for toolkit
|
||||||
|
if os.environ.has_key('VCToolkitInstallDir'):
|
||||||
|
MSToolkitDir = os.path.normpath(os.environ['VCToolkitInstallDir'])
|
||||||
|
else:
|
||||||
|
# last resort -- default install location
|
||||||
|
MSToolkitDir = r'C:\Program Files\Microsoft Visual C++ Toolkit 2003'
|
||||||
|
|
||||||
|
# look for platform sdk
|
||||||
|
if os.environ.has_key('MSSdk'):
|
||||||
|
PlatformSDKDir = os.path.normpath(os.environ['MSSdk'])
|
||||||
|
else:
|
||||||
|
try:
|
||||||
|
PlatformSDKDir = SCons.Util.RegGetValue(SCons.Util.HKEY_LOCAL_MACHINE, r'SOFTWARE\Microsoft\MicrosoftSDK\Directories\Install Dir')[0]
|
||||||
|
PlatformSDKDir = str(PlatformSDKDir)
|
||||||
|
except SCons.Util.RegError:
|
||||||
|
raise SCons.Errors.InternalError, "The Platform SDK directory was not found in the registry or in the `MSSdk` environment variable."
|
||||||
|
|
||||||
|
# look for DX Sdk (expecting DX9)
|
||||||
|
# dxsdk docs have a directory key, look for it, extract path
|
||||||
|
#dxsdkdocs = ""
|
||||||
|
DXsdkDir = ""
|
||||||
|
#try:
|
||||||
|
# dxsdkdocs = SCons.Util.RegGetValue(SCons.Util.HKEY_LOCAL_MACHINE, r'SOFTWARE\Microsoft\DirectX SDK\DX9SDK Doc Path')
|
||||||
|
#except SCons.Util.RegError:
|
||||||
|
# raise SCons.Errors.InternalError, "The DXSDK directory was not found in the registry."
|
||||||
|
if os.environ.has_key('DXSDK_DIR'):
|
||||||
|
DXsdkDir = os.path.normpath(os.environ['DXSDK_DIR'])
|
||||||
|
|
||||||
|
#DXsdkDir = os.path.split(dxsdkdocs[0])[0]
|
||||||
|
DXsdkDir = os.path.split(DXsdkDir)[0]
|
||||||
|
|
||||||
|
include_path = r'%s\include;%s\include;%s\include' % (MSToolkitDir, PlatformSDKDir, DXsdkDir)
|
||||||
|
lib_path = r'%s\lib;%s\lib;%s\lib' % (MSToolkitDir, PlatformSDKDir, DXsdkDir)
|
||||||
|
exe_path = r'%s\bin;%s\bin\win95;%s\bin' % (MSToolkitDir, PlatformSDKDir, PlatformSDKDir)
|
||||||
|
return (include_path, lib_path, exe_path, PlatformSDKDir)
|
||||||
|
|
||||||
|
def validate_vars(env):
|
||||||
|
"""Validate the PDB, PCH, and PCHSTOP construction variables."""
|
||||||
|
if env.has_key('PCH') and env['PCH']:
|
||||||
|
if not env.has_key('PCHSTOP'):
|
||||||
|
raise SCons.Errors.UserError, "The PCHSTOP construction must be defined if PCH is defined."
|
||||||
|
if not SCons.Util.is_String(env['PCHSTOP']):
|
||||||
|
raise SCons.Errors.UserError, "The PCHSTOP construction variable must be a string: %r"%env['PCHSTOP']
|
||||||
|
|
||||||
|
def pch_emitter(target, source, env):
|
||||||
|
"""Sets up the PDB dependencies for a pch file, and adds the object
|
||||||
|
file target."""
|
||||||
|
|
||||||
|
validate_vars(env)
|
||||||
|
|
||||||
|
pch = None
|
||||||
|
obj = None
|
||||||
|
|
||||||
|
for t in target:
|
||||||
|
if SCons.Util.splitext(str(t))[1] == '.pch':
|
||||||
|
pch = t
|
||||||
|
if SCons.Util.splitext(str(t))[1] == '.obj':
|
||||||
|
obj = t
|
||||||
|
|
||||||
|
if not obj:
|
||||||
|
obj = SCons.Util.splitext(str(pch))[0]+'.obj'
|
||||||
|
|
||||||
|
target = [pch, obj] # pch must be first, and obj second for the PCHCOM to work
|
||||||
|
|
||||||
|
if env.has_key('PDB') and env['PDB']:
|
||||||
|
env.SideEffect(env['PDB'], target)
|
||||||
|
env.Precious(env['PDB'])
|
||||||
|
|
||||||
|
return (target, source)
|
||||||
|
|
||||||
|
def object_emitter(target, source, env, parent_emitter):
|
||||||
|
"""Sets up the PDB and PCH dependencies for an object file."""
|
||||||
|
|
||||||
|
validate_vars(env)
|
||||||
|
|
||||||
|
parent_emitter(target, source, env)
|
||||||
|
|
||||||
|
if env.has_key('PDB') and env['PDB']:
|
||||||
|
env.SideEffect(env['PDB'], target)
|
||||||
|
env.Precious(env['PDB'])
|
||||||
|
|
||||||
|
if env.has_key('PCH') and env['PCH']:
|
||||||
|
env.Depends(target, env['PCH'])
|
||||||
|
|
||||||
|
return (target, source)
|
||||||
|
|
||||||
|
def static_object_emitter(target, source, env):
|
||||||
|
return object_emitter(target, source, env,
|
||||||
|
SCons.Defaults.StaticObjectEmitter)
|
||||||
|
|
||||||
|
def shared_object_emitter(target, source, env):
|
||||||
|
return object_emitter(target, source, env,
|
||||||
|
SCons.Defaults.SharedObjectEmitter)
|
||||||
|
|
||||||
|
pch_builder = SCons.Builder.Builder(action='$PCHCOM', suffix='.pch', emitter=pch_emitter)
|
||||||
|
res_builder = SCons.Builder.Builder(action='$RCCOM', suffix='.res')
|
||||||
|
|
||||||
|
def pdbGenerator(env, target, source, for_signature):
|
||||||
|
if target and env.has_key('PDB') and env['PDB']:
|
||||||
|
return ['/PDB:%s'%target[0].File(env['PDB']).get_string(for_signature),
|
||||||
|
'/DEBUG']
|
||||||
|
|
||||||
|
def win32ShlinkTargets(target, source, env, for_signature):
|
||||||
|
listCmd = []
|
||||||
|
dll = env.FindIxes(target, 'SHLIBPREFIX', 'SHLIBSUFFIX')
|
||||||
|
if dll: listCmd.append("/out:%s"%dll.get_string(for_signature))
|
||||||
|
|
||||||
|
implib = env.FindIxes(target, 'LIBPREFIX', 'LIBSUFFIX')
|
||||||
|
if implib: listCmd.append("/implib:%s"%implib.get_string(for_signature))
|
||||||
|
|
||||||
|
return listCmd
|
||||||
|
|
||||||
|
def win32ShlinkSources(target, source, env, for_signature):
|
||||||
|
listCmd = []
|
||||||
|
|
||||||
|
deffile = env.FindIxes(source, "WIN32DEFPREFIX", "WIN32DEFSUFFIX")
|
||||||
|
for src in source:
|
||||||
|
if src == deffile:
|
||||||
|
# Treat this source as a .def file.
|
||||||
|
listCmd.append("/def:%s" % src.get_string(for_signature))
|
||||||
|
else:
|
||||||
|
# Just treat it as a generic source file.
|
||||||
|
listCmd.append(src)
|
||||||
|
return listCmd
|
||||||
|
|
||||||
|
def win32LibEmitter(target, source, env):
|
||||||
|
# SCons.Tool.msvc.validate_vars(env)
|
||||||
|
|
||||||
|
dll = env.FindIxes(target, "SHLIBPREFIX", "SHLIBSUFFIX")
|
||||||
|
no_import_lib = env.get('no_import_lib', 0)
|
||||||
|
|
||||||
|
if not dll:
|
||||||
|
raise SCons.Errors.UserError, "A shared library should have exactly one target with the suffix: %s" % env.subst("$SHLIBSUFFIX")
|
||||||
|
|
||||||
|
if env.get("WIN32_INSERT_DEF", 0) and \
|
||||||
|
not env.FindIxes(source, "WIN32DEFPREFIX", "WIN32DEFSUFFIX"):
|
||||||
|
|
||||||
|
# append a def file to the list of sources
|
||||||
|
source.append(env.ReplaceIxes(dll,
|
||||||
|
"SHLIBPREFIX", "SHLIBSUFFIX",
|
||||||
|
"WIN32DEFPREFIX", "WIN32DEFSUFFIX"))
|
||||||
|
|
||||||
|
if env.has_key('PDB') and env['PDB']:
|
||||||
|
env.SideEffect(env['PDB'], target)
|
||||||
|
env.Precious(env['PDB'])
|
||||||
|
|
||||||
|
if not no_import_lib and \
|
||||||
|
not env.FindIxes(target, "LIBPREFIX", "LIBSUFFIX"):
|
||||||
|
# Append an import library to the list of targets.
|
||||||
|
target.append(env.ReplaceIxes(dll,
|
||||||
|
"SHLIBPREFIX", "SHLIBSUFFIX",
|
||||||
|
"LIBPREFIX", "LIBSUFFIX"))
|
||||||
|
# and .exp file is created if there are exports from a DLL
|
||||||
|
target.append(env.ReplaceIxes(dll,
|
||||||
|
"SHLIBPREFIX", "SHLIBSUFFIX",
|
||||||
|
"WIN32EXPPREFIX", "WIN32EXPSUFFIX"))
|
||||||
|
|
||||||
|
return (target, source)
|
||||||
|
|
||||||
|
def prog_emitter(target, source, env):
|
||||||
|
#SCons.Tool.msvc.validate_vars(env)
|
||||||
|
|
||||||
|
if env.has_key('PDB') and env['PDB']:
|
||||||
|
env.SideEffect(env['PDB'], target)
|
||||||
|
env.Precious(env['PDB'])
|
||||||
|
|
||||||
|
return (target,source)
|
||||||
|
|
||||||
|
def RegServerFunc(target, source, env):
|
||||||
|
if env.has_key('register') and env['register']:
|
||||||
|
ret = regServerAction([target[0]], [source[0]], env)
|
||||||
|
if ret:
|
||||||
|
raise SCons.Errors.UserError, "Unable to register %s" % target[0]
|
||||||
|
else:
|
||||||
|
print "Registered %s sucessfully" % target[0]
|
||||||
|
return ret
|
||||||
|
return 0
|
||||||
|
|
||||||
|
regServerAction = SCons.Action.Action("$REGSVRCOM")
|
||||||
|
regServerCheck = SCons.Action.Action(RegServerFunc, None)
|
||||||
|
shlibLinkAction = SCons.Action.Action('${TEMPFILE("$SHLINK $SHLINKFLAGS $_SHLINK_TARGETS $( $_LIBDIRFLAGS $) $_LIBFLAGS $_PDB $_SHLINK_SOURCES")}')
|
||||||
|
compositeLinkAction = shlibLinkAction + regServerCheck
|
||||||
|
|
||||||
|
def generate(env):
|
||||||
|
"""Add Builders and construction variables for MSVC++ to an Environment."""
|
||||||
|
static_obj, shared_obj = SCons.Tool.createObjBuilders(env)
|
||||||
|
|
||||||
|
for suffix in CSuffixes:
|
||||||
|
static_obj.add_action(suffix, SCons.Defaults.CAction)
|
||||||
|
shared_obj.add_action(suffix, SCons.Defaults.ShCAction)
|
||||||
|
|
||||||
|
for suffix in CXXSuffixes:
|
||||||
|
static_obj.add_action(suffix, SCons.Defaults.CXXAction)
|
||||||
|
shared_obj.add_action(suffix, SCons.Defaults.ShCXXAction)
|
||||||
|
|
||||||
|
SCons.Tool.createStaticLibBuilder(env)
|
||||||
|
SCons.Tool.createSharedLibBuilder(env)
|
||||||
|
SCons.Tool.createProgBuilder(env)
|
||||||
|
|
||||||
|
env['CCPDBFLAGS'] = SCons.Util.CLVar(['${(PDB and "/Zi /Fd%s"%File(PDB)) or ""}'])
|
||||||
|
env['CCPCHFLAGS'] = SCons.Util.CLVar(['${(PCH and "/Yu%s /Fp%s"%(PCHSTOP or "",File(PCH))) or ""}'])
|
||||||
|
env['CCCOMFLAGS'] = '$CPPFLAGS $_CPPDEFFLAGS $_CPPINCFLAGS /c $SOURCES /Fo$TARGET $CCPCHFLAGS $CCPDBFLAGS'
|
||||||
|
env['CC'] = 'cl'
|
||||||
|
env['CCFLAGS'] = SCons.Util.CLVar('/nologo')
|
||||||
|
env['CCCOM'] = '$CC $CCFLAGS $CCCOMFLAGS'
|
||||||
|
env['SHCC'] = '$CC'
|
||||||
|
env['SHCCFLAGS'] = SCons.Util.CLVar('$CCFLAGS')
|
||||||
|
env['SHCCCOM'] = '$SHCC $SHCCFLAGS $CCCOMFLAGS'
|
||||||
|
env['CXX'] = '$CC'
|
||||||
|
env['CXXFLAGS'] = SCons.Util.CLVar('$CCFLAGS $( /TP $)')
|
||||||
|
env['CXXCOM'] = '$CXX $CXXFLAGS $CCCOMFLAGS'
|
||||||
|
env['SHCXX'] = '$CXX'
|
||||||
|
env['SHCXXFLAGS'] = SCons.Util.CLVar('$CXXFLAGS')
|
||||||
|
env['SHCXXCOM'] = '$SHCXX $SHCXXFLAGS $CCCOMFLAGS'
|
||||||
|
env['CPPDEFPREFIX'] = '/D'
|
||||||
|
env['CPPDEFSUFFIX'] = ''
|
||||||
|
env['INCPREFIX'] = '/I'
|
||||||
|
env['INCSUFFIX'] = ''
|
||||||
|
env['OBJEMITTER'] = static_object_emitter
|
||||||
|
env['SHOBJEMITTER'] = shared_object_emitter
|
||||||
|
env['STATIC_AND_SHARED_OBJECTS_ARE_THE_SAME'] = 1
|
||||||
|
|
||||||
|
env['RC'] = 'rc'
|
||||||
|
env['RCFLAGS'] = SCons.Util.CLVar('')
|
||||||
|
env['RCCOM'] = '$RC $_CPPDEFFLAGS $_CPPINCFLAGS $RCFLAGS /fo$TARGET $SOURCES'
|
||||||
|
CScan = env.get_scanner('.c')
|
||||||
|
if CScan:
|
||||||
|
CScan.add_skey('.rc')
|
||||||
|
env['BUILDERS']['RES'] = res_builder
|
||||||
|
|
||||||
|
include_path, lib_path, exe_path, sdk_path = get_msvctoolkit_paths()
|
||||||
|
env.PrependENVPath('INCLUDE', include_path)
|
||||||
|
env.PrependENVPath('LIB', lib_path)
|
||||||
|
env.PrependENVPath('PATH', exe_path)
|
||||||
|
|
||||||
|
env['ENV']['CPU'] = 'i386'
|
||||||
|
env['ENV']['MSSDK'] = sdk_path
|
||||||
|
env['ENV']['BkOffice'] = sdk_path
|
||||||
|
env['ENV']['Basemake'] = sdk_path + "\\Include\\BKOffice.Mak"
|
||||||
|
env['ENV']['INETSDK'] = sdk_path
|
||||||
|
env['ENV']['MSSDK'] = sdk_path
|
||||||
|
env['ENV']['MSTOOLS'] = sdk_path
|
||||||
|
env['ENV']['TARGETOS'] = 'WINNT'
|
||||||
|
env['ENV']['APPVER'] = '5.0'
|
||||||
|
|
||||||
|
env['CFILESUFFIX'] = '.c'
|
||||||
|
env['CXXFILESUFFIX'] = '.cc'
|
||||||
|
|
||||||
|
env['PCHCOM'] = '$CXX $CXXFLAGS $CPPFLAGS $_CPPDEFFLAGS $_CPPINCFLAGS /c $SOURCES /Fo${TARGETS[1]} /Yc$PCHSTOP /Fp${TARGETS[0]} $CCPDBFLAGS'
|
||||||
|
env['BUILDERS']['PCH'] = pch_builder
|
||||||
|
|
||||||
|
env['AR'] = 'lib.exe' #'"' +sdk_path + '\\bin\\Win64\\lib.exe"'
|
||||||
|
env['ARFLAGS'] = SCons.Util.CLVar('/nologo')
|
||||||
|
env['ARCOM'] = "${TEMPFILE('$AR $ARFLAGS /OUT:$TARGET $SOURCES')}"
|
||||||
|
|
||||||
|
env['SHLINK'] = '$LINK'
|
||||||
|
env['SHLINKFLAGS'] = SCons.Util.CLVar('$LINKFLAGS /dll')
|
||||||
|
env['_SHLINK_TARGETS'] = win32ShlinkTargets
|
||||||
|
env['_SHLINK_SOURCES'] = win32ShlinkSources
|
||||||
|
env['SHLINKCOM'] = compositeLinkAction
|
||||||
|
env['SHLIBEMITTER']= win32LibEmitter
|
||||||
|
env['LINK'] = 'link.exe' #'"' +sdk_path + '\\bin\\Win64\\' + 'link.exe"'
|
||||||
|
env['LINKFLAGS'] = SCons.Util.CLVar('/nologo')
|
||||||
|
env['_PDB'] = pdbGenerator
|
||||||
|
env["TEMPFILE"] = SCons.Platform.win32.TempFileMunge
|
||||||
|
env['LINKCOM'] = '${TEMPFILE("$LINK $LINKFLAGS /OUT:$TARGET $( $_LIBDIRFLAGS $) $_LIBFLAGS $_PDB $SOURCES")}'
|
||||||
|
env['PROGEMITTER'] = prog_emitter
|
||||||
|
env['LIBDIRPREFIX']='/LIBPATH:'
|
||||||
|
env['LIBDIRSUFFIX']=''
|
||||||
|
env['LIBLINKPREFIX']=''
|
||||||
|
env['LIBLINKSUFFIX']='$LIBSUFFIX'
|
||||||
|
|
||||||
|
env['WIN32DEFPREFIX'] = ''
|
||||||
|
env['WIN32DEFSUFFIX'] = '.def'
|
||||||
|
env['WIN32_INSERT_DEF'] = 0
|
||||||
|
|
||||||
|
env['WIN32EXPPREFIX'] = ''
|
||||||
|
env['WIN32EXPSUFFIX'] = '.exp'
|
||||||
|
|
||||||
|
env['REGSVRACTION'] = regServerCheck
|
||||||
|
env['REGSVR'] = os.path.join(SCons.Platform.win32.get_system_root(),'System32','regsvr32')
|
||||||
|
env['REGSVRFLAGS'] = '/s '
|
||||||
|
env['REGSVRCOM'] = '$REGSVR $REGSVRFLAGS $TARGET'
|
||||||
|
|
||||||
|
|
||||||
|
def exists(env):
|
||||||
|
return env.Detect('cl')
|
Reference in New Issue
Block a user