diff options
author | Steven Knight <knight@baldmt.com> | 2009-02-21 16:58:07 (GMT) |
---|---|---|
committer | Steven Knight <knight@baldmt.com> | 2009-02-21 16:58:07 (GMT) |
commit | 88c7995942cbf4af6a26f42ede8e940ff59c23e5 (patch) | |
tree | d0a8bafd8ea579c549e149bdee9e530b24237cc0 /src/engine/SCons/Tool/mslib.py | |
parent | 0ffaa445c912caef643ad78e2203c7463ca388ab (diff) | |
download | SCons-88c7995942cbf4af6a26f42ede8e940ff59c23e5.zip SCons-88c7995942cbf4af6a26f42ede8e940ff59c23e5.tar.gz SCons-88c7995942cbf4af6a26f42ede8e940ff59c23e5.tar.bz2 |
Merged revisions 3088-3319,3321-3322,3324-3349,3351-3481,3483-3484,3486-3520,3522-3565,3567-3595,3597-3684,3686-3694,3696-3711,3713-3830,3832-3857,3859-3931,3933-3967,3969-3982,3984-3998,4000-4005,4007-4010,4012-4023 via svnmerge from
http://scons.tigris.org/svn/scons/branches/vs_revamp
................
r3089 | cournape | 2008-06-17 20:20:32 -0700 (Tue, 17 Jun 2008) | 3 lines
Initialized merge tracking via "svnmerge" with revisions "1-3088" from
http://scons.tigris.org/svn/scons/branches/core
................
r3090 | cournape | 2008-06-18 02:36:58 -0700 (Wed, 18 Jun 2008) | 1 line
Start working on MSVCCommon: we can find the product dir from registry and/or VS*COMTOOLS.
................
r3102 | cournape | 2008-06-24 01:22:38 -0700 (Tue, 24 Jun 2008) | 1 line
Get output from the bat file for vs.
................
r3103 | cournape | 2008-06-24 01:26:21 -0700 (Tue, 24 Jun 2008) | 1 line
Add function to parse vcbat output into env var.
................
r3104 | cournape | 2008-06-24 01:42:47 -0700 (Tue, 24 Jun 2008) | 1 line
Fix parsing output.
................
r3105 | cournape | 2008-06-24 02:06:56 -0700 (Tue, 24 Jun 2008) | 1 line
Set directly the variables to a list of path.
................
r3106 | cournape | 2008-06-24 02:28:43 -0700 (Tue, 24 Jun 2008) | 1 line
Add a function get_new to get only new paths which are added by the .bat file.
................
r3107 | cournape | 2008-06-24 02:45:28 -0700 (Tue, 24 Jun 2008) | 1 line
Better code for parse_output: do not swing with keys unnecessarily.
................
r3108 | cournape | 2008-06-24 02:56:06 -0700 (Tue, 24 Jun 2008) | 1 line
Put everything together in varbat_variables function.
................
r3109 | cournape | 2008-06-24 03:03:36 -0700 (Tue, 24 Jun 2008) | 1 line
More code cleaning for parse_output.
................
r3110 | cournape | 2008-06-24 03:07:25 -0700 (Tue, 24 Jun 2008) | 1 line
Handle empty path.
................
r3111 | cournape | 2008-06-24 03:23:41 -0700 (Tue, 24 Jun 2008) | 1 line
Add MSVCCommon to the manifest.
................
r3112 | cournape | 2008-06-24 03:24:16 -0700 (Tue, 24 Jun 2008) | 1 line
Plug the code to get env from reg/env to msvc tool.
................
r3319 | cournape | 2008-08-28 00:53:53 -0700 (Thu, 28 Aug 2008) | 188 lines
Merged revisions 3094,3115-3128,3181-3182,3194,3204,3206,3217-3218,3231,3237-3247,3249,3265 via svnmerge from
http://scons.tigris.org/svn/scons/branches/core
................
r3094 | stevenknight | 2008-06-20 01:52:16 +0900 (Fri, 20 Jun 2008) | 3 lines
Change the User's Guide to use the new Variables object and its
associated function for controlling command-line build variables.
................
r3115 | stevenknight | 2008-06-25 22:46:36 +0900 (Wed, 25 Jun 2008) | 2 lines
Issue 2072: end indentation after generated Builder text.
................
r3116 | stevenknight | 2008-06-26 11:07:15 +0900 (Thu, 26 Jun 2008) | 2 lines
Reorganize the command-line arguments chapter.
................
r3117 | stevenknight | 2008-06-26 11:13:58 +0900 (Thu, 26 Jun 2008) | 2 lines
Editing pass for formatting in the Glob() sections.
................
r3118 | stevenknight | 2008-06-26 11:23:09 +0900 (Thu, 26 Jun 2008) | 3 lines
Wording changing: Preventing => Controlling, because the chapter
also talks about how to clean additional targets.
................
r3119 | stevenknight | 2008-06-26 11:50:41 +0900 (Thu, 26 Jun 2008) | 2 lines
Fix missing </literal> tags, minor wording fix.
................
r3120 | stevenknight | 2008-06-26 11:58:34 +0900 (Thu, 26 Jun 2008) | 2 lines
Add "the Default Function" to the appropriate subsection title.
................
r3121 | stevenknight | 2008-06-27 00:33:43 +0900 (Fri, 27 Jun 2008) | 2 lines
Issue 1988: Document the Variables.UnknownVariables() method.
................
r3122 | stevenknight | 2008-06-27 00:35:51 +0900 (Fri, 27 Jun 2008) | 3 lines
Remove comments listing some of the variables that have been
documented recently.
................
r3123 | stevenknight | 2008-06-27 04:42:53 +0900 (Fri, 27 Jun 2008) | 2 lines
Issue 2118: Fix incorrectly swapped man page text. (Alexey Zezukin)
................
r3124 | bdbaddog | 2008-06-27 13:23:46 +0900 (Fri, 27 Jun 2008) | 2 lines
Fix bug 2108 - duplicate text in description of interactive mode
................
r3125 | stevenknight | 2008-06-28 13:54:56 +0900 (Sat, 28 Jun 2008) | 3 lines
Issue 1993: Document the $*COMSTR variables, the Progress() function,
and create a common "Controlling Build Output" chapter.
................
r3126 | garyo | 2008-06-28 21:46:44 +0900 (Sat, 28 Jun 2008) | 1 line
Fix issue 2105; temporarily omit doc saying that SetOption can override user-created Options (until that is implemented).
................
r3127 | stevenknight | 2008-06-28 23:29:18 +0900 (Sat, 28 Jun 2008) | 2 lines
Issue 1747: Explicitly document use of Node lists as input to Depends().
................
r3128 | stevenknight | 2008-06-28 23:48:32 +0900 (Sat, 28 Jun 2008) | 6 lines
White space change: indent the construction environment sections
further to make way for combining this chapter with others to make
one big "Controlling Environments" chapter.
Also, get rid of some now-unnecessary doc from the old Cons classic
POD, that was taking up space here waiting to be documented.
................
r3181 | stevenknight | 2008-07-08 23:17:27 +0900 (Tue, 08 Jul 2008) | 4 lines
Reorganize the discussion of different environments into one chapter.
Document the SetDefault(), PrependUnique(), AppendUnique(),
PrependENVPath() and AppendENVPath() functions.
................
r3182 | stevenknight | 2008-07-09 00:47:55 +0900 (Wed, 09 Jul 2008) | 2 lines
Issue 1998: Docment the ARGLIST variable in the User's Guide.
................
r3194 | GregNoel | 2008-07-10 15:16:51 +0900 (Thu, 10 Jul 2008) | 1 line
remove unnecessary trailing spaces on lines
................
r3204 | stevenknight | 2008-07-12 00:29:18 +0900 (Sat, 12 Jul 2008) | 2 lines
Issue 1853: Remove referenc to SCons.Util.CLVar from a doc example.
................
r3206 | GregNoel | 2008-07-12 18:08:19 +0900 (Sat, 12 Jul 2008) | 1 line
Another go at describing VariantDir()
................
r3217 | stevenknight | 2008-07-16 22:52:44 +0900 (Wed, 16 Jul 2008) | 2 lines
Update the copyright year in the User's Guide.
................
r3218 | stevenknight | 2008-07-16 23:08:52 +0900 (Wed, 16 Jul 2008) | 3 lines
Issue 1881: Add man page text clarifying the behavior of
Add{Pre,Post}Action() when multiple targets are specified.
................
r3231 | stevenknight | 2008-07-22 17:58:11 +0900 (Tue, 22 Jul 2008) | 4 lines
Enhance MSVSProject() tests so they're runnable on any system, regardless
of whether Visual Studio is installed, or if it's even a Windows system
at all.
................
r3237 | GregNoel | 2008-07-26 16:07:49 +0900 (Sat, 26 Jul 2008) | 1 line
Issue 1983: Document ParseConfig, MergeFlags, and ParseFlags for the Users' Guide
................
r3238 | stevenknight | 2008-07-27 00:38:18 +0900 (Sun, 27 Jul 2008) | 3 lines
Follow-ons for building the User's Guide with Greg's recent additions
for MergeFlags() and ParseFlags().
................
r3239 | stevenknight | 2008-07-27 01:52:40 +0900 (Sun, 27 Jul 2008) | 3 lines
Re-arrange some sections talking about creating construction environments
and fetching/expanding variables.
................
r3240 | stevenknight | 2008-07-27 04:16:11 +0900 (Sun, 27 Jul 2008) | 2 lines
Stylistic editing of new {Merge,Parse}{Config,Flags} sections.
................
r3241 | GregNoel | 2008-07-27 04:42:42 +0900 (Sun, 27 Jul 2008) | 1 line
Issue 1987: Document SideEffect for Users' Guide (incomplete)
................
r3242 | stevenknight | 2008-07-27 05:27:56 +0900 (Sun, 27 Jul 2008) | 2 lines
Correct dumb XML mistakes in my last checkin.
................
r3243 | stevenknight | 2008-07-27 05:34:05 +0900 (Sun, 27 Jul 2008) | 2 lines
One-character typo. Gah.
................
r3244 | stevenknight | 2008-07-27 05:44:14 +0900 (Sun, 27 Jul 2008) | 2 lines
Issue 1977,1980: document the Exit() and Flatten() functions.
................
r3245 | stevenknight | 2008-07-28 02:24:12 +0900 (Mon, 28 Jul 2008) | 14 lines
Updates to the new SideEffect section (kudos to Greg).
While working on this, Greg discovered a bug (issue #2154) that prevents
a SideEffect() file from being used as input to another builder call; it
makes the builder target not get build when run in paralle (e.g. -j2)...
:-( So this patch comments out that section of Greg's section.
This also contains my usual editing pass. In this case I changed some
of the examples and added a bunch of text to try to help clarify some
things that seemed important. I also added a closing paragraph warning
that SideEffect() really shouldn't be used as an alternative to specifying
multiple target files in a Builder call when a command builds more than
one file that you care about.
................
r3246 | stevenknight | 2008-07-28 02:31:17 +0900 (Mon, 28 Jul 2008) | 2 lines
Proofreading edits of the MergeFlags() section. (Greg Noel)
................
r3247 | stevenknight | 2008-07-28 03:17:27 +0900 (Mon, 28 Jul 2008) | 2 lines
Issue 1976: document ensure{Python,SCons}Version() in the User's Guide.
................
r3249 | GregNoel | 2008-07-29 07:57:00 +0900 (Tue, 29 Jul 2008) | 1 line
Add svn-bisect script
................
r3265 | stevenknight | 2008-08-09 23:08:40 +0900 (Sat, 09 Aug 2008) | 14 lines
Merged revisions 3060-3264 via svnmerge from
http://scons.tigris.org/svn/scons/trunk
........
r3092 | stevenknight | 2008-06-19 06:35:38 -0700 (Thu, 19 Jun 2008) | 2 lines
Fix typo: caes => case(s).
........
r3093 | stevenknight | 2008-06-19 06:42:52 -0700 (Thu, 19 Jun 2008) | 3 lines
Another typo fix (cse => case) and clarification of why submitting a
test case is good.
........
................
................
r3321 | cournape | 2008-08-28 01:24:20 -0700 (Thu, 28 Aug 2008) | 1 line
Fix indenting issues.
................
r3324 | cournape | 2008-08-29 04:56:16 -0700 (Fri, 29 Aug 2008) | 2 lines
Fix eol to unix for msvc files.
................
r3398 | cournape | 2008-09-12 23:55:41 -0700 (Fri, 12 Sep 2008) | 2 lines
Add a function FindMSVSBatFile.
................
r3399 | cournape | 2008-09-12 23:56:03 -0700 (Fri, 12 Sep 2008) | 6 lines
Merge commit '5258bd36b856d1f042aa9ca8df419af96e1d7bf8' into work
Conflicts:
src/engine/SCons/Tool/MSVCCommon.py
................
r3400 | cournape | 2008-09-13 02:13:24 -0700 (Sat, 13 Sep 2008) | 1 line
................
r3403 | cournape | 2008-09-13 22:02:26 -0700 (Sat, 13 Sep 2008) | 1 line
Do not use None as default argument for FindMSVSBatFile, as it does not make sense.
................
r3404 | cournape | 2008-09-13 22:06:23 -0700 (Sat, 13 Sep 2008) | 1 line
Do not raise IOError in find_ functions, but return None.
................
r3405 | cournape | 2008-09-13 22:35:59 -0700 (Sat, 13 Sep 2008) | 1 line
Remove common paths between os.environ and var parsed by ParseBatFile.
................
r3406 | cournape | 2008-09-13 22:50:00 -0700 (Sat, 13 Sep 2008) | 1 line
Add MergeMSVSBatFile function.
................
r3407 | cournape | 2008-09-13 23:12:19 -0700 (Sat, 13 Sep 2008) | 2 lines
Remove trailing spaces.
................
r3408 | cournape | 2008-09-13 23:12:47 -0700 (Sat, 13 Sep 2008) | 2 lines
Remove printing debug statement.
................
r3409 | cournape | 2008-09-13 23:13:16 -0700 (Sat, 13 Sep 2008) | 2 lines
Improve documentation of public functions for MSVCCommon.py.
................
r3410 | cournape | 2008-09-13 23:23:09 -0700 (Sat, 13 Sep 2008) | 2 lines
Set a default version of use for MergeMSVSBatFile.
................
r3411 | cournape | 2008-09-13 23:23:31 -0700 (Sat, 13 Sep 2008) | 2 lines
Update examples.
................
r3412 | cournape | 2008-09-13 23:23:54 -0700 (Sat, 13 Sep 2008) | 2 lines
Look for several versions before giving up.
................
r3413 | cournape | 2008-09-13 23:24:17 -0700 (Sat, 13 Sep 2008) | 2 lines
Improve documentation for MergeMSVSBatFile.
................
r3483 | cournape | 2008-09-25 22:20:11 -0700 (Thu, 25 Sep 2008) | 1 line
Indent docstrings correctly.
................
r3486 | cournape | 2008-09-26 00:17:47 -0700 (Fri, 26 Sep 2008) | 1 line
Use PrependENVPath to merge MSVC variables.
................
r3487 | cournape | 2008-09-26 00:18:35 -0700 (Fri, 26 Sep 2008) | 1 line
Use new MSVC support instead of the old one by default.
................
r3488 | cournape | 2008-09-26 00:30:34 -0700 (Fri, 26 Sep 2008) | 1 line
Add a small note about new msvc support.
................
r3493 | stevenknight | 2008-09-27 08:02:30 -0700 (Sat, 27 Sep 2008) | 4 lines
Change our catching of implicit RegError and InternalError exceptions
when trying to do "MSVS stuff" into raising and catching a new explicit
MSVCError exception.
................
r3494 | stevenknight | 2008-09-27 08:16:30 -0700 (Sat, 27 Sep 2008) | 8 lines
Fix it so tests will work on Linux:
* Use full names of SCons.Util.* things so we don't die at import time
if they don't exist.
* Use the new SCons.Errors.MSVCError exception.
Also:
* Sort import statements.
* Add copyright and doc string.
................
r3495 | stevenknight | 2008-09-27 08:18:11 -0700 (Sat, 27 Sep 2008) | 2 lines
Python 1.5 portability: no "import ... as" and no list comprehensions.
................
r3496 | cournape | 2008-09-27 23:07:55 -0700 (Sat, 27 Sep 2008) | 2 lines
Fix pdir_from_reg for VS 2003 .net.
................
r3497 | cournape | 2008-09-28 00:01:12 -0700 (Sun, 28 Sep 2008) | 1 line
Add comments about discrepancies between various VS versions.
................
r3498 | cournape | 2008-09-28 00:02:38 -0700 (Sun, 28 Sep 2008) | 1 line
Fix pdir_from_env for VS 2003 .net.
................
r3499 | cournape | 2008-09-28 00:04:09 -0700 (Sun, 28 Sep 2008) | 1 line
Remove dead code.
................
r3500 | cournape | 2008-09-28 01:16:12 -0700 (Sun, 28 Sep 2008) | 1 line
Fix typo: exceptions are raised, not returned...
................
r3501 | cournape | 2008-09-28 01:16:45 -0700 (Sun, 28 Sep 2008) | 1 line
Add a small comment on vsvars32 vs vsvarsall.
................
r3502 | cournape | 2008-09-28 01:17:20 -0700 (Sun, 28 Sep 2008) | 1 line
Fix detect for msvc tool.
................
r3503 | cournape | 2008-09-28 03:42:22 -0700 (Sun, 28 Sep 2008) | 1 line
Add WoW6432 info.
................
r3504 | cournape | 2008-09-28 03:42:46 -0700 (Sun, 28 Sep 2008) | 1 line
Add a function is_win64, needed to detect 32 bits VS on 64 bits windows.
................
r3505 | cournape | 2008-09-28 04:08:20 -0700 (Sun, 28 Sep 2008) | 1 line
Use required version if set; look for a valid version otherwise.
................
r3506 | cournape | 2008-09-28 04:13:25 -0700 (Sun, 28 Sep 2008) | 1 line
Forgot to call with env gar.
................
r3507 | cournape | 2008-09-28 04:20:30 -0700 (Sun, 28 Sep 2008) | 1 line
Fix typo.
................
r3508 | cournape | 2008-09-28 04:24:30 -0700 (Sun, 28 Sep 2008) | 1 line
And another typo.
................
r3509 | cournape | 2008-09-28 04:27:15 -0700 (Sun, 28 Sep 2008) | 1 line
And another...
................
r3510 | cournape | 2008-09-28 04:35:02 -0700 (Sun, 28 Sep 2008) | 1 line
Add a FindDefaultMSVSBatFile function to use in msvc.
................
r3511 | cournape | 2008-09-28 04:35:27 -0700 (Sun, 28 Sep 2008) | 1 line
Use FindDefaultMSVSBatFile to detect msvc if no specific version was required.
................
r3512 | cournape | 2008-09-28 04:49:26 -0700 (Sun, 28 Sep 2008) | 1 line
Fix get_required_version.
................
r3513 | cournape | 2008-09-28 04:52:14 -0700 (Sun, 28 Sep 2008) | 1 line
Typo.
................
r3516 | cournape | 2008-09-29 05:54:51 -0700 (Mon, 29 Sep 2008) | 1 line
Add our own custom query_versions to detect available VS versions on the build machine.
................
r3517 | cournape | 2008-09-29 06:02:46 -0700 (Mon, 29 Sep 2008) | 1 line
Add a function to get default version of MS VS, but using new logic based on bat file instead of registry insanity.
................
r3518 | cournape | 2008-09-29 06:27:46 -0700 (Mon, 29 Sep 2008) | 1 line
Use query_version to get actual VS version to use; my previous attempt was totally bogus.
................
r3519 | cournape | 2008-09-29 07:03:58 -0700 (Mon, 29 Sep 2008) | 1 line
Update our fake test for debugging purpose.
................
r3522 | cournape | 2008-09-29 21:54:53 -0700 (Mon, 29 Sep 2008) | 1 line
Always succeed msvc.generate, even when no compiler is found.
................
r3532 | garyo | 2008-10-01 21:48:33 -0700 (Wed, 01 Oct 2008) | 1 line
vs_revamp: look for paths non-case-sensitively for e.g. VC9 Express.
................
r3553 | cournape | 2008-10-06 06:00:05 -0700 (Mon, 06 Oct 2008) | 2 lines
Rename default_version function.
................
r3554 | cournape | 2008-10-06 06:00:34 -0700 (Mon, 06 Oct 2008) | 2 lines
Put MSVCCommon import on top.
................
r3555 | cournape | 2008-10-06 06:00:56 -0700 (Mon, 06 Oct 2008) | 2 lines
Use new MSVS detection in mslink tool.
................
r3556 | cournape | 2008-10-06 06:01:24 -0700 (Mon, 06 Oct 2008) | 2 lines
Use detect_msvs function for every MS-tool detect method.
................
r3557 | cournape | 2008-10-06 06:01:52 -0700 (Mon, 06 Oct 2008) | 2 lines
Use single function to detect default msvs version.
................
r3558 | cournape | 2008-10-06 06:02:12 -0700 (Mon, 06 Oct 2008) | 2 lines
Use common function to detect msvs version for mslib tool.
................
r3559 | cournape | 2008-10-06 06:02:33 -0700 (Mon, 06 Oct 2008) | 2 lines
Use common msvc funcs in linkloc tool.
................
r3560 | cournape | 2008-10-06 06:02:53 -0700 (Mon, 06 Oct 2008) | 2 lines
Remove old code for msvc: not used anymore.
................
r3561 | cournape | 2008-10-06 06:03:13 -0700 (Mon, 06 Oct 2008) | 2 lines
Use merge_default_version in msvs tool.
................
r3562 | cournape | 2008-10-06 06:03:34 -0700 (Mon, 06 Oct 2008) | 2 lines
Remove more obsolete cruft.
................
r3563 | cournape | 2008-10-06 06:03:53 -0700 (Mon, 06 Oct 2008) | 2 lines
Use common msvs detection instead of cutom one in midl.py.
................
r3564 | cournape | 2008-10-06 06:04:13 -0700 (Mon, 06 Oct 2008) | 2 lines
Removed obsolete is_msvs_installed.
................
r3565 | cournape | 2008-10-06 06:04:32 -0700 (Mon, 06 Oct 2008) | 2 lines
Make sure we still use string in MSVS_VERSION, even if we use float internally everywhere otherwise.
................
r3567 | cournape | 2008-10-06 07:41:16 -0700 (Mon, 06 Oct 2008) | 1 line
Add env argument to MergeBatFile.
................
r3568 | cournape | 2008-10-06 07:43:07 -0700 (Mon, 06 Oct 2008) | 1 line
Add env argument to get_output to control environment executing the bat file.
................
r3573 | cournape | 2008-10-07 01:48:05 -0700 (Tue, 07 Oct 2008) | 1 line
Remove obsolete varbat_variables.
................
r3574 | cournape | 2008-10-07 01:48:33 -0700 (Tue, 07 Oct 2008) | 1 line
Define a DEFVERSIONSTR.
................
r3575 | cournape | 2008-10-07 01:48:57 -0700 (Tue, 07 Oct 2008) | 1 line
Set supported versions in a global variable.
................
r3576 | cournape | 2008-10-07 01:49:21 -0700 (Tue, 07 Oct 2008) | 1 line
Trailing spaces.
................
r3577 | cournape | 2008-10-07 01:49:43 -0700 (Tue, 07 Oct 2008) | 1 line
Add a function to normalize environments for some keys set.
................
r3578 | cournape | 2008-10-07 01:50:10 -0700 (Tue, 07 Oct 2008) | 1 line
Use normalized env when executing the .bat file.
................
r3579 | cournape | 2008-10-07 02:02:18 -0700 (Tue, 07 Oct 2008) | 1 line
Typo.
................
r3580 | cournape | 2008-10-07 02:13:26 -0700 (Tue, 07 Oct 2008) | 1 line
Fix wrong definition of version to env var dictionary.
................
r3581 | cournape | 2008-10-07 02:15:24 -0700 (Tue, 07 Oct 2008) | 1 line
Fix missed variable.
................
r3582 | cournape | 2008-10-07 02:28:35 -0700 (Tue, 07 Oct 2008) | 1 line
Use values and not keys of env.
................
r3583 | cournape | 2008-10-07 03:45:50 -0700 (Tue, 07 Oct 2008) | 1 line
Handle string encoding when reading env from .bat file.
................
r3584 | cournape | 2008-10-07 04:07:26 -0700 (Tue, 07 Oct 2008) | 1 line
Directly return the parsed variables, since we use a sanitize env now.
................
r3585 | cournape | 2008-10-07 04:33:34 -0700 (Tue, 07 Oct 2008) | 1 line
Add locations of MS sdk (from registry only).
................
r3586 | cournape | 2008-10-07 04:43:32 -0700 (Tue, 07 Oct 2008) | 1 line
Mention that MS SDK has only been investigated for 6.1.
................
r3587 | cournape | 2008-10-07 04:43:56 -0700 (Tue, 07 Oct 2008) | 1 line
Add function to get the MS SDK directory from registry.
................
r3588 | cournape | 2008-10-07 04:50:52 -0700 (Tue, 07 Oct 2008) | 1 line
Fix typo in variable.
................
r3589 | cournape | 2008-10-07 05:12:27 -0700 (Tue, 07 Oct 2008) | 1 line
Remove unused keep arg of get_output.
................
r3590 | cournape | 2008-10-07 05:12:49 -0700 (Tue, 07 Oct 2008) | 1 line
Fix typo in MS SDK reg key.
................
r3591 | cournape | 2008-10-07 05:30:50 -0700 (Tue, 07 Oct 2008) | 1 line
Fix parse_output for cases where keys do not have special treatment.
................
r3597 | cournape | 2008-10-08 01:18:17 -0700 (Wed, 08 Oct 2008) | 1 line
Add a function to parse outputstring into env dict.
................
r3602 | cournape | 2008-10-09 10:34:10 -0700 (Thu, 09 Oct 2008) | 1 line
Use version string for default version.
................
r3605 | cournape | 2008-10-10 06:36:45 -0700 (Fri, 10 Oct 2008) | 1 line
Start working on using def path if requested to avoid huge cost of executing the .bat files.
................
r3606 | cournape | 2008-10-10 06:47:43 -0700 (Fri, 10 Oct 2008) | 1 line
Rename global var to get windows sdk from registry.
................
r3607 | cournape | 2008-10-10 07:01:39 -0700 (Fri, 10 Oct 2008) | 1 line
Handle platform sdk in default env.
................
r3661 | cournape | 2008-10-11 03:47:55 -0700 (Sat, 11 Oct 2008) | 1 line
Move MSVCCommon module into a subpackage.
................
r3662 | cournape | 2008-10-11 04:06:15 -0700 (Sat, 11 Oct 2008) | 1 line
Start splitting MSVCCommon module in multiple files.
................
r3663 | cournape | 2008-10-11 04:09:30 -0700 (Sat, 11 Oct 2008) | 1 line
Put sdk-stuff in separate module.
................
r3664 | cournape | 2008-10-11 04:20:25 -0700 (Sat, 11 Oct 2008) | 1 line
Put defaults and environment parsing/bat execution in separate module.
................
r3665 | cournape | 2008-10-11 04:27:29 -0700 (Sat, 11 Oct 2008) | 1 line
Add a version module for version handling/detection.
................
r3666 | cournape | 2008-10-11 04:56:52 -0700 (Sat, 11 Oct 2008) | 1 line
Fix various broken imports related to refactoring of MSVCCommon.
................
r3667 | cournape | 2008-10-11 05:00:57 -0700 (Sat, 11 Oct 2008) | 1 line
Move msvc notes in our new module.
................
r3668 | cournape | 2008-10-11 06:12:34 -0700 (Sat, 11 Oct 2008) | 1 line
Add COMSPEC to default env['ENV'] + put system32 into the path.
................
r3669 | cournape | 2008-10-11 06:14:02 -0700 (Sat, 11 Oct 2008) | 1 line
Set up PATH correctly.
................
r3671 | cournape | 2008-10-11 06:17:07 -0700 (Sat, 11 Oct 2008) | 1 line
Fix various import issues left over by the refactorization.
................
r3674 | cournape | 2008-10-11 06:42:57 -0700 (Sat, 11 Oct 2008) | 1 line
SDK versions can have letters in them: cannot use float, have to use strings.
................
r3675 | cournape | 2008-10-11 06:55:28 -0700 (Sat, 11 Oct 2008) | 1 line
Update msvc notes.
................
r3680 | cournape | 2008-10-14 01:17:13 -0700 (Tue, 14 Oct 2008) | 1 line
Add some info I found out on sdk mess.
................
r3681 | cournape | 2008-10-14 02:15:07 -0700 (Tue, 14 Oct 2008) | 1 line
Add some more comments on how we get the SDK.
................
r3682 | cournape | 2008-10-14 03:05:08 -0700 (Tue, 14 Oct 2008) | 1 line
The SDK tool can find the 2003R2 SDK too.
................
r3686 | cournape | 2008-10-14 20:13:20 -0700 (Tue, 14 Oct 2008) | 1 line
Fix tab vs space.
................
r3687 | cournape | 2008-10-14 20:14:40 -0700 (Tue, 14 Oct 2008) | 2 lines
Add UUID for sdk 2003R1
.
................
r3688 | cournape | 2008-10-14 20:33:18 -0700 (Tue, 14 Oct 2008) | 1 line
Add comment on which version of the SDK the sdk module can find.
................
r3690 | cournape | 2008-10-15 01:14:12 -0700 (Wed, 15 Oct 2008) | 1 line
Update the msvc notes.
................
r3696 | cournape | 2008-10-16 23:23:14 -0700 (Thu, 16 Oct 2008) | 1 line
Change sanity check files for SDK 6.0A and 6.1.
................
r3697 | cournape | 2008-10-16 23:35:03 -0700 (Thu, 16 Oct 2008) | 1 line
Do not handle sdk in defaults.
................
r3698 | cournape | 2008-10-16 23:49:25 -0700 (Thu, 16 Oct 2008) | 1 line
Add docstring for exists method of ms tools.
................
r3699 | cournape | 2008-10-17 00:04:17 -0700 (Fri, 17 Oct 2008) | 1 line
Fix spave vs tab issue.
................
r3700 | cournape | 2008-10-17 00:26:50 -0700 (Fri, 17 Oct 2008) | 1 line
Add a TODO.
................
r3701 | cournape | 2008-10-17 00:58:27 -0700 (Fri, 17 Oct 2008) | 1 line
Find VC98 product dir from the registry.
................
r3702 | cournape | 2008-10-17 01:01:51 -0700 (Fri, 17 Oct 2008) | 1 line
Refactor find_v* functions: 3 different batname needed now that we support VC98.
................
r3703 | cournape | 2008-10-17 01:03:20 -0700 (Fri, 17 Oct 2008) | 1 line
Fix dos EOL.
................
r3704 | cournape | 2008-10-17 01:04:28 -0700 (Fri, 17 Oct 2008) | 1 line
More fixes dos EOL.
................
r3705 | cournape | 2008-10-17 01:08:59 -0700 (Fri, 17 Oct 2008) | 1 line
Fix typo in bat filename for VS 2005/2008.
................
r3706 | cournape | 2008-10-17 01:10:12 -0700 (Fri, 17 Oct 2008) | 1 line
VC98 now correctly detected in query_versions.
................
r3707 | cournape | 2008-10-17 01:58:49 -0700 (Fri, 17 Oct 2008) | 1 line
Fix some encoding issues when parsing the .bat file ouptut.
................
r3708 | cournape | 2008-10-17 02:35:25 -0700 (Fri, 17 Oct 2008) | 1 line
Remove unused/dead code.
................
r3713 | cournape | 2008-10-24 05:40:31 -0700 (Fri, 24 Oct 2008) | 1 line
Add a function to detect VCINSTALLDIR and VSINSTALLDIR.
................
r3714 | cournape | 2008-10-24 05:41:48 -0700 (Fri, 24 Oct 2008) | 1 line
'inline' trivial functions.
................
r3715 | cournape | 2008-10-24 05:45:40 -0700 (Fri, 24 Oct 2008) | 1 line
Fix bad function name in previous commit.
................
r3716 | cournape | 2008-10-24 05:50:34 -0700 (Fri, 24 Oct 2008) | 1 line
Rename find_msvs_path since several paths are returned.
................
r3717 | cournape | 2008-10-24 05:51:00 -0700 (Fri, 24 Oct 2008) | 1 line
Return correct variable in find_msvs_paths.
................
r3718 | cournape | 2008-10-24 05:51:42 -0700 (Fri, 24 Oct 2008) | 1 line
Fix VSINSTALLDIR.
................
r3719 | cournape | 2008-10-24 05:52:40 -0700 (Fri, 24 Oct 2008) | 1 line
Normalize paths returned by find_msvs_paths.
................
r3720 | cournape | 2008-10-25 04:06:14 -0700 (Sat, 25 Oct 2008) | 1 line
Adapt empty test case to new msvc support.
................
r3721 | cournape | 2008-10-25 04:10:53 -0700 (Sat, 25 Oct 2008) | 1 line
Handle os.environ overriding a bit better.
................
r3722 | cournape | 2008-10-25 04:29:22 -0700 (Sat, 25 Oct 2008) | 1 line
Add our get_msvs_install_dirs function to be compatible with old unit test suite.
................
r3723 | cournape | 2008-10-25 04:31:21 -0700 (Sat, 25 Oct 2008) | 1 line
Fix empty test case.
................
r3724 | cournape | 2008-10-25 05:16:32 -0700 (Sat, 25 Oct 2008) | 1 line
Start working on net frameworks detection.
................
r3725 | cournape | 2008-10-25 05:21:06 -0700 (Sat, 25 Oct 2008) | 1 line
Fix forgotten colon.
................
r3726 | cournape | 2008-10-25 05:25:57 -0700 (Sat, 25 Oct 2008) | 1 line
Add a function to query available .net frameworks.
................
r3727 | cournape | 2008-10-25 05:27:15 -0700 (Sat, 25 Oct 2008) | 1 line
Fix typo.
................
r3728 | cournape | 2008-10-25 05:28:03 -0700 (Sat, 25 Oct 2008) | 1 line
Forgot to improt string module.
................
r3729 | cournape | 2008-10-25 05:42:51 -0700 (Sat, 25 Oct 2008) | 1 line
Add a method to detect the MS SDK.
................
r3730 | cournape | 2008-10-25 05:54:16 -0700 (Sat, 25 Oct 2008) | 1 line
Simplify merge_default_version: do not use MSVS_USE_DEFAULT_PATHS anymore.
................
r3731 | cournape | 2008-10-25 06:10:36 -0700 (Sat, 25 Oct 2008) | 1 line
Add functions to add sdk depending on MS toolsuite.
................
r3732 | cournape | 2008-10-25 06:11:55 -0700 (Sat, 25 Oct 2008) | 1 line
Set up the SDK in merge_default_version.
................
r3733 | cournape | 2008-10-25 06:14:08 -0700 (Sat, 25 Oct 2008) | 1 line
Use float version, not string version for FindMSVSBatFile.
................
r3734 | cournape | 2008-10-25 06:14:59 -0700 (Sat, 25 Oct 2008) | 1 line
Forgot to pass scons env argument for psdk functions.
................
r3735 | cournape | 2008-10-25 06:17:11 -0700 (Sat, 25 Oct 2008) | 1 line
Pass correct versions tring.
................
r3736 | cournape | 2008-10-25 06:17:47 -0700 (Sat, 25 Oct 2008) | 1 line
Fix typo.
................
r3737 | cournape | 2008-10-25 07:55:25 -0700 (Sat, 25 Oct 2008) | 1 line
Add MSVCCommon module to MANIFEST.
................
r3738 | cournape | 2008-10-25 08:23:30 -0700 (Sat, 25 Oct 2008) | 1 line
Add MSVCCommon to distutils setup files.
................
r3739 | cournape | 2008-10-25 08:43:40 -0700 (Sat, 25 Oct 2008) | 1 line
Include 8 in the msvs versions to Set PSDK.
................
r3740 | cournape | 2008-10-25 08:47:09 -0700 (Sat, 25 Oct 2008) | 1 line
Set up PSDK in msvc tool only.
................
r3832 | stevenknight | 2008-12-12 08:10:24 -0800 (Fri, 12 Dec 2008) | 2 lines
Set svn:ignore on the Tool/MSVCCommon subdirectory.
................
r3833 | stevenknight | 2008-12-12 08:27:06 -0800 (Fri, 12 Dec 2008) | 4 lines
When appending to the PATH, use get_system_root() instead of assuming
SYSTEMROOT is in env['ENV']. Make using get_system_root() repeatedly
more acceptable by returning a cached value after the first call.
................
r3834 | stevenknight | 2008-12-12 10:17:01 -0800 (Fri, 12 Dec 2008) | 5 lines
Define WindowsError and other necessary things (HKEY_*, RegGetValue())
on non-Windows platforms, so we can run platform-independent vs_revamp
tests on non-Windows platforms without having to teach the rest of the
code that they might not be running on a Windows system.
................
r3835 | stevenknight | 2008-12-12 10:18:30 -0800 (Fri, 12 Dec 2008) | 2 lines
Add an AppendENVPath() method to our fake Environment class.
................
r3933 | stevenknight | 2009-01-30 05:54:00 -0800 (Fri, 30 Jan 2009) | 3 lines
Add copyright statements, __revision__ specifications and __doc__ string
place-holders.
................
r3934 | stevenknight | 2009-01-30 06:39:56 -0800 (Fri, 30 Jan 2009) | 2 lines
Python 1.5 portability.
................
r3935 | stevenknight | 2009-01-30 07:12:20 -0800 (Fri, 30 Jan 2009) | 3 lines
Add copyright and __revision__, fix import module for
{Find,Parse,Merge}BatFile() (from SCons.Tool.MSVCCommon.misc).
................
r3937 | stevenknight | 2009-01-31 07:40:31 -0800 (Sat, 31 Jan 2009) | 5 lines
Fix NameError on the msvs_parse_version() call in merge_default_version().
This (showed up in test\PharLap.py. The import should be moved to the
top eventually, but would currently cause a circular error with imports
that try to find merge_default_version() itself.
................
r3938 | stevenknight | 2009-01-31 07:51:16 -0800 (Sat, 31 Jan 2009) | 2 lines
Fix 80-char line wrap on imported variables.
................
r3939 | stevenknight | 2009-01-31 08:00:44 -0800 (Sat, 31 Jan 2009) | 10 lines
Fix the test\MSVS\vs-*-exec.py tests by restoring the old
get__{default,}_visual_studio*() and get_msvs_install_dirs()
functions to src/engine/SCons/Tool/msvs.py. The last one
is still used by the test infrastructure (specifically
QMTest\TestSConsMSVS.py) to get the path to the visual studio
executable (devenv.exe). We can clean this up by removing
these wrappers in favor of better interfaces directly from
MSVCCommon, but I want to get the tests working first and
then fine-tune the aesthetics.
................
r3964 | stevenknight | 2009-02-05 06:51:32 -0800 (Thu, 05 Feb 2009) | 15 lines
First stab at refactoring SDK detection:
* Add a separate 'mssdk' tool to provide a direct interface to applying
SDK information to a construction environment. (Currently used by 'msvc'.)
* Add support for $MSSDK_DIR and $MSSDK_VERSION variables to give the
user explicit control over how to specify where to find an SDK.
* Collect information about different possibly installed SDK versions (what
sanity check file to use, what HKEY to look up) from being scattered in
multiple lists to a common list of definitions, specified by concrete
WindowsSDK and PlatformSDK subclasses of an abstract SDKDefinition
base class.
* Cache results of trying to find SDKs so we only have to go out to the
registry and disk once, regardless of how many times we're asked.
* Cache lists of variables to be appended so we only have to look for
'mfc' and 'atl' subdirectories once.
................
r3965 | stevenknight | 2009-02-05 19:34:25 -0800 (Thu, 05 Feb 2009) | 2 lines
Fix name errors in my reworking of sdk searching.
................
r3966 | stevenknight | 2009-02-05 21:34:19 -0800 (Thu, 05 Feb 2009) | 5 lines
Fix get_output() to use the subprocess.Popen.std{out,err} attributes
directly instead subprocess.Popen.communicate(), which uses the
threading module and therefore won't work on Pythons not built with
thread support.
................
r3969 | stevenknight | 2009-02-06 08:38:57 -0800 (Fri, 06 Feb 2009) | 5 lines
Fix some test errors on cygwin:
* Generalize the expected error message(s) in Install.py
* Make sure M4 is attached to all the environments.
* Use the TestSCons.file_expr expression in PCHSTOP-errors.py
................
r3971 | stevenknight | 2009-02-06 10:00:59 -0800 (Fri, 06 Feb 2009) | 2 lines
Fix use of TestSCons.file_expr.
................
r3972 | stevenknight | 2009-02-06 10:09:57 -0800 (Fri, 06 Feb 2009) | 2 lines
Fixes for use of regular expressions with must_contain_all_lines().
................
r3974 | stevenknight | 2009-02-06 10:37:40 -0800 (Fri, 06 Feb 2009) | 2 lines
Update expected error string list for Cygwin.
................
r3975 | stevenknight | 2009-02-06 10:41:38 -0800 (Fri, 06 Feb 2009) | 2 lines
Relax the expected PCH speedup to 90% of the non-PCH compilation.
................
r3976 | stevenknight | 2009-02-06 10:48:08 -0800 (Fri, 06 Feb 2009) | 2 lines
Add skeleton of XML doc of new MSSDK_* variables.
................
r3984 | garyo | 2009-02-08 08:51:52 -0800 (Sun, 08 Feb 2009) | 11 lines
Fixes for some of the failing msvsTests.py tests on vs_revamp branch.
CODE FIXES:
* SCons/Util.py: removed extra trailing backslash from registry lookup.
* Started on a path to handling vs 8.0 express in msvs.py, version.py, and common.py, but need feedback here.
TEST FIXES:
* Added a MSVS 8.0 std version test, since that's what's on my home machine. I got the fake registry data by exporting my real registry subtree.
* I changed the expected values of many of the tests to conform to what the code actually returns. I think that's right, because it's using fake registry data anyway.
* Tests now monkey-patch os.path.isfile and os.path.isdir to return true, just like os.path.exists already was.
* Improved some test error reporting and added some debug logging.
................
r3985 | stevenknight | 2009-02-08 19:58:23 -0800 (Sun, 08 Feb 2009) | 2 lines
Re-fix use of file_expr, wiped out in last merge from trunk.
................
r3986 | stevenknight | 2009-02-09 10:27:15 -0800 (Mon, 09 Feb 2009) | 2 lines
Add emacs and vim editing settings to the bottom of vs_revamp *.py files.
................
r3993 | stevenknight | 2009-02-11 05:00:55 -0800 (Wed, 11 Feb 2009) | 3 lines
Separate error message for an SDK that's not supported, vs. one that's
supported but not installed.
................
r3994 | stevenknight | 2009-02-11 05:03:51 -0800 (Wed, 11 Feb 2009) | 2 lines
Minor code cleanup.
................
r3995 | stevenknight | 2009-02-11 05:04:40 -0800 (Wed, 11 Feb 2009) | 2 lines
Link reference to $MSVS_VERSION.
................
r4000 | stevenknight | 2009-02-12 18:51:30 -0800 (Thu, 12 Feb 2009) | 12 lines
First cut at collecting the different version-specific logic from
different modules and methods and putting it in a common MSVCCommon/vs.py
module. This also basically gets rid of the separation of "version" and
"flavor" or "suite" arguments in favor of just treating Express as
separate versions, and versions are now strings, not floats: "8.0"
and "8.0Exp". (It's not like there's so much commonality between the
Express and Pro versions that keeping things synchronized will be a burden.)
This is only part way through absorbing the current API into the new
scheme and getting rid of some now-unused functions, but should support
testing from various people while that work proceeds.
................
r4001 | stevenknight | 2009-02-12 20:40:14 -0800 (Thu, 12 Feb 2009) | 3 lines
Add comments with the official Microsoft names of the different releases.
(I can never remember the mapping of names to version numbers.)
................
r4002 | stevenknight | 2009-02-12 20:41:55 -0800 (Thu, 12 Feb 2009) | 2 lines
Fix some 80-char line wrap.
................
r4012 | stevenknight | 2009-02-19 06:24:58 -0800 (Thu, 19 Feb 2009) | 3 lines
Add a $MSVS_ARCH variable and support for 'amd64' in some of
the supported Visual Studio versions. (Roberto de Vecchi)
................
r4013 | stevenknight | 2009-02-19 06:36:55 -0800 (Thu, 19 Feb 2009) | 2 lines
Fetch the VisualStudio object using .get(), not .has_key().
................
r4014 | stevenknight | 2009-02-19 06:53:31 -0800 (Thu, 19 Feb 2009) | 2 lines
Start getting rid of unnecessary code. Cosmetic cleanups. Comments.
................
r4015 | stevenknight | 2009-02-19 06:59:06 -0800 (Thu, 19 Feb 2009) | 2 lines
Move query_versions() into MSVCCommon/vs.py. Fix variable names.
................
r4016 | stevenknight | 2009-02-19 07:27:01 -0800 (Thu, 19 Feb 2009) | 3 lines
Get rid of MSVCCommon/misc.py and MSVCCommon/version.py, now that
the necessary logic has been migrated to MSVCCommon/vs.py.
................
r4017 | stevenknight | 2009-02-19 08:40:20 -0800 (Thu, 19 Feb 2009) | 2 lines
Add trailing commas.
................
r4018 | stevenknight | 2009-02-19 09:55:33 -0800 (Thu, 19 Feb 2009) | 3 lines
Get rid of one-line wrappers in msvs.py in favor of direct testing
of functions in MSVCCommon/*.py.
................
r4019 | stevenknight | 2009-02-19 11:26:29 -0800 (Thu, 19 Feb 2009) | 3 lines
Use consistent spelling of SystemDrive and SystemRoot for those
environment variables.
................
r4020 | stevenknight | 2009-02-19 13:36:05 -0800 (Thu, 19 Feb 2009) | 12 lines
Get rid of msvs.get_msvs_install_dirs(), only used by the unit tests
in msvsTests.py.
Make get_vs_by_version() public.
Update msvsTests.py with a rudimentary test for detect_msvs(),
and get rid of the test for get_msvs_install_dirs().
Remove MSVCCommon\findloc.py and MSVCCommon\defaults.py, no longer needed.
Move contents of MSVCCommon\envhelpers.py to MSVCCommon\common.py to
try to collect things, and remove MSVCCommon\envhelpers.py.
Update QMTest\TestSConsMSVS.py to use the new vs infrastructure to find
the appropriate executable (devenv.com, etc.).
Update MANIFEST.in for the removed modules.
................
r4021 | stevenknight | 2009-02-19 13:48:49 -0800 (Thu, 19 Feb 2009) | 3 lines
Rename MSVCCommon to MSCommon so it's not tied too tightly to Visual C/C++
(leaving the door a little more open for other Visual products).
................
r4022 | stevenknight | 2009-02-19 13:54:55 -0800 (Thu, 19 Feb 2009) | 2 lines
Change additional MSVCCommon references.
................
Diffstat (limited to 'src/engine/SCons/Tool/mslib.py')
-rw-r--r-- | src/engine/SCons/Tool/mslib.py | 28 |
1 files changed, 5 insertions, 23 deletions
diff --git a/src/engine/SCons/Tool/mslib.py b/src/engine/SCons/Tool/mslib.py index dcb57fa..d23f63b 100644 --- a/src/engine/SCons/Tool/mslib.py +++ b/src/engine/SCons/Tool/mslib.py @@ -39,23 +39,14 @@ import SCons.Tool.msvs import SCons.Tool.msvc import SCons.Util +from MSCommon import detect_msvs, merge_default_version + def generate(env): """Add Builders and construction variables for lib to an Environment.""" SCons.Tool.createStaticLibBuilder(env) - try: - version = SCons.Tool.msvs.get_default_visualstudio_version(env) - - if env.has_key('MSVS_IGNORE_IDE_PATHS') and env['MSVS_IGNORE_IDE_PATHS']: - include_path, lib_path, exe_path = SCons.Tool.msvc.get_msvc_default_paths(env,version) - else: - include_path, lib_path, exe_path = SCons.Tool.msvc.get_msvc_paths(env,version) - - # since other tools can set this, we just make sure that the - # relevant stuff from MSVS is in there somewhere. - env.PrependENVPath('PATH', exe_path) - except (SCons.Util.RegError, SCons.Errors.InternalError): - pass + # Set-up ms tools paths for default version + merge_default_version(env) env['AR'] = 'lib' env['ARFLAGS'] = SCons.Util.CLVar('/nologo') @@ -64,16 +55,7 @@ def generate(env): env['LIBSUFFIX'] = '.lib' def exists(env): - try: - v = SCons.Tool.msvs.get_visualstudio_versions() - except (SCons.Util.RegError, SCons.Errors.InternalError): - pass - - if not v: - return env.Detect('lib') - else: - # there's at least one version of MSVS installed. - return 1 + return detect_msvs() # Local Variables: # tab-width:4 |