1 # shellcheck shell=bash disable=SC2206
6 if ! [ -f "${wafPath:=./waf}" ]; then
7 echo "copying waf to $wafPath..."
8 cp @waf@
/bin
/waf
"$wafPath"
11 if [ -z "${dontAddPrefix:-}" ] && [ -n "$prefix" ]; then
12 local prefixFlag
="${prefixKey:---prefix=}$prefix"
15 if [ -n "${PKG_CONFIG}" ]; then
16 export PKGCONFIG
="${PKG_CONFIG}"
19 local flagsArray
=( $prefixFlag )
20 concatTo flagsArray wafConfigureFlags wafConfigureFlagsArray wafConfigureTargets
=configure
22 echoCmd
'waf configure flags' "${flagsArray[@]}"
23 python
"$wafPath" "${flagsArray[@]}"
25 if ! [[ -v enableParallelBuilding
]]; then
26 enableParallelBuilding
=1
27 echo "waf: enabled parallel building"
30 if ! [[ -v enableParallelInstalling
]]; then
31 enableParallelInstalling
=1
32 echo "waf: enabled parallel installing"
41 local flagsArray
=( ${enableParallelBuilding:+-j ${NIX_BUILD_CORES}} )
42 concatTo flagsArray wafFlags wafFlagsArray wafBuildFlags wafBuildFlagsArray wafBuildTargets
=build
44 echoCmd
'waf build flags' "${flagsArray[@]}"
45 python
"$wafPath" "${flagsArray[@]}"
53 if [ -n "$prefix" ]; then
57 local flagsArray
=( ${enableParallelInstalling:+-j ${NIX_BUILD_CORES}} )
58 concatTo flagsArray wafFlags wafFlagsArray wafInstallFlags wafInstallFlagsArray wafInstallTargets
=install
60 echoCmd
'waf install flags' "${flagsArray[@]}"
61 python
"$wafPath" "${flagsArray[@]}"
66 if [ -z "${dontUseWafConfigure-}" ] && [ -z "${configurePhase-}" ]; then
67 configurePhase
=wafConfigurePhase
70 if [ -z "${dontUseWafBuild-}" ] && [ -z "${buildPhase-}" ]; then
71 buildPhase
=wafBuildPhase
74 if [ -z "${dontUseWafInstall-}" ] && [ -z "${installPhase-}" ]; then
75 installPhase
=wafInstallPhase