diff options
Diffstat (limited to 'tools/Blender.py')
-rw-r--r-- | tools/Blender.py | 26 |
1 files changed, 21 insertions, 5 deletions
diff --git a/tools/Blender.py b/tools/Blender.py index 894922032fa..b192a591aa1 100644 --- a/tools/Blender.py +++ b/tools/Blender.py @@ -99,7 +99,10 @@ def create_blender_liblist(lenv = None, libtype = None): sortlist.sort() for sk in sortlist: v = curlib[sk] - lst.append('#' + root_build_dir + 'lib/'+lenv['LIBPREFIX'] + v + lenv['LIBSUFFIX']) + target = root_build_dir + 'lib/'+lenv['LIBPREFIX'] + v + lenv['LIBSUFFIX'] + if not (root_build_dir[0]==os.sep or root_build_dir[1]==':'): + target = '#'+target + lst.append(target) return lst @@ -324,7 +327,6 @@ def AppIt(target=None, source=None, env=None): if b=='verse': print bc.OKBLUE+"no bundle for verse"+bc.ENDC return 0 - sourcedir = bldroot + '/source/darwin/%s.app'%binary sourceinfo = bldroot + "/source/darwin/%s.app/Contents/Info.plist"%binary @@ -396,6 +398,7 @@ class BlenderEnvironment(SConsEnvironment): print bc.HEADER+'Configuring resource '+bc.ENDC+bc.OKGREEN+libname+bc.ENDC lenv = self.Clone() res = lenv.RES('#'+root_build_dir+'lib/'+libname, source) + SConsEnvironment.Default(self, res) resources.append(res) @@ -403,8 +406,15 @@ class BlenderEnvironment(SConsEnvironment): if not self or not libname or not sources: print bc.FAIL+'Cannot continue. Missing argument for BuildBlenderLib '+libname+bc.ENDC self.Exit() - if libname in quickie or len(quickie)==0: - if libname in quickdebug: + + def list_substring(quickie, libname): + for q in quickie: + if libname.find(q) != -1: + return True + return False + + if list_substring(quickie, libname) or len(quickie)==0: + if list_substring(quickdebug, libname): print bc.HEADER+'Configuring library '+bc.ENDC+bc.OKGREEN+libname +bc.ENDC+bc.OKBLUE+ " (debug mode)" + bc.ENDC else: print bc.HEADER+'Configuring library '+bc.ENDC+bc.OKGREEN+libname + bc.ENDC @@ -436,7 +446,11 @@ class BlenderEnvironment(SConsEnvironment): lenv.Append(CFLAGS = lenv['C_WARN']) lenv.Append(CCFLAGS = lenv['CC_WARN']) lenv.Append(CXXFLAGS = lenv['CXX_WARN']) - lib = lenv.Library(target= '#'+root_build_dir+'lib/'+libname, source=sources) + + targetdir = root_build_dir+'lib/' + libname + if not (root_build_dir[0]==os.sep or root_build_dir[1]==':'): + targetdir = '#'+targetdir + lib = lenv.Library(target= targetdir, 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 @@ -468,6 +482,8 @@ class BlenderEnvironment(SConsEnvironment): if lenv['BF_PROFILE']: lenv.Append(LINKFLAGS = lenv['BF_PROFILE_FLAGS']) lenv.Append(CPPPATH=includes) + if root_build_dir[0]==os.sep or root_build_dir[1]==':': + lenv.Append(LIBPATH=root_build_dir + '/lib') lenv.Append(LIBPATH=libpath) lenv.Append(LIBS=libs) if lenv['WITH_BF_QUICKTIME']: |