ANNOUNCE: SCons 0.94 adds command-line argument features, fixes
Fri, 7 Nov 2003 06:51:49 -0600 (CST)
SCons is a software construction tool (build tool, or make tool) written
in Python. It is based on the design which won the Software Carpentry
build tool competition in August 2000.
Version 0.94 of SCons has been released and is available for download
from the SCons web site:
Or through the download link at the SCons project page at SourceForge:
RPM and Debian packages and a Win32 installer are all available, in
addition to the traditional .tar.gz and .zip files.
WHAT'S NEW IN THIS RELEASE?
This release adds the following features:
- A new AddOptions() method makes it easier to add multiple command-line
option specifications in a single call.
- New BoolOption(), EnumOption(), ListOption(), PackageOption() and
PathOption() functions provide canned initialization for several
useful types of common option behavior.
- New BUILD_TARGETS, COMMAND_LINE_TARGETS and DEFAULT_TARGETS variables
provide access to the lists of targets specified on the command line
or through calls to the Default() function or method.
The following fixes have been added:
- The use of CPPDEFINES with C++ source files has been fixed.
- The env.Append() method now works properly when the operand
is an object with a __cmp__() method (like a Scanner instance).
- Subclassing the Environment and Scanner classes has been fixed.
- C++ compilation with the SGI compiler has been fixed.
- C and C++ compilation with AIX compiler has been fixed.
The documentation has been improved:
- The man page un-indented correctly after examples in some browsers;
this has been fixed.
- Use of the Options() object to control command-line options has
been documented in the User's Guide.
- New features have been documented in the man page and User's Guide.
Distinctive features of SCons include:
- a global view of all dependencies; no multiple passes to get
everything built properly
- configuration files are Python scripts, allowing the full use of a
real scripting language to solve difficult build problems
- a modular architecture allows the SCons Build Engine to be
embedded in other Python software
- The ability to scan files for implicit dependencies (#include files);
- improved parallel build (-j) support that provides consistent
build speedup regardless of source tree layout
- use of MD5 signatures to decide if a file has really changed; no
need to "touch" files to fool make that something is up-to-date
- easily extensible through user-defined Builder and Scanner objects
- build actions can be Python code, as well as external commands
An scons-users mailing list is available for those interested in getting
started using SCons. You can subscribe at:
Alternatively, we invite you to subscribe to the low-volume
scons-announce mailing list to receive notification when new versions of
SCons become available:
Special thanks to Hartmut Goebel, Steve Leblanc, Gary Oberbrunner and
Vincent Risi for their contributions to this release.
On behalf of the SCons team,