Go to file
Nikolaus Lieb b22118a2de Add an option to skip searching the regular sys.path when loading waf tools.
Granting this control allows the avoidance of issues such as accidentally
loading the "cython" module from from Cython itself, rather than the
"cython" waf tool.
Conflicts:
	waflib/Configure.py
	waflib/Context.py
2015-07-28 16:47:35 +08:00
build_system_kit Initial commit 2011-09-10 11:13:51 +02:00
demos docs 2015-07-11 20:17:16 +02:00
docs docs 2015-06-21 22:43:19 +02:00
playground playground test update for swig with -outdir parameter 2015-05-03 18:47:05 +02:00
tests [macplist]: interpolate file 2015-06-14 15:53:46 -04:00
utils Fix the g++ compiler detection which is broken by the new clang tool 2015-02-20 14:23:04 +01:00
waflib Add an option to skip searching the regular sys.path when loading waf tools. 2015-07-28 16:47:35 +08:00
zip waf-zip: zip-packed waf 2013-08-12 19:34:43 -04:00
.gitignore Revert the build* change to .gitignore since it's likely to have unintended side-effects on Windows. 2012-06-21 17:44:18 +02:00
ChangeLog Docs 2015-07-05 20:24:39 +02:00
DEVEL Updated the apidocs and The Waf Book 2015-04-06 14:46:55 +02:00
README Updated the apidocs and The Waf Book 2015-04-06 14:46:55 +02:00
README.md docs 2015-06-21 22:43:19 +02:00
TODO docs 2015-06-20 14:54:41 +02:00
configure Initial commit 2011-09-10 11:13:51 +02:00
waf-light Preparations for Waf 1.8.12 2015-06-27 12:41:16 +02:00
wscript Preparations for Waf 1.8.12 2015-06-27 12:41:16 +02:00

README.md

Waf is a Python-based framework for configuring, compiling and installing applications. Here are perhaps the most important features of Waf:

  • Automatic build order: the build order is computed from input and output files, among others
  • Automatic dependencies: tasks to execute are detected by hashing files and commands
  • Performance: tasks are executed in parallel automatically, the startup time is meant to be fast (separation between configuration and build)
  • Flexibility: new commands and tasks can be added very easily through subclassing, bottlenecks for specific builds can be eliminated through dynamic method replacement
  • Extensibility: though many programming languages and compilers are already supported by default, many others are available as extensions
  • IDE support: Eclipse, Visual Studio and Xcode project generators (waflib/extras/)
  • Documentation: the application is based on a robust model documented in The Waf Book and in the API docs
  • Python compatibility: cPython 2.5 to 3.4, Jython 2.5, IronPython, and Pypy

Waf is used in particular by innovative companies such as Avalanche Studios and by open-source projects such as the Samba project. Learn more about Waf by reading The Waf Book.

For researchers and build system writers, Waf also provides a framework for creating custom build systems and package distribution systems.

Download the project from our page on waf.io or from the mirror on freehackers.org.