summaryrefslogtreecommitdiffstats
path: root/tools/meson-build.sh
blob: 2366df23f9d049498741b153f9b0cc71d94c3d00 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#!/bin/sh
# SPDX-License-Identifier: LGPL-2.1-or-later
set -eux

sourcedir="${1:?}"
builddir="${2:?}"
target="${3:?}"
c_args="${4:?}"
cpp_args="${5:?}"
options="${6:?}"
CC="${7:?}"
CXX="$8"

if [ ! -f "$builddir/build.ninja" ]; then
    # shellcheck disable=SC2086
    CC="$CC" CXX="$CXX" meson setup -Dc_args="$c_args" -Dcpp_args="$cpp_args" "$builddir" "$sourcedir" $options
fi

# Locate ninja binary, on CentOS 7 it is called ninja-build, so use that name if available.
command -v ninja-build >/dev/null && ninja="ninja-build" || ninja="ninja"
"$ninja" -C "$builddir" "$target"