SCons 0.05 is now available

Steven Knight knight@baldmt.com
Fri, 22 Feb 2002 06:38:53 -0600 (CST)


Version 0.05 of SCons has been released and is available for download
from the SCons web site:

        http://www.scons.org/

Or through the download link at the SCons project page at SourceForge:

        http://sourceforge.net/projects/scons/

RPM and Debian packages and a Win32 installer are all available, in
addition to the traditional .tar.gz files.


WHAT'S NEW IN THIS RELEASE?

Version 0.05 of SCons adds the following features:
  - A library can be specified as a $SOURCES file, not just in the LIBS
    construction variable.
  - Scanners can now return a list of strings.
  - .sconsign files are first written to a temporary file and renamed.
  - The list of variables exported to an SConscript file may now be
    a UserList, too.
  - Preliminary support for Unicode strings has been added.
  - The -q option has been added.
  - The -u option has been added.
  - SCons now scans files with .cc and .hh suffixes for #include lines.
  - A Builder's Action may now be a Python code object that *returns* a
    command line to be executed.

The following fixes have been added:
  - PROGSUFFIX is now set to .exe under Cygwin.
  - Work around for a bug in os.path.normpath() returning '' for './'
    on WIN32 systems.
  - White space in a PREFIX or SUFFIX creates separate command-line
    arguments as appropriate.
  - Fetching MicroSoft DevStudio information from the Windows
    registry has been fixed and made more robust.
  - sys.stdout is now flushed after print so it intermixes correctly
    with sys.stderr output.
  - Scanned dependencies are now relative to the directory of the file
    being scanned.
  - All of the directories for a list of targets are created before
    trying to build any of the targets.
  - Ignore() now ignores both indirect (scanned) and direct dependencies
  - The -c option no longer stops if a target doesn't exist to be removed.
  - The --debug=pdb option now works on WIN32 systems.
  - The scons script now returns an error code on build failures.

Performance has been improved as follows:
  - #include lines from a file are now cached once.
  - Dependencies are now scanned only once per file when walking the
    dependency tree.

The documentation has been improved:
  - Writing your own Scanners is now documented.
  - The LIBPATH construction variable is now documented.
  - The man page is now included in the Debian distribution.
  - HTML documents are cleaned up by running them through tidy.


WHAT IS SCONS?

SCons is a software construction tool (build tool, make tool) written
in Python.  Its design is based on the design which won the Software
Carpentry build tool competition in August 2000 (in turn derived from
the Perl-based Cons build tool).

Distinctive features of SCons include:

  - configuration files are Python scripts, allowing the full use of a
    real scripting language to solve build problems
  - a modular architecture allows the SCons Build Engine to be
    embedded in other Python software
  - a global view of all dependencies; no multiple passes to get
    everything built
  - the ability to scan files for implicit dependencies (#include files);
  - improved parallel build (-j) support
  - use of MD5 signatures to decide if a file has changed
  - easily extensible through user-defined Builder and Scanner objects

An scons-users mailing list has been created for those interested in
getting started using SCons.  You can subscribe at:

        http://lists.sourceforge.net/lists/listinfo/scons-users

Alternatively, we invite you to subscribe to the low-volume
scons-announce mailing list to receive notification when new versions of
SCons become available:

        http://lists.sourceforge.net/lists/listinfo/scons-announce


ACKNOWLEDGEMENTS

Special thanks to Chad Austin, Charles Crain, Steve Leblanc, and Anthony
Roach for their contributions to this release.

On behalf of the SCons team,

	--SK