summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Hutterer <peter.hutterer@who-t.net>2022-08-31 15:51:20 +1000
committerPeter Hutterer <peter.hutterer@who-t.net>2022-08-31 16:01:26 +1000
commit6c2e98e40d4bb2abc48bcb4b2e3201017cdfcd3d (patch)
treefe72785fe086b0e40f28898ae83da347056def40
parent30776d670b931f15dce83fae9a4dd7a0726bb470 (diff)
downloadlibinput-6c2e98e40d4bb2abc48bcb4b2e3201017cdfcd3d.tar.gz
gitlab-ci: add commandline options to the meson-build.sh script
The various --skip-build, --skip-test and --skip-setup skip the respective step, the --run-test argument runs the test even where MESON_TEST_ARGS is nil. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-rwxr-xr-x.gitlab-ci/meson-build.sh44
1 files changed, 38 insertions, 6 deletions
diff --git a/.gitlab-ci/meson-build.sh b/.gitlab-ci/meson-build.sh
index bda825b9..4d5330df 100755
--- a/.gitlab-ci/meson-build.sh
+++ b/.gitlab-ci/meson-build.sh
@@ -5,6 +5,34 @@ if [[ -f .meson_environment ]]; then
. .meson_environment
fi
+# If test args are set, we assume we want to run the tests
+MESON_RUN_TEST="$MESON_TEST_ARGS"
+
+while [[ $# -gt 0 ]]; do
+ case $1 in
+ --skip-setup)
+ shift
+ MESON_SKIP_SETUP="1"
+ ;;
+ --skip-build)
+ shift
+ MESON_SKIP_BUILD="1"
+ ;;
+ --skip-test)
+ shift
+ MESON_RUN_TEST=""
+ ;;
+ --run-test)
+ shift
+ MESON_RUN_TEST="1"
+ ;;
+ *)
+ echo "Unknow commandline argument $1"
+ exit 1
+ ;;
+ esac
+done
+
if [[ -z "$MESON_BUILDDIR" ]]; then
echo "\$MESON_BUILDDIR undefined."
exit 1
@@ -35,13 +63,17 @@ echo "*************************************************"
set -e
-rm -rf "$MESON_BUILDDIR"
-meson setup "$MESON_BUILDDIR" $MESON_ARGS
+if [[ -z "$MESON_SKIP_SETUP" ]]; then
+ rm -rf "$MESON_BUILDDIR"
+ meson setup "$MESON_BUILDDIR" $MESON_ARGS
+fi
meson configure "$MESON_BUILDDIR"
-ninja -C "$MESON_BUILDDIR" $NINJA_ARGS
-if [[ -z "$MESON_TEST_ARGS" ]]; then
- exit 0
+if [[ -z "$MESON_SKIP_BUILD" ]]; then
+ ninja -C "$MESON_BUILDDIR" $NINJA_ARGS
+fi
+
+if [[ -n "$MESON_RUN_TEST" ]]; then
+ meson test -C "$MESON_BUILDDIR" $MESON_TEST_ARGS --print-errorlogs
fi
-meson test -C "$MESON_BUILDDIR" $MESON_TEST_ARGS --print-errorlogs