meson: introduce mesonInstallTags

Projects building with meson are currently installTargets. Map these
to install tags, which are roughly equivalent. This allows projects to
selectively install components.
This commit is contained in:
Julian Stecklina 2023-10-19 12:23:31 +02:00
parent d474c87aff
commit 36eff4f431
2 changed files with 13 additions and 0 deletions

View File

@ -43,3 +43,12 @@ Disables using Mesons `checkPhase`.
### `dontUseMesonInstall` {#dontusemesoninstall}
Disables using Mesons `installPhase`.
### `mesonInstallFlags` {#mesoninstallflags}
Controls the flags passed to meson install.
### `mesonInstallTags` (#mesoninstalltags)
Tags specified here will be passed to Meson as via `--tags` during
installation and controls which components will be installed.

View File

@ -55,6 +55,10 @@ mesonInstallPhase() {
# shellcheck disable=SC2086
local flagsArray=($mesonInstallFlags "${mesonInstallFlagsArray[@]}")
if [[ -n "$mesonInstallTags" ]]; then
flagsArray+=("--tags" "${mesonInstallTags// /,}")
fi
echoCmd 'install flags' "${flagsArray[@]}"
meson install --no-rebuild "${flagsArray[@]}"