Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergey Sharybin <sergey.vfx@gmail.com>2012-07-27 20:01:33 +0400
committerSergey Sharybin <sergey.vfx@gmail.com>2012-07-27 20:01:33 +0400
commit990466e87eee76e9e846694c977691fb43e427d1 (patch)
tree7cdf53cee66f5a2744aaa7c2f07fb5d47e79d457 /build_files/scons
parentf1acd6ac3e78aa4b898ee310dae2814015616e5f (diff)
Initial support for numpy in scons
Assumes numpy is installed to the BF_PYTHON/site-packages/numpy directory, could be tweaked further, but this should be enough to setup release building environment. Seems blender can't import numpy, but that doesn't seem to be scons issue, the same happens here with cmake too. Would ask Campbell to help looking into this.
Diffstat (limited to 'build_files/scons')
-rw-r--r--build_files/scons/tools/Blender.py14
-rw-r--r--build_files/scons/tools/btools.py3
2 files changed, 15 insertions, 2 deletions
diff --git a/build_files/scons/tools/Blender.py b/build_files/scons/tools/Blender.py
index 0c5d37f77fe..e07c0d6f0de 100644
--- a/build_files/scons/tools/Blender.py
+++ b/build_files/scons/tools/Blender.py
@@ -693,11 +693,23 @@ def UnixPyBundle(target=None, source=None, env=None):
run("rm -r '%s/turtle.py'" % py_target)
run("rm -f '%s/lib-dynload/_tkinter.so'" % py_target)
+ if env['WITH_BF_PYTHON_INSTALL_NUMPY']:
+ numpy_src = py_src + "/site-packages/numpy"
+ numpy_target = py_target + "/site-packages/numpy"
+
+ if os.path.exists(numpy_src):
+ print 'Install numpy from:'
+ print '\t"%s" into...' % numpy_src
+ print '\t"%s"\n' % numpy_target
+
+ run("cp -R '%s' '%s'" % (numpy_src, os.path.dirname(numpy_target)))
+ else:
+ print 'Failed to find numpy at %s, skipping copying' % numpy_src
+
run("find '%s' -type d -name 'test' -prune -exec rm -rf {} ';'" % py_target)
run("find '%s' -type d -name '__pycache__' -exec rm -rf {} ';'" % py_target)
run("find '%s' -name '*.py[co]' -exec rm -rf {} ';'" % py_target)
run("find '%s' -name '*.so' -exec strip -s {} ';'" % py_target)
-
#### END ACTION STUFF #########
diff --git a/build_files/scons/tools/btools.py b/build_files/scons/tools/btools.py
index af484ed382e..e08a013d081 100644
--- a/build_files/scons/tools/btools.py
+++ b/build_files/scons/tools/btools.py
@@ -135,7 +135,7 @@ def validate_arguments(args, bc):
'BF_CXX', 'WITH_BF_STATICCXX', 'BF_CXX_LIB_STATIC',
'BF_TWEAK_MODE', 'BF_SPLIT_SRC',
'WITHOUT_BF_INSTALL',
- 'WITHOUT_BF_PYTHON_INSTALL', 'WITHOUT_BF_PYTHON_UNPACK',
+ 'WITHOUT_BF_PYTHON_INSTALL', 'WITHOUT_BF_PYTHON_UNPACK', 'WITH_BF_PYTHON_INSTALL_NUMPY'
'WITHOUT_BF_OVERWRITE_INSTALL',
'WITH_BF_OPENMP', 'BF_OPENMP', 'BF_OPENMP_LIBPATH',
'WITH_GHOST_COCOA',
@@ -520,6 +520,7 @@ def read_opts(env, cfg, args):
(BoolVariable('BF_SPLIT_SRC', 'Split src lib into several chunks if true', False)),
(BoolVariable('WITHOUT_BF_INSTALL', 'dont install if true', False)),
(BoolVariable('WITHOUT_BF_PYTHON_INSTALL', 'dont install Python modules if true', False)),
+ (BoolVariable('WITH_BF_PYTHON_INSTALL_NUMPY', 'install Python mumpy module', False)),
(BoolVariable('WITHOUT_BF_PYTHON_UNPACK', 'dont remove and unpack Python modules everytime if true', False)),
(BoolVariable('WITHOUT_BF_OVERWRITE_INSTALL', 'dont remove existing files before breating the new install directory (set to False when making packages for others)', False)),
(BoolVariable('BF_FANCY', 'Enable fancy output if true', True)),