forked from mirrors/nixpkgs
1a53eeda71
Meson is a delicate package. It needs some patches to properly work in Nixpkgs and many packages have it as a dependency, from many small applications to systemd (yay, mass rebuilds in sight!). Updating it is not a trivial and harmless task. Therefore, I took the paranoid way and encapsulate the current version in a subdir, instead of the regular write-over procedure. This way, at the best we can just remove the whole dir in the future, and at the worse we just maintain duplicated code.
38 lines
1.2 KiB
Bash
38 lines
1.2 KiB
Bash
mesonConfigurePhase() {
|
||
runHook preConfigure
|
||
|
||
if [ -z "${dontAddPrefix-}" ]; then
|
||
mesonFlags="--prefix=$prefix $mesonFlags"
|
||
fi
|
||
|
||
# See multiple-outputs.sh and meson’s coredata.py
|
||
mesonFlags="\
|
||
--libdir=${!outputLib}/lib --libexecdir=${!outputLib}/libexec \
|
||
--bindir=${!outputBin}/bin --sbindir=${!outputBin}/sbin \
|
||
--includedir=${!outputInclude}/include \
|
||
--mandir=${!outputMan}/share/man --infodir=${!outputInfo}/share/info \
|
||
--localedir=${!outputLib}/share/locale \
|
||
-Dauto_features=${mesonAutoFeatures:-enabled} \
|
||
-Dwrap_mode=${mesonWrapMode:-nodownload} \
|
||
$mesonFlags"
|
||
|
||
mesonFlags="${crossMesonFlags+$crossMesonFlags }--buildtype=${mesonBuildType:-plain} $mesonFlags"
|
||
|
||
echo "meson flags: $mesonFlags ${mesonFlagsArray[@]}"
|
||
|
||
meson build $mesonFlags "${mesonFlagsArray[@]}"
|
||
cd build
|
||
|
||
if ! [[ -v enableParallelBuilding ]]; then
|
||
enableParallelBuilding=1
|
||
echo "meson: enabled parallel building"
|
||
fi
|
||
|
||
runHook postConfigure
|
||
}
|
||
|
||
if [ -z "${dontUseMesonConfigure-}" -a -z "${configurePhase-}" ]; then
|
||
setOutputFlags=
|
||
configurePhase=mesonConfigurePhase
|
||
fi
|