[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [36664] trunk/blender/build_files/scons: Option to use jemalloc when building with scons under linux.

Sergey Sharybin g.ulairi at gmail.com
Fri May 13 14:08:35 CEST 2011


Revision: 36664
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=36664
Author:   nazgul
Date:     2011-05-13 12:08:34 +0000 (Fri, 13 May 2011)
Log Message:
-----------
Option to use jemalloc when building with scons under linux.
Disabled by default.

Modified Paths:
--------------
    trunk/blender/build_files/scons/config/linux2-config.py
    trunk/blender/build_files/scons/tools/Blender.py
    trunk/blender/build_files/scons/tools/btools.py

Modified: trunk/blender/build_files/scons/config/linux2-config.py
===================================================================
--- trunk/blender/build_files/scons/config/linux2-config.py	2011-05-13 11:34:55 UTC (rev 36663)
+++ trunk/blender/build_files/scons/config/linux2-config.py	2011-05-13 12:08:34 UTC (rev 36664)
@@ -178,6 +178,14 @@
 BF_EXPAT_LIB = 'expat'
 BF_EXPAT_LIBPATH = '/usr/lib'
 
+WITH_BF_JEMALLOC = False
+WITH_BF_STATICJEMALLOC = False
+BF_JEMALLOC = '/usr'
+BF_JEMALLOC_INC = '${BF_JEMALLOC}/include'
+BF_JEMALLOC_LIBPATH = '${BF_JEMALLOC}/lib'
+BF_JEMALLOC_LIB = 'jemalloc'
+BF_JEMALLOC_LIB_STATIC = '${BF_JEMALLOC_LIBPATH}/libjemalloc.a'
+
 WITH_BF_OPENMP = True
 
 #Ray trace optimization

Modified: trunk/blender/build_files/scons/tools/Blender.py
===================================================================
--- trunk/blender/build_files/scons/tools/Blender.py	2011-05-13 11:34:55 UTC (rev 36663)
+++ trunk/blender/build_files/scons/tools/Blender.py	2011-05-13 12:08:34 UTC (rev 36664)
@@ -203,6 +203,11 @@
     if lenv['OURPLATFORM'] not in ('win32-vc', 'win32-mingw', 'win64-vc', 'linuxcross'):
         libincs.append('/usr/lib')
 
+    if lenv['WITH_BF_JEMALLOC']:
+        libincs += Split(lenv['BF_JEMALLOC_LIBPATH'])
+        if lenv['WITH_BF_STATICJEMALLOC']:
+            statlibs += Split(lenv['BF_JEMALLOC_LIB_STATIC'])
+
     return statlibs, libincs
 
 def setup_syslibs(lenv):
@@ -263,6 +268,9 @@
     if not lenv['WITH_BF_STATICLIBSAMPLERATE']:
         syslibs += Split(lenv['BF_LIBSAMPLERATE_LIB'])
 
+    if lenv['WITH_BF_JEMALLOC']:
+        if not lenv['WITH_BF_STATICJEMALLOC']:
+            syslibs += Split(lenv['BF_JEMALLOC_LIB'])
 
     syslibs += lenv['LLIBS']
 

Modified: trunk/blender/build_files/scons/tools/btools.py
===================================================================
--- trunk/blender/build_files/scons/tools/btools.py	2011-05-13 11:34:55 UTC (rev 36663)
+++ trunk/blender/build_files/scons/tools/btools.py	2011-05-13 12:08:34 UTC (rev 36664)
@@ -134,7 +134,8 @@
             'WITH_BF_RAYOPTIMIZATION',
             'BF_RAYOPTIMIZATION_SSE_FLAGS',
             'BF_NO_ELBEEM',
-            'WITH_BF_CXX_GUARDEDALLOC'
+            'WITH_BF_CXX_GUARDEDALLOC',
+            'WITH_BF_JEMALLOC', 'WITH_BF_STATICJEMALLOC', 'BF_JEMALLOC', 'BF_JEMALLOC_INC', 'BF_JEMALLOC_LIBPATH', 'BF_JEMALLOC_LIB', 'BF_JEMALLOC_LIB_STATIC'
             ]
     
     # Have options here that scons expects to be lists
@@ -429,6 +430,14 @@
         ('BF_EXPAT_LIB', 'Expat library', ''),
         ('BF_EXPAT_LIBPATH', 'Expat library path', ''),
         
+        (BoolVariable('WITH_BF_JEMALLOC', 'Use jemalloc if true', False)),
+        (BoolVariable('WITH_BF_STATICJEMALLOC', 'Staticly link to jemalloc', False)),
+        ('BF_JEMALLOC', 'jemalloc base path', ''),
+        ('BF_JEMALLOC_INC', 'jemalloc include path', ''),
+        ('BF_JEMALLOC_LIB', 'jemalloc library', ''),
+        ('BF_JEMALLOC_LIBPATH', 'jemalloc library path', ''),
+        ('BF_JEMALLOC_LIB_STATIC', 'jemalloc static library', ''),
+
         (BoolVariable('WITH_BF_PLAYER', 'Build blenderplayer if true', False)),
         (BoolVariable('WITH_BF_NOBLENDER', 'Do not build blender if true', False)),
 




More information about the Bf-blender-cvs mailing list