|
IMPORTANT: Release 0.96 contains the following interface changes:
- All Builder calls now return a *list* of Nodes, even when the Builder
only builds one file. This may require SConscript file changes if
you were manipulating the return values from Builders.
- The SConsignFile() function now uses a different internal database
format by default. This will cause a rebuild when you upgrade to
0.96 unless you modify your SConsignFile() call.
- The internal format of .sconsign files has been changed. The change
was coded to be backwards-compatible, but there might be corner
cases that cause warnings about "ignoring corrupt .sconsign files"
and rebuilds when you use SCons 0.96 for the first time in an
already-built tree.
- The scan_check function that can be supplied to a custom Scanner now
must take two arguments, the Node to be checked and a construction
environment. It previously only used the Node as an argument.
- The internal "node_factory" and "scanner" keyword arguments have
been removed from the Builder() function, in favor of separate
"target_factory," "source_factory," "target_scanner" and
"source"scanner" keywords, which are now documented.
- The Scanner add_skey() function has been dropped in favor of using
construction variables for the lists of file suffixes known to
a Scanner.
- File name extensions that contain all digits are now assumed to
be version numbers and treated as part of the file basename.
- The env.Append() and env.Prepend() methods have been changed to
behave like the rest of Python when either argument is a UserList.
See the release notes for more information about these changes.
This release adds the following new features:
- A new --debug=explain option tells SCons to report the reason(s)
why it thinks it must rebuild something.
- New Moc() and Uic() Builders provide more explicit control over
Qt builds, plus new construction variables to control them:
$QT_AUTOSCAN, $QT_DEBUG, $QT_MOCCXXPREFIX, $QT_MOCCXXSUFFIX,
$QT_MOCHPREFIX, $QT_MOCHSUFFIX, $QT_UICDECLPREFIX, $QT_UICDECLSUFFIX,
$QT_UICIMPLPREFIX, $QT_UICIMPLSUFFIX and $QT_UISUFFIX.
- Support for Fortran 90 and Fortran 95 has been added.
- The newer "ifort" versions of the Intel Fortran Compiler for Linux
are now supported.
- New functions have been added to return platform-independent Actions
that Chmod(), Copy(), Delete(), Mkdir(), Move() and Touch() files
and/or directories.
- A new Execute() function can now execute Actions directly at
SConscript-read time.
- A new $RPATH variable has been added that specifies a list of
directories for the GNU and IRIX linkers to search for shared
libraries.
- New $CPPSUFFIXES, $DSUFFIXES, $FORTRANSUFFIXES and $IDLSUFFIXES
variables have been added that make it easier to arrange for
additional file suffixes to be scanned by the default Scanners.
- A new Flatten() function can be used to turn nested lists of Nodes
(or other arguments) into a flat list.
- A new --debug=presub option prints the commands to be executed before
their construction variables are expanded.
- A new .win32 Node attribute will expand file names with Windows
backslash path separators on any system.
- A new ARGLIST variable makes it possible to fetch keyword=value
arguments in the order specified on the command line.
- Support has been added for the .dylib shared library suffix
and -dynamiclib linker option on Mac OS X (darwin).
For a complete list see the included CHANGES.txt.
|