Menu

SCons 0.12 is now available

SCons alpha release 0.12 is now available for download. SCons is a software construction tool (build tool, or substitute for Make) implemented in Python, based on the winning design in the Software Carpentry build tool competition (in turn based on the Cons build tool).

IMPORTANT: Release 0.12 contains the following interface changes:
- SCons now changes to the directory in which an SConscript file resides while reading that SConscript file.

See the release notes for more information about this change.

This release adds the following features:
- Support has been added for fetching source files from the SCCS, RCS, CVS, Perforce and BitKeeper source code management systems.
- A separate src_dir argument to SConscript() allows explicit specification of where source files can be found.
- Current Builder-based command generators can be replaced by more flexible generators based on callable construction variables.
- The Install() and InstallAs() builders now copy files. This behavior is now configurable via the INSTALL construction variable.
- SCons now issues a warning if you try to use the reserved variable names TARGET, TARGETS, SOURCE or SOURCES.
- Builders for Tar and Zip files have been added.
- SCons now supports an explicit Exit() function for terminating early.
- The masm tool now supports SharedObject() builds.

This release removes the following deprecated features:
- Builder objects no longer support a "name" argument.
- The Environment.Update() method has been removed.

The following fixes have been added:
- The string value of a File or Dir node now rturns a path relative to the calling SConscript file's directory, not the top-level directory.
- Commands that expand the third or later argument from $TARGET, $TARGETS, $SOURCE or $SOURCES now calculate signatures properly.
- Exceptions thrown by Scanners are no longer silently eaten.
- A built file may no longer be pushed to a CacheDir() with a signature of None.
- Built files are no longer copied to a CacheDir() if they're already there.
- Files copied to a CacheDir() are now written to a temporary file and renamed, to avoid corrupt partial copies.
- The -U option with no Default() targets no longer throws an exception.
- The -u option, when used from a source directory with no local targets, will now build corresponding targets in any associated BuildDir()s.
- The WhereIs() function now returns normalized path names.
- An Aliased source that doesn't exist no longer generates an incorrect dependency-cycle error.

Performance has been improved as follows:
- The internal to_String() function has been sped up.

The documentation has been improved:
- Clearer explanation has been added of how to export variables to a subsidiary SConscript file.
- Bugs in various Tool examples have been fixed.
- The man page now correctly describes that the -f option doesn't change to the directory in which the SConstruct file lives.

Posted by Steven Knight 2003-03-28

Log in to post a comment.