mirror of
https://github.com/Relintai/scons_gd.git
synced 2025-02-10 16:40:14 +01:00
101 lines
3.8 KiB
XML
101 lines
3.8 KiB
XML
|
<?xml version='1.0'?>
|
||
|
<!DOCTYPE sconsdoc [
|
||
|
<!ENTITY % scons SYSTEM "../scons.mod">
|
||
|
%scons;
|
||
|
]>
|
||
|
|
||
|
<chapter id="chap-background"
|
||
|
xmlns="http://www.scons.org/dbxsd/v1.0"
|
||
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||
|
xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 http://www.scons.org/dbxsd/v1.0/scons.xsd">
|
||
|
<title>Background</title>
|
||
|
|
||
|
<!--
|
||
|
|
||
|
__COPYRIGHT__
|
||
|
|
||
|
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.
|
||
|
|
||
|
-->
|
||
|
|
||
|
<para>
|
||
|
|
||
|
Most of the ideas in &SCons; originate with &Cons;, a Perl-based
|
||
|
software construction utility that has been in use by a small but
|
||
|
growing community since its development by Bob Sidebotham at FORE
|
||
|
Systems in 1996. The &Cons; copyright was transferred in 2000 from
|
||
|
Marconi (who purchased FORE Systems) to the Free Software Foundation.
|
||
|
I've been a principal implementer and maintainer of &Cons; for several
|
||
|
years.
|
||
|
|
||
|
</para>
|
||
|
|
||
|
<para>
|
||
|
|
||
|
&Cons; was originally designed to handle complicated software build
|
||
|
problems (multiple directories, variant builds) while keeping the
|
||
|
input files simple and maintainable. The general philosophy is that
|
||
|
the build tool should ``do the right thing'' with minimal input
|
||
|
from an unsophisticated user, while still providing a rich set of
|
||
|
underlying functionality for more complicated software construction
|
||
|
tasks needed by experts.
|
||
|
|
||
|
</para>
|
||
|
|
||
|
<para>
|
||
|
|
||
|
In 2000, the Software Carpentry sought entries in a contest for a
|
||
|
new, Python-based build tool that would provide an improvement
|
||
|
over Make for physical scientists and other non-programmers
|
||
|
struggling to use their computers more effectively. Prior to that,
|
||
|
the idea of combining the superior build architecture of &Cons;
|
||
|
with the easier syntax of Python had come up several times on
|
||
|
the <literal>cons-discuss</literal> mailing list. The Software
|
||
|
Carpentry contest provided the right motivation to spend some
|
||
|
actual time working on a design document.
|
||
|
|
||
|
</para>
|
||
|
|
||
|
<para>
|
||
|
|
||
|
After two rounds of competition, the submitted design, named
|
||
|
<application>ScCons</application>, won the competition. Software
|
||
|
Carpentry, however, did not immediately fund implementation of the
|
||
|
build tool, instead contracting for additional, more detailed draft(s)
|
||
|
of the design document. This proved to be not as strong motivation as
|
||
|
actual coding, and after several months of inactivity, I essentially
|
||
|
resigned from the Software Carpentry effort in early 2001 to start
|
||
|
working on the tool independently.
|
||
|
|
||
|
</para>
|
||
|
|
||
|
<para>
|
||
|
|
||
|
After half a year of prototyping some of the important infrastructure,
|
||
|
I accumulated enough code to take the project public at SourceForge,
|
||
|
renaming it &SCons; to distinguish it slightly from the version of the
|
||
|
design that won the Software Carpentry contest while still honoring
|
||
|
its roots there and in the original &Cons; utility. And also because
|
||
|
it would be a teensy bit easier to type.
|
||
|
|
||
|
</para>
|
||
|
|
||
|
</chapter>
|