summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJosé Fonseca <jfonseca@vmware.com>2010-02-14 15:34:39 +0000
committerJosé Fonseca <jfonseca@vmware.com>2010-02-22 11:28:55 +0000
commitc98eced9aebf4a3661e5141af4a711e95d7cc602 (patch)
tree257a385e66de346e77c2e33e2c138fc663688e60
parent13cbb5fff68ef8831230638e9f0b29a217750e9d (diff)
scons: Control caching via new SCONS_CACHE_DIR environment variable.
This serves several purposes: - disable caching in situations were is it useless or undesired - share caches among all trees - simplify purging the cache (when it's a single location) - move the cache out of the tree, since that slows downs IDEs considerably To retain previous behavior just define do export SCONS_CACHE_DIR=$PWD/build/cache before invoking scons.
-rw-r--r--scons/gallium.py4
1 files changed, 3 insertions, 1 deletions
diff --git a/scons/gallium.py b/scons/gallium.py
index 633b86bd698..d3bd419fb3e 100644
--- a/scons/gallium.py
+++ b/scons/gallium.py
@@ -235,7 +235,9 @@ def generate(env):
# different scons versions building the same source file
env['build'] = build_dir
env.SConsignFile(os.path.join(build_dir, '.sconsign'))
- env.CacheDir('build/cache')
+ if 'SCONS_CACHE_DIR' in os.environ:
+ print 'scons: Using build cache in %s.' % (os.environ['SCONS_CACHE_DIR'],)
+ env.CacheDir(os.environ['SCONS_CACHE_DIR'])
# Parallel build
if env.GetOption('num_jobs') <= 1: