summaryrefslogtreecommitdiff
path: root/meson.build
diff options
context:
space:
mode:
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2021-09-21 19:53:20 +0200
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2021-09-21 20:13:37 +0200
commit07b382cc2bd274439770b1a47878ab125aa85499 (patch)
tree791551c2acb661bc91b28d9373f0e3340d4d4670 /meson.build
parentce0458be09911e75bfd3b4d802c9594c55a9c98d (diff)
downloadsystemd-07b382cc2bd274439770b1a47878ab125aa85499.tar.gz
meson: ignore -Dsmack-run-label= if -Dsmack=false
Compilation would fail because we could have HAVE_SMACK_RUN_LABEL without HAVE_SMACK. This doesn't make much sense, so let's just make -Dsmack=false completely disable smack. Also, the logic in smack-setup.c seems dubious: '#ifdef SMACK_RUN_LABEL' would evaluate to true even if -Dsmack-run-label='' is used. I think this was introduced in the conversion to meson: 8b197c3a8a57c3f7c231b39e5660856fd9580c80 added AC_ARG_WITH(smack-run-label, AS_HELP_STRING([--with-smack-run-label=STRING], [run systemd --system with a specific SMACK label]), [AC_DEFINE_UNQUOTED(SMACK_RUN_LABEL, ["$withval"], [Run with a smack label])], []) i.e. it really was undefined if not specified. And it was same still in 72cdb3e783174dcf9223a49f03e3b0e2ca95ddb8 when configure.ac was dropped. So let's use the single conditional HAVE_SMACK_RUN_LABEL everywhere.
Diffstat (limited to 'meson.build')
-rw-r--r--meson.build7
1 files changed, 5 insertions, 2 deletions
diff --git a/meson.build b/meson.build
index 8261b13155..fe6b26b835 100644
--- a/meson.build
+++ b/meson.build
@@ -1024,8 +1024,11 @@ else
endif
conf.set10('HAVE_APPARMOR', have)
-conf.set10('HAVE_SMACK_RUN_LABEL', get_option('smack-run-label') != '')
-conf.set_quoted('SMACK_RUN_LABEL', get_option('smack-run-label'))
+have = get_option('smack') and get_option('smack-run-label') != ''
+conf.set10('HAVE_SMACK_RUN_LABEL', have)
+if have
+ conf.set_quoted('SMACK_RUN_LABEL', get_option('smack-run-label'))
+endif
want_polkit = get_option('polkit')
install_polkit = false