1 # Copyright (c) 2001 Steven Knight
2 # __FILE__ __REVISION__ __DATE__ __DEVELOPER__
5 SCons - a software construction tool
11 RELEASE 0.03 - Fri, 11 Jan 2002 01:09:30 -0600
15 - Performance improvements in the Node.FS and Sig.Calculator classes.
17 - Add the InstallAs() method.
19 - Execute commands through an external interpreter (sh, cmd.exe, or
20 command.com) to handle redirection metacharacters.
22 - Allow the user to supply a command handler.
26 - Search both /usr/lib and /usr/local/lib for scons directories by
27 adding them both to sys.path, with whichever is in sys.prefix first.
29 - Fix interpreting strings of multiple white-space separated file names
30 as separate file names, allowing prefixes and suffixes to be appended
33 - Refactor to move CompositeBuilder initialization logic from the
34 factory wrapper to the __init__() method, and allow a Builder to
35 have both an action and a src_builder (or array of them).
37 - Refactor BuilderBase.__call__() to separate Node creation/lookup
38 from initialization of the Node's builder information.
40 - Add a CFile Builder object that supports turning lex (.l) and
41 yacc (.y) files into .c files.
43 - Document: variable interpretation attributes; how to propogate
44 the user's environment variables to executed commands; how to
45 build variants in multiple BuildDirs.
47 - Collect String, Dict, and List type-checking in common utility
48 routines so we can accept User{String,Dict,List}s all over.
50 - Put the Action factory and classes into their own module.
52 - Use one CPlusPlusAction in the Object Builder's action dictionary,
53 instead of letting it create multiple identical instances.
55 - Document the Install() and InstallAs() methods.
59 - Require that a Builder be given a name argument, supplying a
60 useful error message when it isn't.
64 - Add a "duplicate" keyword argument to BuildDir() that can be set
65 to prevent linking/copying source files into build directories.
67 - Add a "--debug=tree" option to print an ASCII dependency tree.
69 - Fetch the location of the Microsoft Visual C++ compiler(s) from
70 the Registry, instead of hard-coding the location.
72 - Made Scanner objects take Nodes, not path names.
74 - Have the C Scanner cache the #include file names instead of
75 (re-)scanning the file each time it's called.
77 - Created a separate class for parent "nodes" of file system roots,
78 eliminating the need for separate is-parent-null checks everywhere.
80 - Removed defined __hash__() and __cmp() methods from FS.Entry, in
81 favor of Python's more efficient built-in identity comparisons.
85 RELEASE 0.02 - Sun, 23 Dec 2001 19:05:09 -0600
89 - Added the Install(), BuildDir(), and Export() methods.
91 - Fix the -C option by delaying setting the top of the FS tree.
93 - Avoid putting the directory path on the libraries in the LIBS
94 construction variable.
96 - Added a GetBuildPath() method to return the full path to the
97 Node for a specified string.
99 - Fixed variable substitution in CPPPATH and LIBPATH.
103 - Fixed the version comment in the scons.bat (the UNIX geek used
106 - Fix to setup.py so it doesn't require a sys.argv[1] argument.
108 - Provide make-like warning message for "command not found" and
111 - Added an EXAMPLES section to the man page.
113 - Make Default() targets properly relative to their SConscript
118 - Documented CXXFLAGS, CXXCOM, and CPPPATH.
120 - Fixed SCONS_LIB_DIR to work as documented.
122 - Made Default() accept Nodes as arguments.
124 - Changed Export() to make it easier to use.
126 - Added the Import() and Return() methods.
130 RELEASE 0.01 - Thu Dec 13 19:25:23 CST 2001
132 A brief overview of important functionality available in release 0.01:
134 - C and C++ compilation on POSIX and Windows NT.
136 - Automatic scanning of C/C++ source files for #include dependencies.
138 - Support for building libraries; setting construction variables
139 allows creation of shared libraries.
141 - Library and C preprocessor search paths.
143 - File changes detected using MD5 signatures.
145 - User-definable Builder objects for building files.
147 - User-definable Scanner objects for scanning for dependencies.
149 - Parallel build (-j) support.
151 - Dependency cycles detected.
153 - Linux packages available in RPM and Debian format.
155 - Windows installer available.