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
path: root/tools
diff options
context:
space:
mode:
authorCampbell Barton <ideasman42@gmail.com>2009-09-21 07:16:26 +0400
committerCampbell Barton <ideasman42@gmail.com>2009-09-21 07:16:26 +0400
commite7abdd7d56256b57d9e33326af253188ed9d96dc (patch)
tree0e8aeb686bc3ad434c1c3ba528c2eed3b6512dfa /tools
parent6c655aa2a762e440ba3f64ce8520c6ce41268d3e (diff)
Better unix filesystem integration as documented here
http://wiki.blender.org/index.php/BlenderDev/Blender2.5/Unix_FHS for scons WITH_BF_FHS enabled an alternative layout eg. scons WITH_BF_FHS=1 BF_INSTALLDIR="/usr/local" for CMake just run "make install" after make (CMAKE_INSTALL_PREFIX is used for the base path) Currently only scripts use both the system and user path correctly, other areas of blender have their own path code inline with lots of ifdefs, needs to be carefully updated.
Diffstat (limited to 'tools')
-rw-r--r--tools/Blender.py5
-rwxr-xr-xtools/btools.py8
2 files changed, 10 insertions, 3 deletions
diff --git a/tools/Blender.py b/tools/Blender.py
index d7cbe1076e7..fd6272c7c32 100644
--- a/tools/Blender.py
+++ b/tools/Blender.py
@@ -405,8 +405,11 @@ def PyInstall(target=None, source=None, env=None):
print 'Install command:', cmd
commands.getoutput(cmd)
+ if env['WITH_BF_FHS']: dir = os.path.join(env['BF_INSTALLDIR'], 'share', 'blender', env['BF_VERSION']) # BLENDERPATH
+ else: dir = os.path.join(env['BF_INSTALLDIR'], '.blender')
+
py_src = env.subst( env['BF_PYTHON_LIBPATH'] + '/python'+env['BF_PYTHON_VERSION'] )
- py_target = env.subst( env['BF_INSTALLDIR'] + '/.blender/python/lib/python'+env['BF_PYTHON_VERSION'] )
+ py_target = env.subst( dir + '/python/lib/python'+env['BF_PYTHON_VERSION'] )
# Copied from source/creator/CMakeLists.txt, keep in sync.
print 'Install python from:'
diff --git a/tools/btools.py b/tools/btools.py
index 7cadab992b8..771c67aee1f 100755
--- a/tools/btools.py
+++ b/tools/btools.py
@@ -69,6 +69,8 @@ def validate_arguments(args, bc):
'WITH_BF_DOCS',
'BF_NUMJOBS',
'BF_MSVS',
+ 'WITH_BF_FHS',
+ 'BF_VERSION',
]
# Have options here that scons expects to be lists
@@ -91,7 +93,7 @@ def validate_arguments(args, bc):
'BF_BSC', 'BF_CONFIG',
'BF_PRIORITYLIST', 'BF_BUILDINFO','CC', 'CXX', 'BF_QUICKDEBUG',
'BF_LISTDEBUG', 'LCGDIR', 'BF_X264_CONFIG', 'BF_XVIDCORE_CONFIG',
- 'BF_DOCDIR', 'BF_UNIT_TEST']
+ 'BF_UNIT_TEST']
okdict = {}
@@ -362,7 +364,6 @@ def read_opts(cfg, args):
('BF_BUILDDIR', 'Build dir', ''),
('BF_INSTALLDIR', 'Installation dir', ''),
- ('BF_DOCDIR', 'Dir where BPy documentation will be created', ''),
('CC', 'C compiler to use', ''),
('CXX', 'C++ compiler to use', ''),
@@ -387,6 +388,9 @@ def read_opts(cfg, args):
('BF_CONFIG', 'SCons python config file used to set default options', 'user_config.py'),
('BF_NUMJOBS', 'Number of build processes to spawn', '1'),
('BF_MSVS', 'Generate MSVS project files and solution', False),
+
+ (BoolVariable('WITH_BF_FHS', 'Use the Unix "Filesystem Hierarchy Standard" rather then a redistributable directory layout', False)),
+ ('BF_VERSION', 'The root path for Unix (non-apple)', '2.5'),
(BoolVariable('BF_UNIT_TEST', 'Build with unit test support.', False))