aboutsummaryrefslogtreecommitdiff
path: root/extra/meson/files/cl-meson
diff options
context:
space:
mode:
Diffstat (limited to 'extra/meson/files/cl-meson')
-rwxr-xr-xextra/meson/files/cl-meson24
1 files changed, 24 insertions, 0 deletions
diff --git a/extra/meson/files/cl-meson b/extra/meson/files/cl-meson
new file mode 100755
index 00000000..d822d81a
--- /dev/null
+++ b/extra/meson/files/cl-meson
@@ -0,0 +1,24 @@
+#!/bin/sh -e
+# Wrapper for meson, we disable all auto features by default, and disable
+# any downloads from subproject wrappers. We want the builds to be as
+# reproducible as possible, and we want to be adding features most of the
+# time instead of removing them.
+#
+# Unfortunately, there are lots of people who lack the ability to read the
+# documentation of meson (which is really simple by the way), and declare
+# features as 'combo' type instead of 'feature' type. This means that you
+# shouldn't rely entirely on the '--auto-features=disabled', because those
+# people declare their features as string lists.
+# https://mesonbuild.com/Build-options.html#features
+
+exec meson setup \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --libexecdir=lib \
+ --sbindir=bin \
+ --mandir=share/man \
+ --buildtype=release \
+ --auto-features=disabled \
+ --wrap-mode=nodownload \
+ "$@"