Hi Andrew,
Thanks!
Andrew Wilkinson wrote:
On 1/7/07, Peter Tanski wrote:
I looked at Issue 49, on setting the correct environment variables
for a Visual Studio (Visual C++) toolset using vcvars32.bat or
whatever the correct batch file is (see below)...
... Getting the right environment variables is probably complicated
enough to warrant a new file with a function called from build/
platform.py,
but it could be included in the same function.
It would also be easier to modify later on. Am I correct that "vc"
is the MS CL compiler?
The basic strategy I want to try is this:
1. find the correct Visual Studio build by querying the system ...
The dictionary os.environ is probably what you're looking for.
2. find the correct vcvars32.bat or vsvars32.bat ... The easiest
solution is to query the settings in the Registry... I haven't
explored this thoroughly and expect there is some cool Python or
scons function for that purpose.)
http://sourceforge.net/projects/pywin32/ will let you query the
registry.
I'm not sure if it is included in the main Python windows
installer, but it
is definitely include in ActiveState's ActivePython.
The Python 2.5 Windows installer includes _winreg, as well.
3. run the batch file and query the environment variables
Is the batch file simple enough to use regular expressions to
extract the
values? That might be easier?
It could be parsed but in many cases and for different versions of
VS, the main batch file calls other batch files. I discovered a MS
tool, Program Files\Microsoft Platform SDK [version, type]\Setup
\VCDetect.Exe that will find the correct vsvars32.bat.
4. propagate the variables into scons ENV
... after this, if Yhc ever needs the Visual Studio tools again, it
might be able to perform the same process after (or during)
installation.
This is as simple as
env["CC"] = "path to compiler"
Very nice :)
Cheers,
Pete
_______________________________________________
Yhc mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/yhc