blob: 2f20c2804e3904a9679dad0dacaf43fdc31d336e [file] [log] [blame]
# Maintainer: Alexey Pavlov <alexpux@gmail.com>
_realname=waf
pkgbase=mingw-w64-${_realname}
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
pkgver=2.0.20
pkgrel=1
pkgdesc="General-purpose build system modelled after Scons (mingw-w64)"
arch=('any')
mingw_arch=('mingw32' 'mingw64' 'ucrt64' 'clang64' 'clang32')
license=('BSD')
url="https://waf.io/"
makedepends=("setconf")
depends=("${MINGW_PACKAGE_PREFIX}-python")
options=('!emptydirs')
source=("https://waf.io/${_realname}-${pkgver}.tar.bz2"{,.asc})
validpgpkeys=('8AF22DE5A06822E3474F3C7049B4C67C05277AAA')
sha256sums=('cce635c2d1a0f93b4f5b811e0452a35b8066e8ccd78632447f5be24c4c3f1a63'
'SKIP')
prepare() {
cd "${srcdir}/${_realname}-${pkgver}"
# Extracting license
head -n 30 waf-light | tail -n 25 > LICENSE
# Python 3 fix
sed -i '0,/env python/s//python/' waf-light
}
build() {
cd "${srcdir}/${_realname}-${pkgver}"
plain "Configure ..."
${MINGW_PREFIX}/bin/python ./waf-light configure --prefix=${MINGW_PREFIX}
plain "Make waf ..."
${MINGW_PREFIX}/bin/python ./waf-light --make-waf
}
package() {
cd "${srcdir}/${_realname}-${pkgver}"
${MINGW_PREFIX}/bin/python ./waf-light install -f --destdir="${pkgdir}" \
--tools='compat,compat15,ocaml,go,cython,scala,erlang,cuda,gcj,boost,pep8,eclipse,unity,clang_compilation_database'
install -Dm755 waf "${pkgdir}${MINGW_PREFIX}/bin/waf"
# Force the generation of .waf.admin files
cd demos/c
"${pkgdir}${MINGW_PREFIX}/bin/waf" configure build >& /dev/null
cd ../..
# Fix weird directory placement (FS#38216, FS#38300)
mkdir -p "${pkgdir}${MINGW_PREFIX}/lib/waf"
mv "${pkgdir}${MINGW_PREFIX}/bin/.waf3-${pkgver}-"* "${pkgdir}${MINGW_PREFIX}/lib/waf/"
setconf "${pkgdir}${MINGW_PREFIX}/bin/waf" base '"${MINGW_PREFIX}/lib/waf"'
install -Dm644 LICENSE "${pkgdir}${MINGW_PREFIX}/share/licenses/${_realname}/LICENSE"
}