ArduPilot/waf

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

UserMost Recent Commit# Commits

Other Committers

UserEmailMost Recent Commit# Commits

README

ABOUT WAF

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.

HOW TO CREATE THE WAF SCRIPT

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”.

HOW TO RUN THE EXAMPLES

Try this:

af demos/c/
emos/c/
f configure build

This work is supported by the National Institutes of Health's National Center for Advancing Translational Sciences, Grant Number U24TR002306. This work is solely the responsibility of the creators and does not necessarily represent the official views of the National Institutes of Health.