]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
build-sys: only install legacy *.pkla files with old polkit versions (#5555)
authorMartin Pitt <martinpitt@users.noreply.github.com>
Wed, 8 Mar 2017 13:20:11 +0000 (14:20 +0100)
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Wed, 8 Mar 2017 13:20:11 +0000 (08:20 -0500)
The legacy *.pkla files are not required when running against polkit ≥ 106,
and we want to avoid shipping files in /var if possible (but pkla files
can only be in /etc/ or /var).

Only install the *.pkla files if we detect an old polkit version during
configure. Don't install them if polkit isn't installed during build, as
distributions other than Debian-based ones have moved to the new polkit
long ago.

Fixes #5523

Makefile.am
configure.ac

index d933529579812247970b0801e3aaac1c94030ef7..621296b6cf845ae09eb7a4628459e4e01eff995f 100644 (file)
@@ -6369,8 +6369,10 @@ nodist_polkitpolicy_DATA = \
        $(polkitpolicy_files) \
        $(polkitpolicy_in_in_files:.policy.in.in=.policy)
 polkitrules_DATA = $(polkitrules_files)
+if ENABLE_POLKIT_PKLA
 polkitpkla_DATA = $(polkitpkla_files)
 endif
+endif
 
 EXTRA_DIST += \
        $(polkitpolicy_in_files) \
index 3835413ad59e4412687ee53059c89f0131a6aa1a..1efeb3a73e4c073c70780a1f63a355752928596d 100644 (file)
@@ -1228,8 +1228,14 @@ AC_ARG_ENABLE(polkit, AS_HELP_STRING([--disable-polkit], [disable PolicyKit supp
 if test "x$enable_polkit" != "xno"; then
         AC_DEFINE(ENABLE_POLKIT, 1, [Define if PolicyKit support is to be enabled])
         have_polkit=yes
+
+        # also enable support for *.pkla files on old polkit
+        PKG_CHECK_MODULES(POLKIT, [ polkit-gobject-1 < 0.106 ],
+                           [polkit_pkla=yes],
+                           [polkit_pkla=no])
 fi
 AM_CONDITIONAL(ENABLE_POLKIT, [test "x$have_polkit" = "xyes"])
+AM_CONDITIONAL(ENABLE_POLKIT_PKLA, [test "x$polkit_pkla" = "xyes"])
 
 # ------------------------------------------------------------------------------
 have_resolved=no
@@ -1700,7 +1706,7 @@ AC_MSG_RESULT([
         default DNS servers:               ${DNS_SERVERS}
         default DNSSEC mode:               ${DEFAULT_DNSSEC_MODE}
         coredump:                          ${have_coredump}
-        polkit:                            ${have_polkit}
+        polkit:                            ${have_polkit} (legacy pkla support: ${polkit_pkla})
         efi:                               ${have_efi}
         gnuefi:                            ${have_gnuefi}
         efi arch:                          ${EFI_ARCH}