diff options
author | Keith Whitwell <[email protected]> | 2009-02-10 19:22:57 +0000 |
---|---|---|
committer | Keith Whitwell <[email protected]> | 2009-02-10 19:22:57 +0000 |
commit | 9c9ba66fbae8089e9423f6b09ad1091cccf9b006 (patch) | |
tree | 81ecce3d6b19e5b77fcf31e5f081e1c546f398b9 /scons/gallium.py | |
parent | ebb864da9e98003be9ea388013ae4385d341e46f (diff) | |
parent | 1e8177ee178b131afa86d874b062a8ae3fae0cca (diff) |
Merge commit 'origin/gallium-0.2' into gallium-0.2
Conflicts:
src/gallium/state_trackers/wgl/icd/stw_icd.c
Diffstat (limited to 'scons/gallium.py')
-rw-r--r-- | scons/gallium.py | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/scons/gallium.py b/scons/gallium.py index 065c53c54b2..fc1ed08e478 100644 --- a/scons/gallium.py +++ b/scons/gallium.py @@ -163,6 +163,25 @@ def createInstallMethods(env): env.AddMethod(install_shared_library, 'InstallSharedLibrary') +def num_jobs(): + try: + return int(os.environ['NUMBER_OF_PROCESSORS']) + except (ValueError, KeyError): + pass + + try: + return os.sysconf('SC_NPROCESSORS_ONLN') + except (ValueError, OSError, AttributeError): + pass + + try: + return int(os.popen2("sysctl -n hw.ncpu")[1].read()) + except ValueError: + pass + + return 1 + + def generate(env): """Common environment generation code""" @@ -207,6 +226,10 @@ def generate(env): env.SConsignFile(os.path.join(build_dir, '.sconsign')) env.CacheDir('build/cache') + # Parallel build + if env.GetOption('num_jobs') <= 1: + env.SetOption('num_jobs', num_jobs()) + # C preprocessor options cppdefines = [] if debug: |