3 SCons - a software construction tool
5 This is the scons-README file for a version of SCons packaged for local
6 execution--that is, execution out of a specific local directory, without
7 having to install SCons as a system-wide utility.
9 You are likely reading this file in one of the following two situations:
11 1) You have unpacked an scons-local-{version} package and are
12 examining the contents.
14 In this case, you are presumably interested in using this
15 package to include a local copy of SCons with some other
16 software that you package, so that you can use SCons to build
17 your software without forcing all of your users to have it fully
18 installed. Instructions for this can be found below.
20 If you are not looking to use SCons in this way, then please
21 use either the scons-{version} package to install SCons on your
22 system, or the scons-src-{version} package if you want the full
23 source to SCons, including its packaging code and underlying
24 tests and testing infrastructure.
26 2) This file was included in some other software package so that
27 the package could be built using SCons.
29 In this case, follow the instructions provided with the
30 rest of the software package for how to use SCons to build
31 and/or install the software. The file containing build and
32 installation instructions will typically be named README or
38 Before going further, you can check for the latest version of the
39 scons-local package, or any SCons package, at the SCons download page:
41 https://scons.org/pages/download.html
44 EXECUTION REQUIREMENTS
45 ======================
47 Running SCons requires Python 3.5 or higher.
48 There should be no other dependencies or requirements to run SCons.
50 The default SCons configuration assumes use of the Microsoft Visual C++
51 compiler suite on WIN32 systems (either through the Visual Studio
52 product, or through the separate Build Tools), and assumes a C compiler
53 named 'cc', a C++ compiler named 'c++', and a Fortran compiler named 'g77'
54 (such as found in the GNU Compiler Collection) on any other type of system.
55 You may, of course, override these default values by appropriate
56 configuration of Environment construction variables.
62 Installation of this package should be as simple as unpacking the
63 archive (either .tar.gz or .zip) in any directory (top-level or a
64 subdirectory) within the software package with which you want to ship
67 Once you have installed this package, you should write an SConstruct
68 file at the top level of your source tree to build your software as you
71 Then modify the build/install instructions for your package to instruct
72 your users to execute SCons as follows (if you installed this package in
73 your top-level directory):
77 Or (if, for example, you installed this package in a subdirectory named
80 $ python scons/scons.py
82 That should be all you have to do. (If it isn't that simple, please let
86 CONTENTS OF THIS PACKAGE
87 ========================
89 This scons-local package consists of the following:
92 A copy of the copyright and terms under which SCons is
93 distributed (the Open Source Initiative-approved MIT license).
95 A disclaimer has been added to the beginning to make clear that
96 this license applies only to SCons, and not to any separate
97 software you've written with which you're planning to package
101 What you're looking at right now.
103 scons-local-{version}/
104 The SCons build engine. This is structured as a Python
108 The SCons script itself. The script sets up the Python
109 sys.path variable to use the build engine found in the
110 scons-local-{version}/ directory in preference to any other
111 SCons build engine installed on your system.
117 Because this package is intended to be included with other software by
118 experienced users, we have not included any SCons documentation in this
119 package (other than this scons-README file you're reading right now).
121 If, however, you need documentation about SCons, then consult any of the
122 following from the corresponding scons-{version} or scons-src-{version}
125 The RELEASE.txt file (src/RELEASE.txt file in the
126 scons-src-{version} package), which contains notes about this
127 specific release, including known problems.
129 The CHANGES.txt file (src/CHANGES.txt file in the
130 scons-src-{version} package), which contains a list of changes
131 since the previous release.
133 The scons.1 man page (doc/man/scons.1 in the scons-src-{version}
134 package), which contains a section of small examples for getting
137 Additional documentation for SCons is available at:
139 http://www.scons.org/doc.html
145 SCons is distributed under the MIT license, a full copy of which is
146 available in the scons-LICENSE file in this package. The MIT license is
147 an approved Open Source license, which means:
149 This software is OSI Certified Open Source Software. OSI
150 Certified is a certification mark of the Open Source Initiative.
152 More information about OSI certifications and Open Source software is
155 http://www.opensource.org/
161 The SCons project welcomes bug reports and feature requests.
163 Please make sure you send email with the problem or feature request to
164 the SCons users mailing list, which you can join via the link below:
166 http://two.pairlist.net/mailman/listinfo/scons-users
168 Once you have discussed your issue on the users mailing list and the
169 community has confirmed that it is either a new bug or a duplicate of an
170 existing bug, then please follow the instructions the community provides
171 to file a new bug or to add yourself to the CC list for an existing bug
173 You can explore the list of existing bugs, which may include workarounds
174 for the problem you've run into, on GitHub:
176 https://github.com/SCons/scons/issues
183 A mailing list for users of SCons is available. You may send questions
184 or comments to the list at:
186 scons-users@scons.org
188 You may subscribe to the scons-users mailing list at:
190 http://two.pairlist.net/mailman/listinfo/scons-users
192 An active mailing list for developers of SCons is available. You may
193 send questions or comments to the list at:
197 You may subscribe to the developer's mailing list using form on this page:
199 http://two.pairlist.net/mailman/listinfo/scons-dev
201 Subscription to the developer's mailing list is by approval. In practice, no
202 one is refused list membership, but we reserve the right to limit membership
203 in the future and/or weed out lurkers.
205 There are other mailing lists available for SCons users, for notification of
206 SCons code changes, and for notification of updated bug reports and project
207 documents. Please see our mailing lists page for details.
214 Check the SCons web site at:
216 http://www.scons.org/
222 SCons was originally written by Steven Knight, knight at baldmt dot com.
223 Since around 2010 it has been maintained by the SCons
224 development team, co-managed by Bill Deegan and Gary Oberbrunner, with
225 many contributors, including but not at all limited to:
239 - Christoph Wiedemann
244 \... and many others.