ANNOUNCE: SCons goes beta w/release 0.90, adds Visual Studio support

Steven Knight
Wed, 25 Jun 2003 21:50:20 -0500 (CDT)

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.

        SHAMELESS PLUG:  Come attend the SCons BOF at the O'Reilly Open
        Source convention, Thursday, July 10th from 7:00 to 8:00 p.m.

Beta version 0.90 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.


IMPORTANT:  Release 0.90 contains the following interface changes:
  - SCons now checks for the existence of Microsoft Visual Studio on
    disk before using it (to avoid getting misled by bogus stuff left
    over in the registry).  SCons might not find a copy of Visual
    Studio if it's an older version that installed itself in a default
    directory that we haven't seen before; please let us know if that
    seems to be the case.

  See the release notes for more information about these changes.

This release adds the following features:
  - SCons now supports Microsoft Visual Studio .NET.
  - SCons now support Microsoft Visual Studio project
    (.dsp, .dsw, .sln and .vcproj) files.
  - An M4 Builder has been added.
  - Support for the Intel C Compiler (icl.exe) has been added.
  - The SConf subsystem can now check for specific functions and types.

The following fixes have been added:
  - Portability to non-GNU versions of lex and yacc has been improved.
  - Library prefixes now work correctly in a subdirectory that matches
    the prefix.
  - Options are now saved as their actual value type (not all as
    strings), values that contain single quotes are now stored
    correctly, and any non-default Option values is stored regardless of
    how it was changed.
  - The temporary file name used to link long command line on Win32
    systems now has a .lnk suffix (necessary for some tool chains).
  - SCons now generates an error if a construction variable is
    not the same form as a valid Python identifier.
  - The "-h" option no longer requires the distutils package.
  - Up-to-date messages now quote the targets like Make
    (`backquote-quote') instead of with double quotes.
  - SCons now correctly builds targets above the current directory
    when the -u, -U or -D options are used.
  - The -n option no longer updates the .sconsign file signatures.
  - Import('*') to import all Export()ed variables now works properly.
  - The SConf subsystem now works properly with the -n and -q options,
    when using SConscriptChdir(), with paths containing white space, and
    with Builders that return lists of nodes.

The documentation has been improved:
  - A bug in the _concat() function documentation has been fixed.
  - The no_import_lib construction variable is now documented.
  - Added clarifying text that $*FLAGS variables do not automatically
    contain their corresponding $_*INCFLAGS values.
  - New features have been documented.


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 Chad Austin, Matt Balvin, Timothee Bessett, Charles
Crain, Steve Leblanc, Gary Oberbrunner, Anthony Roach, David Snopek,
Greg Spencer and Christoph Wiedemann for their contributions to this

On behalf of the SCons team,