build: Allow to specify which system lua to use

On Exherbo we allow to install different Lua ABIs in parallel and
users can choose per-package which Lua ABI to use, e.g.

  media/wireplumber LUA_ABIS: -* 5.3

However, wireplumber's build system doesn't provide a way of explicitly
requesting a specific version, which makes the build non-deterministic,
since you get a different result if you install today with Lua 5.3
installed and reinstall tomorrow after installing Lua 5.4.

To fix this, I introduced a `system-lua-version` option that allows to
specify an explicit Lua version to check for and build against:

> $ meson .. -Dsystem-lua=true -Dsystem-lua-version=5.4
> The Meson build system
> Version: 0.58.0
> Source dir: /mnt/development/scm/freedesktop/wireplumber
> Build dir: /mnt/development/scm/freedesktop/wireplumber/build/reconfigure
> Build type: native build
> Project name: wireplumber
> Project version: 0.4.1
> [...]
> Run-time dependency lua-5.4 found: YES 5.4.3
> [...]
> Build targets in project: 56
>
> wireplumber 0.4.1
>
>     Lua version                    : 5.4.3 (system)
>     systemd conf data              : YES

If the specified version isn't found, the build will fail loudly:

> $ meson .. -Dsystem-lua=true -Dsystem-lua-version=5.5
> [...]
> Found CMake: /usr/host/bin/cmake (3.20.5)
> Run-time dependency lua-5.5 found: NO (tried pkgconfig and cmake)
> Run-time dependency lua5.5 found: NO (tried pkgconfig and cmake)
>
> ../meson.build:50:6: ERROR: Problem encountered: Specified Lua version "5.5" not found
7 jobs for lua-system-version in 39 seconds (queued for 4 seconds)
latest
Status Name Job ID Coverage
  Container
passed container_fedora #12218313

00:00:31

passed container_ubuntu #12218314

00:00:26

 
  Build
failed build_on_fedora_no_docs #12218316

00:00:06

failed build_on_fedora_with_docs #12218315

00:00:06

failed build_on_fedora_wpipc #12218317

00:00:05

failed build_on_ubuntu_no_gir #12218319

00:00:05

failed build_on_ubuntu_with_gir #12218318

00:00:06

 
Name Stage Failure
failed
build_on_fedora_wpipc Build
Running with gitlab-runner 14.1.0 (8925d9a0)
on fdo-packet-m1xl-2 ya9Tm6yf
Preparing the "docker" executor
Using Docker executor with image registry.freedesktop.org/marv/wireplumber/fedora/34:2021-05-25.1 ...
Authenticating with credentials from job payload (GitLab Registry)
Pulling docker image registry.freedesktop.org/marv/wireplumber/fedora/34:2021-05-25.1 ...
WARNING: Failed to pull image with policy "always": Error response from daemon: manifest for registry.freedesktop.org/marv/wireplumber/fedora/34:2021-05-25.1 not found (manager.go:205:0s)
ERROR: Job failed: failed to pull image "registry.freedesktop.org/marv/wireplumber/fedora/34:2021-05-25.1" with specified policies [always]: Error response from daemon: manifest for registry.freedesktop.org/marv/wireplumber/fedora/34:2021-05-25.1 not found (manager.go:205:0s)
failed
build_on_fedora_no_docs Build
Running with gitlab-runner 14.1.0 (8925d9a0)
on fdo-packet-m1xl-2 ya9Tm6yf
Preparing the "docker" executor
Using Docker executor with image registry.freedesktop.org/marv/wireplumber/fedora/34:2021-05-25.1 ...
Authenticating with credentials from job payload (GitLab Registry)
Pulling docker image registry.freedesktop.org/marv/wireplumber/fedora/34:2021-05-25.1 ...
WARNING: Failed to pull image with policy "always": Error response from daemon: manifest for registry.freedesktop.org/marv/wireplumber/fedora/34:2021-05-25.1 not found (manager.go:205:0s)
ERROR: Job failed: failed to pull image "registry.freedesktop.org/marv/wireplumber/fedora/34:2021-05-25.1" with specified policies [always]: Error response from daemon: manifest for registry.freedesktop.org/marv/wireplumber/fedora/34:2021-05-25.1 not found (manager.go:205:0s)
failed
build_on_fedora_with_docs Build
Running with gitlab-runner 14.1.0 (8925d9a0)
on fdo-packet-m1xl-2 ya9Tm6yf
Preparing the "docker" executor
Using Docker executor with image registry.freedesktop.org/marv/wireplumber/fedora/34:2021-05-25.1 ...
Authenticating with credentials from job payload (GitLab Registry)
Pulling docker image registry.freedesktop.org/marv/wireplumber/fedora/34:2021-05-25.1 ...
WARNING: Failed to pull image with policy "always": Error response from daemon: manifest for registry.freedesktop.org/marv/wireplumber/fedora/34:2021-05-25.1 not found (manager.go:205:0s)
ERROR: Job failed: failed to pull image "registry.freedesktop.org/marv/wireplumber/fedora/34:2021-05-25.1" with specified policies [always]: Error response from daemon: manifest for registry.freedesktop.org/marv/wireplumber/fedora/34:2021-05-25.1 not found (manager.go:205:0s)
failed
build_on_ubuntu_no_gir Build
Running with gitlab-runner 14.1.0 (8925d9a0)
on fdo-packet-m1xl-2 ya9Tm6yf
Preparing the "docker" executor
Using Docker executor with image registry.freedesktop.org/marv/wireplumber/ubuntu/20.04:2021-06-28.2 ...
Authenticating with credentials from job payload (GitLab Registry)
Pulling docker image registry.freedesktop.org/marv/wireplumber/ubuntu/20.04:2021-06-28.2 ...
WARNING: Failed to pull image with policy "always": Error response from daemon: manifest for registry.freedesktop.org/marv/wireplumber/ubuntu/20.04:2021-06-28.2 not found (manager.go:205:0s)
ERROR: Job failed: failed to pull image "registry.freedesktop.org/marv/wireplumber/ubuntu/20.04:2021-06-28.2" with specified policies [always]: Error response from daemon: manifest for registry.freedesktop.org/marv/wireplumber/ubuntu/20.04:2021-06-28.2 not found (manager.go:205:0s)
failed
build_on_ubuntu_with_gir Build
Running with gitlab-runner 14.1.0 (8925d9a0)
on fdo-packet-m1xl-2 ya9Tm6yf
Preparing the "docker" executor
Using Docker executor with image registry.freedesktop.org/marv/wireplumber/ubuntu/20.04:2021-06-28.2 ...
Authenticating with credentials from job payload (GitLab Registry)
Pulling docker image registry.freedesktop.org/marv/wireplumber/ubuntu/20.04:2021-06-28.2 ...
WARNING: Failed to pull image with policy "always": Error response from daemon: manifest for registry.freedesktop.org/marv/wireplumber/ubuntu/20.04:2021-06-28.2 not found (manager.go:205:0s)
ERROR: Job failed: failed to pull image "registry.freedesktop.org/marv/wireplumber/ubuntu/20.04:2021-06-28.2" with specified policies [always]: Error response from daemon: manifest for registry.freedesktop.org/marv/wireplumber/ubuntu/20.04:2021-06-28.2 not found (manager.go:205:0s)