diff options
| author | Steven Knight <knight@baldmt.com> | 2009-02-21 17:22:56 (GMT) |
|---|---|---|
| committer | Steven Knight <knight@baldmt.com> | 2009-02-21 17:22:56 (GMT) |
| commit | fe90e08dfad391d01a7a5942d9d155d45b1fcf77 (patch) | |
| tree | 3050fa8d27fadd0acbecdaea33c4bc31ee7a114f /src/engine/SCons/Tool/MSCommon/sdk.py | |
| parent | 88c7995942cbf4af6a26f42ede8e940ff59c23e5 (diff) | |
| download | SCons-fe90e08dfad391d01a7a5942d9d155d45b1fcf77.zip SCons-fe90e08dfad391d01a7a5942d9d155d45b1fcf77.tar.gz SCons-fe90e08dfad391d01a7a5942d9d155d45b1fcf77.tar.bz2 | |
Merged revisions 4025-4029 via svnmerge from
http://scons.tigris.org/svn/scons/branches/vs_revamp
........
r4025 | stevenknight | 2009-02-19 22:47:45 -0800 (Thu, 19 Feb 2009) | 2 lines
Remove the MSVCCommon directory itself.
........
r4026 | stevenknight | 2009-02-20 06:37:55 -0800 (Fri, 20 Feb 2009) | 7 lines
Since we're now treating Pro and Express editions as just separate
versions, use the actual Visual Studio executable, not the .bat file,
to decide if a version is installed.
Add separate tests scripts for executing the Express editions.
Add (untested) 9.0 and 9.0Exp test scripts, cut-and-paste from 8.0 and 8.0Exp.
Ignore generated *.py[co] files in the Tool/MSCommon directory.
........
r4027 | stevenknight | 2009-02-21 06:50:58 -0800 (Sat, 21 Feb 2009) | 3 lines
Escape CC and LINK path names in the expected output to match path
names that contain regular expression characters (e.g. " (x86)").
........
r4028 | stevenknight | 2009-02-21 06:56:42 -0800 (Sat, 21 Feb 2009) | 7 lines
Fix devenv.com paths for VS 7.0 and 7.1 (.NET and .NET 2003).
Remove unused methods.
Put debug() calls under control of a SCONS_MSCOMMON_DEBUG environment
variable.
Regularize debug messages and make it obvious who's printing what.
Rename "install_dir" methods in sdk.py to "sdk_dir" to help.
........
Diffstat (limited to 'src/engine/SCons/Tool/MSCommon/sdk.py')
| -rw-r--r-- | src/engine/SCons/Tool/MSCommon/sdk.py | 37 |
1 files changed, 19 insertions, 18 deletions
diff --git a/src/engine/SCons/Tool/MSCommon/sdk.py b/src/engine/SCons/Tool/MSCommon/sdk.py index 80e6852..6791fd7 100644 --- a/src/engine/SCons/Tool/MSCommon/sdk.py +++ b/src/engine/SCons/Tool/MSCommon/sdk.py @@ -63,43 +63,42 @@ class SDKDefinition: self.version = version self.__dict__.update(kw) - def find_install_dir(self): + def find_sdk_dir(self): """Try to find the MS SDK from the registry. Return None if failed or the directory does not exist. """ if not SCons.Util.can_read_reg: - debug('SCons cannot read registry') + debug('find_sdk_dir(): can not read registry') return None hkey = self.HKEY_FMT % self.hkey_data try: - install_dir = read_reg(hkey) - debug('Found sdk dir in registry: %s' % install_dir) + sdk_dir = read_reg(hkey) except WindowsError, e: - debug('Did not find sdk dir key %s in registry' % hkey) + debug('find_sdk_dir(): no registry key %s' % hkey) return None - if not os.path.exists(install_dir): - debug('%s is not found on the filesystem' % install_dir) + if not os.path.exists(sdk_dir): + debug('find_sdk_dir(): %s not on file system' % sdk_dir) return None - ftc = os.path.join(install_dir, self.sanity_check_file) + ftc = os.path.join(sdk_dir, self.sanity_check_file) if not os.path.exists(ftc): - debug("File %s used for sanity check not found" % ftc) + debug("find_sdk_dir(): sanity check %s not found" % ftc) return None - return install_dir + return sdk_dir - def get_install_dir(self): + def get_sdk_dir(self): """Return the MSSSDK given the version string.""" try: - return self._install_dir + return self._sdk_dir except AttributeError: - install_dir = self.find_install_dir() - self._install_dir = install_dir - return install_dir + sdk_dir = self.find_sdk_dir() + self._sdk_dir = sdk_dir + return sdk_dir class WindowsSDK(SDKDefinition): """ @@ -165,7 +164,9 @@ def get_installed_sdks(): InstalledSDKList = [] InstalledSDKMap = {} for sdk in SupportedSDKList: - if sdk.get_install_dir(): + debug('trying to find SDK %s' % sdk.version) + if sdk.get_sdk_dir(): + debug('found SDK %s' % sdk.version) InstalledSDKList.append(sdk) InstalledSDKMap[sdk.version] = sdk return InstalledSDKList @@ -239,7 +240,7 @@ def set_sdk_by_version(env, mssdk): if not sdk: msg = "SDK version %s is not installed" % repr(mssdk) raise SCons.Errors.UserError, msg - set_sdk_by_directory(env, sdk.get_install_dir()) + set_sdk_by_directory(env, sdk.get_sdk_dir()) def set_default_sdk(env, msver): """Set up the default Platform/Windows SDK.""" @@ -247,7 +248,7 @@ def set_default_sdk(env, msver): if msver >= 8: sdks = get_installed_sdks() if len(sdks) > 0: - set_sdk_by_directory(env, sdks[0].get_install_dir()) + set_sdk_by_directory(env, sdks[0].get_sdk_dir()) # Local Variables: # tab-width:4 |
