diff options
author | Steven Knight <knight@baldmt.com> | 2010-02-21 14:57:09 (GMT) |
---|---|---|
committer | Steven Knight <knight@baldmt.com> | 2010-02-21 14:57:09 (GMT) |
commit | df62cd97a67dd0a947105393e8d88166b9b2c656 (patch) | |
tree | 5083754cf611f3c5df23c1d3f42cde9af022644b /src | |
parent | cc62454164849720eeffd08aea925f8d474b9d7c (diff) | |
download | SCons-df62cd97a67dd0a947105393e8d88166b9b2c656.zip SCons-df62cd97a67dd0a947105393e8d88166b9b2c656.tar.gz SCons-df62cd97a67dd0a947105393e8d88166b9b2c656.tar.bz2 |
Issue 2051: Support execution when installed via easy_install.
(Gottfried Ganssauge)
Diffstat (limited to 'src')
-rw-r--r-- | src/CHANGES.txt | 4 | ||||
-rw-r--r-- | src/script/scons.py | 13 | ||||
-rw-r--r-- | src/script/sconsign.py | 13 |
3 files changed, 30 insertions, 0 deletions
diff --git a/src/CHANGES.txt b/src/CHANGES.txt index ec6ea95..3a1b8e3 100644 --- a/src/CHANGES.txt +++ b/src/CHANGES.txt @@ -14,6 +14,10 @@ RELEASE X.X.X - XXX - Fix typos in the man page. + From Gottfried Ganssauge: + + - Support execution when SCons is installed via easy_install. + From Steven Knight: - Make the messages for Configure checks of compilers consistent. diff --git a/src/script/scons.py b/src/script/scons.py index fb4cf52..dec4222 100644 --- a/src/script/scons.py +++ b/src/script/scons.py @@ -160,6 +160,19 @@ else: # Check /usr/libfoo/scons*. prefs.append(libpath) + try: + import pkg_resources + except ImportError: + pass + else: + # when running from an egg add the egg's directory + try: + d = pkg_resources.get_distribution('scons') + except pkg_resources.DistributionNotFound: + pass + else: + prefs.append(d.location) + # Look first for 'scons-__version__' in all of our preference libs, # then for 'scons'. libs.extend(map(lambda x: os.path.join(x, scons_version), prefs)) diff --git a/src/script/sconsign.py b/src/script/sconsign.py index c45f587..40c5daf 100644 --- a/src/script/sconsign.py +++ b/src/script/sconsign.py @@ -148,6 +148,19 @@ else: # Check /usr/libfoo/scons*. prefs.append(libpath) + try: + import pkg_resources + except ImportError: + pass + else: + # when running from an egg add the egg's directory + try: + d = pkg_resources.get_distribution('scons') + except pkg_resources.DistributionNotFound: + pass + else: + prefs.append(d.location) + # Look first for 'scons-__version__' in all of our preference libs, # then for 'scons'. libs.extend(map(lambda x: os.path.join(x, scons_version), prefs)) |