SCons is a software construction tool that is a superior alternative to the classic "Make" build tool that we all know and love. SCons is implemented as a Python script and set of modules, and SCons "configuration files" are actually executed as Python scripts. This gives SCons many powerful capabilities not found in other software build tools.

We make SCons available in three distinct packages, for different purposes.

- The scons package is the basic package to install SCons. You don't need any other package if you just want to try out SCons.
- The scons-local package executes as a SCons standalone, out of a local directory. It's intended to be dropped in to and shipped with packages of other software for builds with SCons but not as a required install.
- The scons-src package is the complete source tree, including everything we use to package SCons and all of the regression tests.

Features

  • Configuration files are Python scripts--use the power of a real programming language to solve build problems.
  • Reliable, automatic dependency analysis built-in for C, C++ and Fortran--no more "make depend" or "make clean" to get all of the dependencies. Dependency analysis is easily extensible through user-defined dependency Scanners for other languages or file types.
  • Built-in support for C, C++, D, Java, Fortran, Yacc, Lex, Qt and SWIG, and building TeX and LaTeX documents. Easily extensible through user-defined Builders for other languages or file types.
  • Building from central repositories of source code and/or pre-built targets.
  • Built-in support for fetching source files from SCCS, RCS, CVS, BitKeeper and Perforce.
  • Built-in support for Microsoft Visual Studio .NET and past Visual Studio versions, including generation of .dsp, .dsw, .sln and .vcproj files.
  • Reliable detection of build changes using MD5 signatures; optional, configurable support for traditional timestamps.
  • Improved support for parallel builds--like make -j but keeps N jobs running simultaneously regardless of directory hierarchy.
  • Integrated Autoconf-like support for finding #include files, libraries, functions and typedefs.
  • Global view of all dependencies--no more multiple build passes or reordering targets to build everything.
  • Ability to share built files in a cache to speed up multiple builds--like ccache but for any type of target file, not just C/C++ compilation.
  • Designed from the ground up for cross-platform builds, and known to work on Linux, other POSIX systems (including AIX, *BSD systems, HP/UX, IRIX and Solaris), Windows NT, Mac OS X, and OS/2.

Project Activity

See All Activity >

Categories

Build Tools

License

MIT License

Follow SCons

SCons Web Site

Other Useful Business Software

Find out what (or who) is slowing down your network Find out what (or who) is slowing down your network Icon
Find out what (or who) is slowing down your network Icon

Get comprehensive network bandwidth analysis and performance monitoring with SolarWinds® Bandwidth Analyzer Pack.

Network slow, but you don't know the cause? Use Bandwidth Analyzer Pack (BAP) to monitor and analyze network bandwidth performance and traffic patterns. With BAP, you can identify which users, applications, and protocols are consuming the most bandwidth. You can also monitor Wireless LAN Controller traffic to see what applications and clients are using your wireless network.
Are you evaluating this software for your business?
Yes, Get Free Trial

Rate This Project

Login To Rate This Project

User Ratings

★★★★★
★★★★
★★★
★★
27
1
0
0
3
ease 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 3 / 5
features 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 3 / 5
design 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 3 / 5
support 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 3 / 5

User Reviews

  • A very powerful pipeline tool that specializes in software construction. A breathe of fresh air from old Make-based systems with little automated dependency handling and the ugliness of M4 scripting. Once you have constructed the primary build file, simple libraries and binary compilation only takes a few lines of SCons API commands. Automated dependency validation ensures efficient, consistent, highly-parallel, builds. SCons API is very extensible; thus, supporting user toolchain additions with a bit of python foo. I have used SCons for 2-3 years and added custom toolchain for source generators and various languages. The developer and list have been very helpful, and regularly active.

  • I installed Python 3.4 because it was required, but when I installed SCons, I couldn't find it on my computer. I thought it would be a program creator or something.

    2 users found this review helpful.
  • Un software de desarrollo que me recuerda mucho a ruby en todas las fases de un proyecto web, así que supongo que las espectativas son altas y espero que sea un estandar porque la release promete, y mucho.

  • My favorite software construction tool!

Read more reviews >

Additional Project Details

Awards

Intended Audience

Developers

User Interface

Command-line

Programming Language

Python

Registered

2001-06-29