[Bf-blender-cvs] [bd65b12] openvdb: Support compilation with SCons (only tested on Linux).

Kévin Dietrich noreply at git.blender.org
Fri Jun 5 14:06:53 CEST 2015


Commit: bd65b1239804f2afba7b75454214d65a31dcd7f8
Author: Kévin Dietrich
Date:   Mon May 18 02:18:06 2015 +0200
Branches: openvdb
https://developer.blender.org/rBbd65b1239804f2afba7b75454214d65a31dcd7f8

Support compilation with SCons (only tested on Linux).

===================================================================

M	SConstruct
M	build_files/scons/config/darwin-config.py
M	build_files/scons/config/linux-config.py
M	build_files/scons/config/win32-mingw-config.py
M	build_files/scons/config/win32-vc-config.py
M	build_files/scons/config/win64-mingw-config.py
M	build_files/scons/config/win64-vc-config.py
M	build_files/scons/tools/Blender.py
M	build_files/scons/tools/btools.py
M	intern/cycles/SConscript
M	source/blender/SConscript
M	source/blender/blenkernel/SConscript
M	source/blender/nodes/SConscript
A	source/blender/openvdb/SConscript
M	source/blender/python/SConscript

===================================================================

diff --git a/SConstruct b/SConstruct
index 6cf3874..deb6d45 100644
--- a/SConstruct
+++ b/SConstruct
@@ -270,6 +270,7 @@ if 'blenderlite' in B.targets:
     target_env_defs['WITH_BF_3DMOUSE'] = False
     target_env_defs['WITH_BF_LIBMV'] = False
     target_env_defs['WITH_BF_FREESTYLE'] = False
+    target_env_defs['WITH_BF_OPENVDB'] = False
 
     # Merge blenderlite, let command line to override
     for k,v in target_env_defs.iteritems():
diff --git a/build_files/scons/config/darwin-config.py b/build_files/scons/config/darwin-config.py
index 1fb6d64..f3d5cea 100644
--- a/build_files/scons/config/darwin-config.py
+++ b/build_files/scons/config/darwin-config.py
@@ -203,6 +203,12 @@ BF_BOOST_LIB = 'boost_date_time-mt boost_filesystem-mt boost_regex-mt boost_syst
 BF_BOOST_LIB_INTERNATIONAL = 'boost_locale-mt'
 BF_BOOST_LIBPATH = '${BF_BOOST}/lib'
 
+WITH_BF_OPENVDB = True
+BF_OPENVDB = '/openvdb'
+BF_OPENVDB_INC = '${BF_OPENVDB}/include'
+BF_OPENVDB_LIB = 'openvdb tbb'
+BF_OPENVDB_LIB_PATH = '${BF_OPENVDB}/lib'
+
 WITH_BF_CYCLES_CUDA_BINARIES = False
 BF_CYCLES_CUDA_NVCC = '/usr/local/cuda/bin/nvcc'
 BF_CYCLES_CUDA_BINARIES_ARCH = ['sm_20', 'sm_21', 'sm_30', 'sm_35', 'sm_50', 'sm_52']
diff --git a/build_files/scons/config/linux-config.py b/build_files/scons/config/linux-config.py
index 6353120..c15af49 100644
--- a/build_files/scons/config/linux-config.py
+++ b/build_files/scons/config/linux-config.py
@@ -202,6 +202,13 @@ BF_BOOST_LIB_STATIC = '${BF_BOOST_LIBPATH}/libboost_filesystem.a ${BF_BOOST_LIBP
 BF_BOOST_LIB_INTERNATIONAL = 'boost_locale'
 BF_BOOST_LIBPATH = '${BF_BOOST}/lib'
 
+WITH_BF_OPENVDB = True
+BF_OPENVDB = '/usr'
+BF_OPENVDB_INC = '${BF_OPENVDB}/include'
+BF_OPENVDB_LIB = 'openvdb tbb'
+BF_OPENVDB_LIB_PATH = '${BF_OPENVDB}/lib'
+BF_OPENVDB_LIB_STATIC = '${BF_OPENVDB}/lib/libopenvdb.so'
+
 WITH_BF_CYCLES = WITH_BF_OIIO and WITH_BF_BOOST
 
 WITH_BF_CYCLES_CUDA_BINARIES = False
diff --git a/build_files/scons/config/win32-mingw-config.py b/build_files/scons/config/win32-mingw-config.py
index 87c35e1..06ce2d6 100644
--- a/build_files/scons/config/win32-mingw-config.py
+++ b/build_files/scons/config/win32-mingw-config.py
@@ -166,6 +166,12 @@ BF_BOOST_LIB = 'boost_date_time-mgw46-mt-s-1_49 boost_filesystem-mgw46-mt-s-1_49
 BF_BOOST_LIB_INTERNATIONAL = 'boost_locale-mgw46-mt-s-1_49'
 BF_BOOST_LIBPATH = '${BF_BOOST}/lib'
 
+WITH_BF_OPENVDB = True
+BF_OPENVDB = LIBDIR + '/openvdb'
+BF_OPENVDB_INC = '${BF_OPENVDB}/include'
+BF_OPENVDB_LIB = 'openvdb tbb'
+BF_OPENVDB_LIB_PATH = '${BF_OPENVDB}/lib'
+
 #Ray trace optimization
 WITH_BF_RAYOPTIMIZATION = True
 BF_RAYOPTIMIZATION_SSE_FLAGS = ['-msse']
diff --git a/build_files/scons/config/win32-vc-config.py b/build_files/scons/config/win32-vc-config.py
index 9f3b344..795be4f 100644
--- a/build_files/scons/config/win32-vc-config.py
+++ b/build_files/scons/config/win32-vc-config.py
@@ -196,6 +196,12 @@ BF_BOOST_LIB = 'libboost_date_time-vc120-mt-s-1_55 libboost_filesystem-vc120-mt-
 BF_BOOST_LIB_INTERNATIONAL = ' libboost_locale-vc120-mt-s-1_55'
 BF_BOOST_LIBPATH = '${BF_BOOST}/lib'
 
+WITH_BF_OPENVDB = True
+BF_OPENVDB = '${LIBDIR}/openvdb'
+BF_OPENVDB_INC = '${BF_OPENVDB}/include'
+BF_OPENVDB_LIB = 'openvdb tbb'
+BF_OPENVDB_LIB_PATH = '${BF_OPENVDB}/lib'
+
 #CUDA
 WITH_BF_CYCLES_CUDA_BINARIES = False
 #BF_CYCLES_CUDA_NVCC = "" # Path to the nvidia compiler
diff --git a/build_files/scons/config/win64-mingw-config.py b/build_files/scons/config/win64-mingw-config.py
index 57eaae8..f2f1774 100644
--- a/build_files/scons/config/win64-mingw-config.py
+++ b/build_files/scons/config/win64-mingw-config.py
@@ -165,6 +165,12 @@ BF_BOOST_LIB = 'boost_date_time-mgw47-mt-s-1_49 boost_date_time-mgw47-mt-sd-1_49
 BF_BOOST_LIB_INTERNATIONAL = ' boost_locale-mgw47-mt-s-1_49 boost_locale-mgw47-mt-sd-1_49'
 BF_BOOST_LIBPATH = '${BF_BOOST}/lib'
 
+WITH_BF_OPENVDB = True
+BF_OPENVDB = LIBDIR + '/openvdb'
+BF_OPENVDB_INC = '${BF_OPENVDB}/include'
+BF_OPENVDB_LIB = 'openvdb tbb'
+BF_OPENVDB_LIB_PATH = '${BF_OPENVDB}/lib'
+
 #Ray trace optimization
 WITH_BF_RAYOPTIMIZATION = True
 BF_RAYOPTIMIZATION_SSE_FLAGS = ['-mmmx', '-msse', '-msse2']
diff --git a/build_files/scons/config/win64-vc-config.py b/build_files/scons/config/win64-vc-config.py
index 9ac0173..629ed80 100644
--- a/build_files/scons/config/win64-vc-config.py
+++ b/build_files/scons/config/win64-vc-config.py
@@ -199,6 +199,12 @@ BF_BOOST_LIB = 'libboost_date_time-vc120-mt-s-1_55 libboost_filesystem-vc120-mt-
 BF_BOOST_LIB_INTERNATIONAL = ' libboost_locale-vc120-mt-s-1_55'
 BF_BOOST_LIBPATH = '${BF_BOOST}/lib'
 
+WITH_BF_OPENVDB = True
+BF_OPENVDB = '${LIBDIR}/openvdb'
+BF_OPENVDB_INC = '${BF_OPENVDB}/include'
+BF_OPENVDB_LIB = 'openvdb tbb'
+BF_OPENVDB_LIB_PATH = '${BF_OPENVDB}/lib'
+
 #CUDA
 WITH_BF_CYCLES_CUDA_BINARIES = False
 #BF_CYCLES_CUDA_NVCC = "" # Path to the nvidia compiler
diff --git a/build_files/scons/tools/Blender.py b/build_files/scons/tools/Blender.py
index ecf3475..6049f2a 100644
--- a/build_files/scons/tools/Blender.py
+++ b/build_files/scons/tools/Blender.py
@@ -216,6 +216,11 @@ def setup_staticlibs(lenv):
         if lenv['WITH_BF_STATICOCIO']:
             statlibs += Split(lenv['BF_OCIO_LIB_STATIC'])
 
+    if lenv['WITH_BF_OPENVDB']:
+        libincs += Split(lenv['BF_OPENVDB_LIB_PATH'])
+        if lenv['WITH_BF_STATICOPENVDB']:
+            statlibs += Split(lenv['BF_OPENVDB_LIB_STATIC'])
+
     if lenv['WITH_BF_CYCLES_OSL']:
         libincs += Split(lenv['BF_OSL_LIBPATH'])
         if lenv['WITH_BF_STATICOSL']:
@@ -283,6 +288,8 @@ def setup_syslibs(lenv):
         if not lenv['WITH_BF_STATICOCIO']:
             syslibs += Split(lenv['BF_OCIO_LIB'])
 
+    if lenv['WITH_BF_OPENVDB'] and not lenv ['WITH_BF_STATICOPENVDB']:
+        syslibs += Split(lenv['BF_OPENVDB_LIB'])
     if lenv['WITH_BF_OPENEXR'] and not lenv['WITH_BF_STATICOPENEXR']:
         syslibs += Split(lenv['BF_OPENEXR_LIB'])
     if lenv['WITH_BF_ZLIB'] and not lenv['WITH_BF_STATICZLIB']:
diff --git a/build_files/scons/tools/btools.py b/build_files/scons/tools/btools.py
index 76450fb..c2f0f1b 100644
--- a/build_files/scons/tools/btools.py
+++ b/build_files/scons/tools/btools.py
@@ -180,6 +180,7 @@ def validate_arguments(args, bc):
             'WITH_BF_OIIO', 'WITH_BF_STATICOIIO', 'BF_OIIO', 'BF_OIIO_INC', 'BF_OIIO_LIB', 'BF_OIIO_LIB_STATIC', 'BF_OIIO_LIBPATH',
             'WITH_BF_OCIO', 'WITH_BF_STATICOCIO', 'BF_OCIO', 'BF_OCIO_INC', 'BF_OCIO_LIB', 'BF_OCIO_LIB_STATIC', 'BF_OCIO_LIBPATH',
             'WITH_BF_BOOST', 'WITH_BF_STATICBOOST', 'BF_BOOST', 'BF_BOOST_INC', 'BF_BOOST_LIB', 'BF_BOOST_LIB_INTERNATIONAL', 'BF_BOOST_LIB_STATIC', 'BF_BOOST_LIBPATH',
+            'WITH_BF_OPENVDB', 'WITH_BF_STATICOPENVDB', 'BF_OPENVDB', 'BF_OPENVDB_INC', 'BF_OPENVDB_LIB', 'BF_OPENVDB_LIB_STATIC', 'BF_OPENVDB_LIB_PATH',
             'WITH_BF_LIBMV', 'WITH_BF_LIBMV_SCHUR_SPECIALIZATIONS',
             'WITH_BF_CYCLES_OSL', 'WITH_BF_STATICOSL', 'BF_OSL', 'BF_OSL_INC', 'BF_OSL_LIB', 'BF_OSL_LIBPATH', 'BF_OSL_LIB_STATIC', 'BF_OSL_COMPILER',
             'WITH_BF_LLVM', 'WITH_BF_STATICLLVM', 'BF_LLVM', 'BF_LLVM_LIB', 'BF_LLVM_LIBPATH', 'BF_LLVM_LIB_STATIC', 'BF_PROGRAM_LINKFLAGS'
@@ -627,6 +628,14 @@ def read_opts(env, cfg, args):
         ('BF_OCIO_LIBPATH', 'OCIO library path', ''),
         ('BF_OCIO_LIB_STATIC', 'OCIO static library', ''),
 
+        (BoolVariable('WITH_BF_OPENVDB', 'Build with OpenVDB', False)),
+        (BoolVariable('WITH_BF_STATICOPENVDB', 'Staticly link to OpenVDB', False)),
+        ('BF_OPENVDB', 'OpenVDB root path', ''),
+        ('BF_OPENVDB_INC', 'OpenVDB include path', ''),
+        ('BF_OPENVDB_LIB', 'OpenVDB library', ''),
+        ('BF_OPENVDB_LIB_PATH', 'OpenVDB library path', ''),
+        ('BF_OPENVDB_LIB_STATIC', 'OpenVDB static library', ''),
+
         (BoolVariable('WITH_BF_BOOST', 'Build with Boost', False)),
         (BoolVariable('WITH_BF_STATICBOOST', 'Staticly link to boost', False)),
         ('BF_BOOST', 'Boost root path', ''),
diff --git a/intern/cycles/SConscript b/intern/cycles/SConscript
index 75bb5bb..68c41b6 100644
--- a/intern/cycles/SConscript
+++ b/intern/cycles/SConscript
@@ -71,6 +71,10 @@ if env['WITH_BF_CYCLES_OSL']:
     defs.append('OSL_STATIC_LIBRARY')
     incs.append(cycles['BF_OSL_INC'])
 
+if env['WITH_BF_OPENVDB']:
+    defs.append('WITH_OPENVDB')
+    incs.append(env['BF_OPENVDB_INC'])
+
 if env['WITH_BF_CYCLES_DEBUG']:
     defs.append('WITH_CYCLES_DEBUG')
 
diff --git a/source/blender/SConscript b/source/blender/SConscript
index e987b6b..5fa583e 100644
--- a/source/blender/SConscript
+++ b/source/blender/SConscript
@@ -74,3 +74,6 @@ if env['WITH_BF_COMPOSITOR']:
 
 if env['WITH_BF_FREESTYLE']:
     SConscript (['freestyle/SConscript'])
+
+if env['WITH_BF_OPENVDB']:
+    SConscript (['openvdb/SConscript'])
diff --git a/source/blender/blenkernel/SConscript b/source/blender/blenkernel/SConscript
index 9d19e1c..e89e072 100644
--- a/source/blender/blenkernel/SConscript
+++ b/source/blender/blenkernel/SConscript
@@ -66,6 +66,7 @@ incs = [
     '../makesrna',
     '../modifiers',
     '../nodes',
+    '../openvdb',
     '../physics',
     '../render/extern/include',
     '../windowmanager',
@@ -168,6 +169,9 @@ if env['WITH_BF_INTERNATIONAL']:
 if env['WITH_BF_FREESTYLE']:
     defs.append('WITH_FREESTYLE')
 
+if env['WITH_BF_OPENVDB']:
+    defs.append('WITH_OPENVDB')
+
 if env['OURPLATFORM'] in ('win32-vc', 'win32-mingw', 'linuxcross', 'win64-vc', 'win64-mingw'):
     incs += ' ' + env['BF_PTHREADS_INC']
     incs += ' ../../../intern/utfconv'
diff --git a/source/blender/nodes/SConscript b/source/blender/nodes/SConscript
index aed8463..181be02 100644
--- a/source/blender/nodes/SConscript
+++ b/source/blender/nodes/SConscript
@@ -48,6 +48,7 @@ incs = [
     '../imbuf',
     '../makesdna',
     '../makesrna',
+    '../openvdb',
     '../render/extern/include',
     env['BF_ZLIB_INC'],
     ]
@@ -75,6 +76,9 @@ if env['WITH_BF_COMPOSITOR']:
 if env['WITH_BF_FREESTYLE']:
     defs.append('WITH_FREESTYLE')
 
+if env['WITH_BF_OPENVDB']:
+    defs.append('WITH_OPENVDB')
+
 env.BlenderLib ( libname = 'bf_nodes', sources = sources, includes = Split(incs), defines = defs, libtype=['core','player'], priority = [190,105] )
 env.Bl

@@ Diff output truncated at 10240 characters. @@




More information about the Bf-blender-cvs mailing list