Prepare for release 0.04.
authorstevenknight <stevenknight@fdb21ef1-2011-0410-befe-b5e4ea1792b1>
Wed, 30 Jan 2002 21:42:23 +0000 (21:42 +0000)
committerstevenknight <stevenknight@fdb21ef1-2011-0410-befe-b5e4ea1792b1>
Wed, 30 Jan 2002 21:42:23 +0000 (21:42 +0000)
git-svn-id: http://scons.tigris.org/svn/scons/trunk@233 fdb21ef1-2011-0410-befe-b5e4ea1792b1

12 files changed:
HOWTO/release.txt
LICENSE [new file with mode: 0644]
README
SConstruct
debian/changelog
src/CHANGES.txt
src/README.txt
src/RELEASE.txt
template/Tests.py
template/__init__.py
template/file.py
template/test.py

index 6a210ba937a427b50c421ef71da1c35eb280bdf0..441e33df6ac129dced6368cf2e471e53ff468664 100644 (file)
@@ -1,4 +1,4 @@
-Things to do to release a version of SCons:
+Things to do to release a new version of SCons:
 
        Build and test candidate packages
 
@@ -20,7 +20,7 @@ Things to do to release a version of SCons:
                           cd scons-src-{version}
                           python runtest.py -a -x C:\Python15\scons.bat
 
-       Read through the README.txt file for any updates
+       Read through the README and src/README.txt files for any updates
 
        Prepare src/CHANGES.txt
 
@@ -33,8 +33,11 @@ Things to do to release a version of SCons:
 
                date -R the latest release
 
-               Can probably keep a lot of the existing text, read
-               it through to make sure it's okay and edit appropriately.
+               Read through to make sure it's okay and edit appropriately.
+
+               Can probably keep most of the existing text
+
+               Add any new known problems
 
        Prepare debian/changelog
 
@@ -66,13 +69,13 @@ Things to do to release a version of SCons:
 
                aenbr -p scons.0 {5}
 
-               aenc -p {scons.0.5}
+               aenc -p scons.0.{5}
 
                         Call it something like, "Initialize the new
                         branch."  Cause = internal_enhancement.  Exempt
                         it from all tests (*_exempt = true).
 
-               ae_p scons.0.5
+               ae_p scons.0.{5}
 
                aedb 100
 
@@ -85,9 +88,13 @@ Things to do to release a version of SCons:
                vi Construct debian/changelog rpm/scons.spec
 
                # Optionally, do the same in the following:
-               [optional] aecp HOWTO/change.txt debian/scons.postinst
+               [optional] aecp HOWTO/change.txt
+               [optional] aecp HOWTO/release.txt
+               [optional] aecp debian/scons.postinst
 
-               [optional] vi HOWTO/change.txt debian/scons.postinst
+               [optional] vi HOWTO/change.txt
+               [optional] vi HOWTO/release.txt
+               [optional] vi debian/scons.postinst
 
                aeb
 
@@ -229,8 +236,8 @@ Template release announcement:
 
 
 
-I'm pleased to announce that version 0.XXX of SCons has been released
-and is available for download from the SCons web site:
+Version 0.XXX of SCons has been released and is available for download
+from the SCons web site:
 
         http://www.scons.org/
 
@@ -241,6 +248,19 @@ 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 files.
 
+
+WHAT'S NEW IN THIS RELEASE?
+
+Version 0.XXX of SCons contains the following important changes:
+
+  - XXX
+
+For a complete list of changes in version 0.04, see the CHANGES.txt
+file in the release itself.
+
+
+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
@@ -270,6 +290,9 @@ SCons become available:
 
         http://lists.sourceforge.net/lists/listinfo/scons-announce
 
+
+ACKNOWLEDGEMENTS
+
 Special thanks to XXX for his/her/their contributions to this release.
 
 On behalf of the SCons team,
diff --git a/LICENSE b/LICENSE
new file mode 100644 (file)
index 0000000..6b9799c
--- /dev/null
+++ b/LICENSE
@@ -0,0 +1,20 @@
+Copyright (c) 2001, 2002 Steven Knight
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be included
+in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY
+KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
+WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/README b/README
index d865b7b260cfcdc9199995a05b96e0d17086c124..34e27c8c37df27d0775cefca8870f77d84f83aaf 100644 (file)
--- a/README
+++ b/README
-Welcome to the SCons development tree.  Here's a brief guide (not
-guaranteed to be up-to-date) to what you'll find herein:
+# Copyright (c) 2001, 2002 Steven Knight
 
-admin/
-       Documentation of SCons administrative procedures.  Maybe
-       other administrative stuff in the future.
+                 SCons - a software construction tool
+
+Welcome to the SCons development tree.  The purpose of this tree is
+not just to hack SCons code, but to package SCons for production
+distribution.
+
+To that extent, the normal development cycle (enforced by Aegis) is not
+to test the code directly, but to package SCons, unpack the package,
+"install" SCons in a test subdirectory, and then to run the tests
+against the unpacked and installed software.  This helps eliminate
+problems caused by, for example, failure to update the list of files to
+be packaged.
+
+Note that if all you want to do is install and run SCons, it
+will probably be easier for you to download and install the
+scons-{version}.tar.gz package rather than to work with the packaging
+logic in this tree.
+
+
+LATEST VERSION
+==============
+
+Before going further, you can check that this package you have is the
+latest version at the SCons download page:
+
+        http://www.scons.org/download.html
+
+
+INSTALLATION
+============
+
+To install SCons from this package, you must first populate the
+build/scons/ directory.  (For an easier way to install SCons, without
+having to populate this directory, use the scons-{version}.tar.gz
+package.)
+
+If you already have an appropriate version of SCons installed on your
+system, populate the build/scons/ directory by running:
+
+        $ scons build/scons
+
+If you don't have SCons version 0.04 or later already installed on your
+system, you can use SCons itself to populate the build/scons/ directory
+with a little more work:
+
+        $ SCONS_LIB_DIR=`pwd`/src/engine python src/script/scons.py build/scons
+
+Either command populates the build/scons/ directory with the necessary
+files and directory structure to use the Python-standard setup script as
+follows:
+
+        # cd build/scons
+        # python setup.py install
+
+This will install the scons script in the default system script
+directory (/usr/bin or C:\Python*\Scripts, for example) and the build
+engine in an appropriate SCons library directory (/usr/lib/scons or
+C:\Python*\SCons, for example).
+
+You should have system installation privileges (that is, "root" or
+"Administrator") when running the setup.py script to install SCons in
+the default system directories.
+
+If you don't have system installation privileges, you can use the
+--prefix option to specify an alternate installation location, such as
+your home directory:
+
+        $ cd build/scons
+        $ python setup.py install --prefix=$HOME
+
+This will install the scons script itself in $HOME/bin and the
+associated library in $HOME/lib/scons
+
+
+TESTING
+=======
+
+Tests are run by the runtest.py script in this directory.
+
+There are two types of tests in this package.  Unit tests for individual
+SCons modules live underneath the src/engine/ subdirectory and are the
+same base name as the module with "Tests.py" appended--for example,
+the unit test for the Builder.py module is the BuilderTests.py script.
+End-to-end tests of SCons live in the test/ subdirectory.
+
+You may specifically list one or more tests to be run:
+
+        $ python runtest.py src/engine/SCons/BuilderTests.py
+
+        $ python runtest.py test/option-j.py test/Program.py
+
+Alternatively, the runtest.py script takes a -a option that searches
+the tree for all of the tests and runs them:
+
+        $ python runtest.py -a
+
+If more than one test is run, the runtest.py script prints a summary
+of how many tests passed, failed, or yielded no result, and lists any
+unsuccessful tests.
+
+The above invocations all test directly the files underneath the src/
+subdirectory, and do not require that a build be performed first.  The
+runtest.py script supports supports additional options to run tests
+against unpacked packages in the build/test*/ subdirectories.  This is
+in the process of being reworked for the next release, however, so for
+now, see the comments in the runtest.py script itself if you want to run
+tests against a package.
+
+
+BUILDING PACKAGES
+=================
+
+We now use SCons (version 0.04 or later) to build its own packages.
+If you already have an appropriate version of SCons installed on your
+system, you can build everything by simply running it:
+
+        $ scons
+
+If you don't have SCons version 0.04 or later already installed on your
+system, you can build this version of SCons with itself with a little
+more work:
+
+        $ SCONS_LIB_DIR=`pwd`/src/engine python src/script/scons.py
+
+Depending on the utilities installed on your system, any or all of the
+following packages will be built:
+
+        build/dist/scons-0.04-1.noarch.rpm
+        build/dist/scons-0.04-1.src.rpm
+        build/dist/scons-0.04.linux-i686.tar.gz
+        build/dist/scons-0.04.tar.gz
+        build/dist/scons-0.04.win32.exe
+        build/dist/scons-doc-0.04.tar.gz
+        build/dist/scons-src-0.04.tar.gz
+        build/dist/scons_0.04-1_all.deb
+
+The SConstruct file is supposed to be smart enough to avoid trying to
+build packages for which you don't have the proper utilities installed.
+For example, if you don't have Debian packaging tools installed, it
+should just not build the .deb package, not fail the build.
+
+If you receive a build error, please report it to the scons-devel
+mailing list.
+
+Note that in addition to creating the above packages, the default build
+will also unpack one or more of the packages for testing.
+
+
+CONTENTS OF THIS PACKAGE
+========================
+
+Not guaranteed to be up-to-date (but better than nothing):
+
+bin/
+        Miscellaneous utilities used in SCons development.  Right now,
+        there's a copy of the script we use to translate an Aegis change
+        into a CVS checkin.
 
 build/
-        This doesn't exist if you're looking at a vanilla source tree.
-        This is generated as part of our build process, and it's where,
-        believe it or not, we *build* everything.
+        This doesn't exist yet if you're looking at a vanilla source
+        tree.  This is generated as part of our build process, and it's
+        where, believe it or not, we *build* everything.
 
 Construct
-        The "Makefile" for the SCons distribution.  Yes, we're using
-        Cons to build its improved stepchild.  (Of course, this will
-        change to an SConstruct file as soon as we have SCons to the
-        point where it can handle the functionality we need...)
+        The old "Makefile" Cons-based for the SCons distribution.  This
+        is obsolete as of version 0.04, but it's being left around for a
+        little while, just in case...
 
 config
         The Aegis configuration, governing much of how we use Aegis to
         build, test, control source, etc.
 
 debian/
-       Files needed to construct a Debian package. The contents of this
-       directory are dictated by the Debian Policy Manual
-       (http://www.debian.org/doc/debian-policy). The package will not be
-       accepted into the Debian distribution unless the contents of this
-       directory satisfy the relevant Debian policies.
+        Files needed to construct a Debian package. The contents of this
+        directory are dictated by the Debian Policy Manual
+        (http://www.debian.org/doc/debian-policy). The package will not be
+        accepted into the Debian distribution unless the contents of this
+        directory satisfy the relevant Debian policies.
+
+doc/
+        SCons documentation.  A variety of things here, in various
+        stages of (in)completeness.
 
 etc/
         A subdirectory for miscellaneous things that we need.  Right
@@ -33,27 +189,119 @@ etc/
         and which we don't want to force people to have to install on
         their own just to help out with SCons development.
 
+HOWTO/
+        Documentation of SCons administrative procedures (making a
+        change, releasing a new version).  Maybe other administrative
+        stuff in the future.
+
+README
+        What you're looking at right now.
+
+rpm/
+        The .spec file for building our RPM packages.
+
 runtest.py
-       Script for running our tests.  By default, this will run a
-       test against the code in the local src/ tree, so you don't
-       have to do a build before testing your changes.  Aegis uses
-       it with an option that requires that you've done a build
-       (aeb) before running tests.
+        Script for running our tests.  By default, this will run a
+        test against the code in the local src/ tree, so you don't
+        have to do a build before testing your changes.  Aegis uses
+        it with an option that requires that you've done a build
+        (aeb) before running tests.
 
 SConstruct
-        The new "Makefile" for the SCons distribution, as soon as we
-        have SCons to the point where it can build itself.  THIS IS
-       NOT READY YET.
+        The "Makefile" for the SCons distribution.
 
 src/
-       Where the actual source code is kept, of course.
+        Where the actual source code is kept, of course.
 
 template/
         Template files, used by Aegis to give you a head start when you
-        aenf or aent a new file.  I haven't been keeping these up to
-       date...
+        aenf or aent a new file.
 
 test/
         End-to-end tests of the SCons utility itself.  These are
         separate from the individual module unit tests, which live
         side-by-side with the modules under src/.
+
+
+DOCUMENTATION
+=============
+
+See the src/RELEASE.txt file for notes about this specific release,
+including known problems.  See the src/CHANGES.txt file for a list of
+changes since the previous release.
+
+The doc/man/scons.1 man page is included in this package, and contains a
+section of small examples for getting started using SCons.
+
+Additional documentation for SCons is available at:
+
+        http://www.scons.org/doc.html
+
+
+LICENSING
+=========
+
+SCons is distributed under the MIT license, a full copy of which is
+available in the LICENSE.txt file. The MIT license is an approved Open
+Source license, which means:
+
+        This software is OSI Certified Open Source Software.  OSI
+        Certified is a certification mark of the Open Source Initiative.
+
+More information about OSI certifications and Open Source software is
+available at:
+
+        http://www.opensource.org/
+
+
+REPORTING BUGS
+==============
+
+You can report bugs either by following the "Tracker - Bugs" link
+on the SCons project page:
+
+        http://sourceforge.net/projects/scons/
+
+or by sending mail to the SCons developers mailing list:
+
+        scons-devel@lists.sourceforge.net
+
+
+MAILING LISTS
+=============
+
+A mailing list for developers of SCons is available.  You may send
+questions or comments to the list at:
+
+        scons-devel@lists.sourceforge.net
+
+You may request a subscription to the scons-devel mailing list at:
+
+        http://lists.sourceforge.net/lists/listinfo/scons-devel
+
+Subscription to the list is by approval.  In practice, no one is being
+refused list membership right now, but we reserve the right to limit
+membership in the future and/or weed out lurkers.
+
+
+FOR MORE INFORMATION
+====================
+
+Check the SCons web site at:
+
+        http://www.scons.org/
+
+
+AUTHOR INFO
+===========
+
+Steven Knight
+knight at baldmt dot com
+http://www.baldmt.com/~knight/
+
+With more than a little help from the SCons Development team:
+        Chad Austin
+        Charles Crain
+        Steve Leblanc
+        Anthony Roach
+
index edc302361add67279b1ab4736c08ff0543ab4f28..c07e0201876e5d14fad9e8c51e01ff34882ebebb 100644 (file)
@@ -1,7 +1,5 @@
 #
-# SConstruct file to build scons during development.
-#
-# THIS IS NOT READY YET.  DO NOT TRY TO BUILD SCons WITH ITSELF YET.
+# SConstruct file to build scons packages during development.
 #
 
 #
index fb933233c45cb1c49c38f4a8efa90932cb2153b3..eec9d2530cc783299424cef1ee04e5bb4fc46f68 100644 (file)
@@ -2,7 +2,7 @@ scons (0.04-1) unstable; urgency=low
 
   * Fourth Release.
 
- -- Steven Knight <knight@baldmt.com>  Fri, 11 Jan 2002 01:51:19 -0600
+ -- Steven Knight <knight@baldmt.com>  Wed, 30 Jan 2002 11:09:42 -0600
 
 
 scons (0.03-1) unstable; urgency=low
index b0f9fee8808424ff6599448649d1cbe285a558af..c448ce073b941a3dbf57f30e8cdb9707d2b464d9 100644 (file)
@@ -8,7 +8,7 @@
 
 
 
-RELEASE 0.04 - 
+RELEASE 0.04 - Wed, 30 Jan 2002 11:09:42 -0600
 
   From Charles Crain:
 
index 427fabaa3ddd0048730ac78dcbd51bd5a2edd70c..27ca337082d3613964523ec4939a69bc65000555 100644 (file)
@@ -35,13 +35,23 @@ script as follows:
 
         # python setup.py install
 
-This will install the scons script in the default script directory
-(/usr/bin or C:\Python*\Scripts, for example) and the build engine in an
-appropriate SCons library directory (/usr/lib/scons or C:\Python*\SCons,
-for example).
+This will install the scons script in the default system script
+directory (/usr/bin or C:\Python*\Scripts, for example) and the build
+engine in an appropriate SCons library directory (/usr/lib/scons or
+C:\Python*\SCons, for example).
 
 You should have system installation privileges (that is, "root" or
-"Administrator") when running the setup.py script.
+"Administrator") when running the setup.py script to install SCons in
+the default system directories.
+
+If you don't have system installation privileges, you can use the
+--prefix option to specify an alternate installation location, such as
+your home directory:
+
+        $ python setup.py install --prefix=$HOME
+
+This will install the scons script itself in $HOME/bin and the
+associated library in $HOME/lib/scons
 
 
 DOCUMENTATION
@@ -126,5 +136,4 @@ With more than a little help from the SCons Development team:
         Charles Crain
         Steve Leblanc
         Anthony Roach
-        Steven Shaw
 
index 1045f1ff388ca2eb24426770ccffecbf8ee9a84e..467677be025b616c930355a20a9024d208f988b4 100644 (file)
@@ -20,9 +20,9 @@ more effectively, please sign up for the scons-users mailing list at:
 
 
 
-RELEASE 0.03 - Fri, 11 Jan 2002 01:09:30 -0600
+RELEASE 0.04 - Wed, 30 Jan 2002 11:09:42 -0600
 
-  This is the third alpha release of SCons.  Please consult the
+  This is the fourth alpha release of SCons.  Please consult the
   CHANGES.txt file for a list of specific changes since last release.
 
   Owing to an extensive test suite, the SCons team believes that this
@@ -39,7 +39,7 @@ RELEASE 0.03 - Fri, 11 Jan 2002 01:09:30 -0600
       http://sourceforge.net/tracker/?func=add&group_id=30337&atid=398971
 
       We have a reliable bug-fixing methodology already in place and
-      expect to respond to problems relatively quickly.
+      have been responding to problems relatively quickly.
 
     - It is possible that interfaces will change in future releases.  We
       will strive to hold this to a minimum, but you may need to modify
@@ -58,7 +58,7 @@ RELEASE 0.03 - Fri, 11 Jan 2002 01:09:30 -0600
 
     - There may be performance issues.  This release has many performance
       improvements.  If you still find the performance unacceptable, we
-      would very muchlike to hear from you and learn more about your
+      would very much like to hear from you and learn more about your
       configuration so we can optimize the right things.
 
     - Error messages don't always exist where they'd be helpful.
index b9d3a8d4c8f5bc186cf75696df69536bc0ca713e..ba0a5178a97654cb680bd1f47e2fba5a4cca1ad2 100644 (file)
@@ -8,7 +8,7 @@
 # distribute, sublicense, and/or sell copies of the Software, and to
 # permit persons to whom the Software is furnished to do so, subject to
 # the following conditions:
+#
 # The above copyright notice and this permission notice shall be included
 # in all copies or substantial portions of the Software.
 #
@@ -21,6 +21,6 @@
 # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #
 
-__revision__ = "${subst '^src/scons/' '' $filename} __REVISION__ __DATE__ __DEVELOPER__"
+__revision__ = "__FILE__ __REVISION__ __DATE__ __DEVELOPER__"
 
 import unittest
index 55f51af3827fa3e2334e3b20fc272d4a26432194..fffcf571521263b2bb7e71e79c594e2d7cec63cf 100644 (file)
@@ -27,6 +27,6 @@ XXX
 # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #
 
-__revision__ = "${subst '^src/scons/' '' $filename} __REVISION__ __DATE__ __DEVELOPER__"
+__revision__ = "__FILE__ __REVISION__ __DATE__ __DEVELOPER__"
 
 __version__ = "__VERSION__"
index 19236728195e3b1b47473297c91efc8cdbf4e430..b2be739dd5c13870b51027a7cefac9c5f72b4be3 100644 (file)
@@ -27,7 +27,7 @@ XXX
 # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #
 
-__revision__ = "${subst '^src/scons/' '' $filename} __REVISION__ __DATE__ __DEVELOPER__"
+__revision__ = "__FILE__ __REVISION__ __DATE__ __DEVELOPER__"
 
 
 
index 61854d51c72081d7a83a64af84c9fe1e70b8cb8a..963fba08801a30af49be60daf532a10b315cd16f 100644 (file)
@@ -22,6 +22,6 @@
 # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #
 
-__revision__ = "$filename __REVISION__ __DATE__ __DEVELOPER__"
+__revision__ = "__FILE__ __REVISION__ __DATE__ __DEVELOPER__"
 
-import TestCmd
+import TestSCons