A new SCons release, 1.3, is now available at the SCons download page:
Please consult the CHANGES.txt file for a list of specific changes
since last release.
Here is a summary of the changes since 0.XX:
-- Visual Studio now supports cross-compilation. Please see below for the methods and compilation variables. -- Support for Latex glossaries and acronyms has been added -- New Textfile builder -- MSVC now supports batch compilation with $MSVC_BATCH
In keeping with our deprecation cycle, the following deprecated features will still be supported in 1.3.0 but will generate mandatory, non-disableable warnings: -- Support for Python versions 1.5, 1.6, 2.0, 2.1, 2.2, and 2.3. -- The overrides= keyword argument to the Builder() call. -- The scanner= keyword argument to the Builder() call. -- The BuildDir() function and env.BuildDir() method. -- The env.Copy() method. -- The SourceSignatures() function and env.SourceSignatures() method. -- The TargetSignatures() function and env.TargetSignatures() method. -- The Sig module (now an unnused stub). -- The --debug=dtree, --debug=stree and --debug=tree options. -- The --debug=nomemoizer option. -- The Options object and the related BoolOption(), EnumOption(), ListOption(), PackageOption() and PathOption() functions. The mandatory warnings will be issued in order to make sure users of 1.3.0 notice *prior* to the release of SCons 2.0.0, that these features will be removed. In SCons 2.0.0 these features will no longer work at all, and will instead generate specific fatal errors when anyone tries to use them.
CHANGED/ENHANCED EXISTING FUNCTIONALITY
-- MICROSOFT VISUAL STUDIO VERSION/ARCH DETECTION HAS CHANGED The way SCons detects Visual Studio on Windows has changed in 1.3. By default, it should now use the latest installed Visual Studio version on your machine, and compile for 32 or 64 bits according to whether your OS is 32 or 64 bits (32/64 bit python makes no difference). Two new variables control Visual Studio: MSVC_VERSION and TARGET_ARCH. These variables ONLY take effect when passed to the Environment() constructor; setting them later has no effect. To use a non-default Visual Studio version, set MSVC_VERSION to e.g. "8.0" or "7.1". Setting it to "xxx" (or any nonexistent value) will make it print out the valid versions on your system. To use a non-default architecture, set TARGET_ARCH to "x86" or "x86_64" (various synonyms are accepted). In addition, MSVC_USE_SCRIPT can be used to bypass the above autodetection; setting it to the path of a Visual Studio .bat file (e.g. vcvars.bat) will cause SCons to run that bat file and extract the relevant variables from the result (typically %INCLUDE%, %LIB%, and %PATH%). Setting MSVC_USE_SCRIPT to None bypasses the Visual Studio autodetection entirely; use this if you are importing the shell env and running SCons in a Visual Studio cmd window. Note that if you use MSVS_VERSION to build Visual Studio projects from your SConstructs, MSVS_VERSION must be set to the same version as MSVC_VERSION. Support for HOST_OS,HOST_ARCH,TARGET_OS, TARGET_ARCH has been added to allow specifying different target arch than the host system. This is only supported for Visual Studio/Visual C++ at this time. -- MSVS_USE_MFC_DIRS and MSVS_IGNORE_IDE_PATHS are obsoleted and have no effect.
FIXES & IMPROVEMENTS
There are many fixes and improvements in this release; see CHANGES.txt for a complete list.
Thanks to Luca Falavigna, Gottfried Ganssauge, Rob Managan, Steven
Knight, James Teh, William Deegan, Jim Randall, David Cournapeau,
Lukas Erlinghagen, Hartmut Goebel, Jared Grubb, Jim Hunziker, Jason
Kenney, Greg Noel, Gary Oberbrunner, Ben Webb, Stanislav Baranov,
Robert P. J. Day, Dan Eaton, Allan Erskine, Mateusz Gruca, Ted
Johnson, Arve Knudsen, Zia Sobhani, Greg Spencer, Roberto de Vecchi,
and Matthew Wesley for contributions to this release.