246 lines
7.8 KiB
Text
Vendored
246 lines
7.8 KiB
Text
Vendored
|
|
SCons - a software construction tool
|
|
|
|
This is the scons-README file for a version of SCons packaged for local
|
|
execution--that is, execution out of a specific local directory, without
|
|
having to install SCons as a system-wide utility.
|
|
|
|
You are likely reading this file in one of the following two situations:
|
|
|
|
1) You have unpacked an scons-local-{version} package and are
|
|
examining the contents.
|
|
|
|
In this case, you are presumably interested in using this
|
|
package to include a local copy of SCons with some other
|
|
software that you package, so that you can use SCons to build
|
|
your software without forcing all of your users to have it fully
|
|
installed. Instructions for this can be found below.
|
|
|
|
If you are not looking to use SCons in this way, then please
|
|
use either the scons-{version} package to install SCons on your
|
|
system, or the scons-src-{version} package if you want the full
|
|
source to SCons, including its packaging code and underlying
|
|
tests and testing infrastructure.
|
|
|
|
2) This file was included in some other software package so that
|
|
the package could be built using SCons.
|
|
|
|
In this case, follow the instructions provided with the
|
|
rest of the software package for how to use SCons to build
|
|
and/or install the software. The file containing build and
|
|
installation instructions will typically be named README or
|
|
INSTALL.
|
|
|
|
LATEST VERSION
|
|
==============
|
|
|
|
Before going further, you can check for the latest version of the
|
|
scons-local package, or any SCons package, at the SCons download page:
|
|
|
|
https://scons.org/pages/download.html
|
|
|
|
|
|
EXECUTION REQUIREMENTS
|
|
======================
|
|
|
|
Running SCons requires Python 3.5 or higher.
|
|
There should be no other dependencies or requirements to run SCons.
|
|
|
|
As of SCons 4.2.0 support for Python 3.5 is deprecated and will be removed
|
|
with the next major release.
|
|
|
|
The default SCons configuration assumes use of the Microsoft Visual C++
|
|
compiler suite on WIN32 systems (either through the Visual Studio
|
|
product, or through the separate Build Tools), and assumes a C compiler
|
|
named 'cc', a C++ compiler named 'c++', and a Fortran compiler named 'g77'
|
|
(such as found in the GNU Compiler Collection) on any other type of system.
|
|
You may, of course, override these default values by appropriate
|
|
configuration of Environment construction variables.
|
|
|
|
|
|
INSTALLATION
|
|
============
|
|
|
|
Installation of this package should be as simple as unpacking the
|
|
archive (either .tar.gz or .zip) in any directory (top-level or a
|
|
subdirectory) within the software package with which you want to ship
|
|
SCons.
|
|
|
|
Once you have installed this package, you should write an SConstruct
|
|
file at the top level of your source tree to build your software as you
|
|
see fit.
|
|
|
|
Then modify the build/install instructions for your package to instruct
|
|
your users to execute SCons as follows (if you installed this package in
|
|
your top-level directory):
|
|
|
|
$ python scons.py
|
|
|
|
Or (if, for example, you installed this package in a subdirectory named
|
|
"scons"):
|
|
|
|
$ python scons/scons.py
|
|
|
|
That should be all you have to do. (If it isn't that simple, please let
|
|
us know!)
|
|
|
|
|
|
CONTENTS OF THIS PACKAGE
|
|
========================
|
|
|
|
This scons-local package consists of the following:
|
|
|
|
scons-LICENSE
|
|
A copy of the copyright and terms under which SCons is
|
|
distributed (the Open Source Initiative-approved MIT license).
|
|
|
|
A disclaimer has been added to the beginning to make clear that
|
|
this license applies only to SCons, and not to any separate
|
|
software you've written with which you're planning to package
|
|
SCons.
|
|
|
|
scons-README
|
|
What you're looking at right now.
|
|
|
|
scons-local-{version}/
|
|
The SCons build engine. This is structured as a Python
|
|
library.
|
|
|
|
scons.py
|
|
The SCons script itself. The script sets up the Python
|
|
sys.path variable to use the build engine found in the
|
|
scons-local-{version}/ directory in preference to any other
|
|
SCons build engine installed on your system.
|
|
|
|
|
|
DOCUMENTATION
|
|
=============
|
|
|
|
Because this package is intended to be included with other software by
|
|
experienced users, we have not included any SCons documentation in this
|
|
package (other than this scons-README file you're reading right now).
|
|
|
|
If, however, you need documentation about SCons, then consult any of the
|
|
following from the corresponding scons-{version} or scons-src-{version}
|
|
package:
|
|
|
|
The RELEASE.txt file (src/RELEASE.txt file in the
|
|
scons-src-{version} package), which contains notes about this
|
|
specific release, including known problems.
|
|
|
|
The CHANGES.txt file (src/CHANGES.txt file in the
|
|
scons-src-{version} package), which contains a list of changes
|
|
since the previous release.
|
|
|
|
The scons.1 man page (doc/man/scons.1 in the scons-src-{version}
|
|
package), which 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 scons-LICENSE file in this package. 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
|
|
==============
|
|
|
|
The SCons project welcomes bug reports and feature requests.
|
|
|
|
Please make sure you send email with the problem or feature request to
|
|
the SCons users mailing list, which you can join via the link below:
|
|
|
|
http://two.pairlist.net/mailman/listinfo/scons-users
|
|
|
|
Once you have discussed your issue on the users mailing list and the
|
|
community has confirmed that it is either a new bug or a duplicate of an
|
|
existing bug, then please follow the instructions the community provides
|
|
to file a new bug or to add yourself to the CC list for an existing bug
|
|
|
|
You can explore the list of existing bugs, which may include workarounds
|
|
for the problem you've run into, on GitHub:
|
|
|
|
https://github.com/SCons/scons/issues
|
|
|
|
|
|
|
|
MAILING LISTS
|
|
=============
|
|
|
|
A mailing list for users of SCons is available. You may send questions
|
|
or comments to the list at:
|
|
|
|
scons-users@scons.org
|
|
|
|
You may subscribe to the scons-users mailing list at:
|
|
|
|
http://two.pairlist.net/mailman/listinfo/scons-users
|
|
|
|
An active mailing list for developers of SCons is available. You may
|
|
send questions or comments to the list at:
|
|
|
|
scons-dev@scons.org
|
|
|
|
You may subscribe to the developer's mailing list using form on this page:
|
|
|
|
http://two.pairlist.net/mailman/listinfo/scons-dev
|
|
|
|
Subscription to the developer's mailing list is by approval. In practice, no
|
|
one is refused list membership, but we reserve the right to limit membership
|
|
in the future and/or weed out lurkers.
|
|
|
|
There are other mailing lists available for SCons users, for notification of
|
|
SCons code changes, and for notification of updated bug reports and project
|
|
documents. Please see our mailing lists page for details.
|
|
|
|
|
|
|
|
FOR MORE INFORMATION
|
|
====================
|
|
|
|
Check the SCons web site at:
|
|
|
|
http://www.scons.org/
|
|
|
|
|
|
Author Info
|
|
===========
|
|
|
|
SCons was originally written by Steven Knight, knight at baldmt dot com.
|
|
Since around 2010 it has been maintained by the SCons
|
|
development team, co-managed by Bill Deegan and Gary Oberbrunner, with
|
|
many contributors, including but not at all limited to:
|
|
|
|
- Chad Austin
|
|
- Dirk Baechle
|
|
- Charles Crain
|
|
- William Deegan
|
|
- Steve Leblanc
|
|
- Rob Managan
|
|
- Greg Noel
|
|
- Gary Oberbrunner
|
|
- Anthony Roach
|
|
- Greg Spencer
|
|
- Tom Tanner
|
|
- Anatoly Techtonik
|
|
- Christoph Wiedemann
|
|
- Mats Wichmann
|
|
- Russel Winder
|
|
- Mats Wichmann
|
|
|
|
\... and many others.
|