Name: waf
Owner: ArduPilot
Description: The Waf build system
Created: 2015-12-01 02:23:24.0
Updated: 2018-05-04 18:42:38.0
Pushed: 2018-05-04 18:42:35.0
Homepage: https://waf.io/
Size: 3904
Language: Python
GitHub Committers
User | Most Recent Commit | # Commits |
---|
Other Committers
User | Most Recent Commit | # Commits |
---|
Waf is a Python-based framework for configuring, compiling and installing applications. Here are perhaps the most important features of Waf:
Waf is used in particular by innovative companies such as Avalanche Studios and by open-source projects such as RTEMS. 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 a mirror on freehackers.org, consult the manual, the API documentation and the showcases and experiments.
Python >= 2.6 is required to generate the waf script, and the resulting file can then run on Python 2.5. Just execute:
waf-light configure build
Or, if you have several python versions installed:
thon3 ./waf-light configure build
The Waf tools in waflib/extras are not added to the waf script. To add some of them, use the –tools switch:
waf-light --tools=compat15,swig
To add a tool that does not exist in the folder extras, pass an absolute path, and to customize the initialization, pass the parameter 'prelude'. Here is for example how to create a waf file using the compat15 module:
waf-light --tools=compat15 --prelude=$'\tfrom waflib.extras import compat15\n'
Any kind of initialization is possible, though one may prefer the build system kit (folder build_system_kit):
waf-light --make-waf --tools=compat15,/comp/waf/aba.py --prelude=$'\tfrom waflib.extras import compat15\n\tprint("ok")'
Or, to avoid regenerating the waf file all the time, just set the WAFDIR
environment variable to the directory containing “waflib”.
Try this:
af demos/c/
emos/c/
f configure build