TABLE OF CONTENTS
waf.cygclass
[ Top ] [ Cygclasses ] [ Cygclasses ]
SYNOPSIS
[WAF_USE_BUNDLED=1] inherit waf
DESCRIPTION
Waf is a general-purpose build system written in Python used by XMMS2, a few GTK+ programs, and some other projects. The build system is defined by a 'wscript' file in the top source directory and 'wscript_build' files in subdirectories, both of which are also written in Python.
Waf is designed to create a completely self-sufficient package, with the waf command and library shipped together with the sources. The issue with that is only a recent of Waf will correctly build libraries on Cygwin, and patches may be required. Therefore, this cygclass can use a (patched) system-installed waf command to drive the build instead if the bundled copy does not work.
NOTE
Packages which ship with very old versions of Waf may not be compatible with the current Waf API. In that case, if the bundled waf does not work, you will need to patch 'wscript' and/or 'wscript_build' for the API provided by the system-installed copy. A link to the Waf Book and API documentation can be found on the Waf project page.
REQUIRES
python, waf
WAF_USE_BUNDLED
[ Top ] [ waf.cygclass ] [ Variables ]
SYNOPSIS
WAF_USE_BUNDLED=1 inherit waf
DESCRIPTION
Define this variable prior to inherit()ing waf.cygclass in order to use the copy of Waf bundled in the sources.
WAF
[ Top ] [ waf.cygclass ] [ Definitions ]
DESCRIPTION
Path to the Waf command.
waf_compile
[ Top ] [ waf.cygclass ] [ Compile Functions ]
SYNOPSIS
waf_compile [OPTIONS]
DESCRIPTION
Runs 'waf configure' to configure the package, followed by 'waf build' to compile it. WAF_CONFIGURE_FLAGS and WAF_BUILD_FLAGS can be defined to pass additional arguments to the configure and build commands, respectively. Any arguments to waf_compile are passed as configure flags to the 'waf configure' command. waf_compile must be run from the directory containing 'wscript'.
WAF_CONFIGURE_FLAGS
[ Top ] [ waf_compile ] [ Variables ]
DESCRIPTION
String containing additional arguments to pass to 'waf configure'.
WAF_BUILD_FLAGS
[ Top ] [ waf_compile ] [ Variables ]
DESCRIPTION
String containing additional arguments to pass to 'waf build'.
waf_test
[ Top ] [ waf.cygclass ] [ Testsuite Functions ]
DESCRIPTION
Runs the package's test suite with 'waf check'. WAF_TEST_FLAGS can be defined to pass additional arguments to the check command. Any arguments to waf_test are passed as well. waf_test must be run from the directory containing 'wscript'.
WAF_TEST_FLAGS
[ Top ] [ waf_test ] [ Variables ]
DESCRIPTION
String containing additional arguments to pass to 'waf check'.
waf_install
[ Top ] [ waf.cygclass ] [ Install Functions ]
DESCRIPTION
Installs the package into $D with 'waf install'. WAF_INSTALL_FLAGS can be defined to pass additional arguments to the install command. Any arguments to waf_install are passed as well. waf_install must be run from the directory containing 'wscript'.
WAF_INSTALL_FLAGS
[ Top ] [ waf_install ] [ Variables ]
DESCRIPTION
String containing additional arguments to pass to 'waf install'.
src_compile (waf)
[ Top ] [ waf.cygclass ] [ Overloads ]
DEFINITION
src_compile() { lndirs cd ${B} waf_compile }
src_install (waf)
[ Top ] [ waf.cygclass ] [ Overloads ]
DEFINITION
src_install() { cd ${B} waf_install }