charon-nm: Use better default directory for D-Bus policy file
authorTobias Brunner <tobias@strongswan.org>
Thu, 13 Feb 2020 16:53:17 +0000 (17:53 +0100)
committerTobias Brunner <tobias@strongswan.org>
Fri, 21 Feb 2020 08:46:13 +0000 (09:46 +0100)
Also makes it configurable via configure script.  Depending on `$datadir` is
not ideal as package maintainers might set that to a custom value.  Depending
on `$datarootdir` might have been better, the default if pkg-config fails is
now based on that.

References #3339.

configure.ac
src/charon-nm/Makefile.am

index b0d5fcb..2836a50 100644 (file)
@@ -78,6 +78,15 @@ ARG_WITH_SET([systemdsystemunitdir], [$systemdsystemunitdir_default], [directory
 AC_SUBST(systemdsystemunitdir)
 
 AC_ARG_WITH(
+       [dbuspolicydir],
+       AS_HELP_STRING([--with-dbuspolicydir=arg],[directory for D-Bus policies (default: ${dbusdatadir|datarootdir}/dbus-1/system.d)]),
+       [dbuspolicydir="$withval"],
+       [PKG_CHECK_VAR([dbusdatadir], [dbus-1], [datadir], , [dbusdatadir="${datarootdir}"])
+        dbuspolicydir="${dbusdatadir}/dbus-1/system.d"]
+)
+AC_SUBST(dbuspolicydir)
+
+AC_ARG_WITH(
        [user],
        AS_HELP_STRING([--with-user=user],[change user of the daemons to "user" after startup (default is "root").]),
        [AC_DEFINE_UNQUOTED([IPSEC_USER], "$withval", [username to run daemon with])
@@ -1192,6 +1201,13 @@ if test x$nm = xtrue; then
        PKG_CHECK_MODULES(nm, [gthread-2.0 libnm])
        AC_SUBST(nm_CFLAGS)
        AC_SUBST(nm_LIBS)
+
+       AC_MSG_CHECKING([for D-Bus policy directory])
+       if test -n "$dbuspolicydir" -a "x$dbuspolicydir" != xno; then
+               AC_MSG_RESULT([$dbuspolicydir])
+       else
+               AC_MSG_ERROR([not found (try --with-dbuspolicydir)])
+       fi
 fi
 
 if test x$xauth_pam = xtrue; then
index 2e0ab95..56526bd 100644 (file)
@@ -23,7 +23,6 @@ charon_nm_LDADD = \
        $(top_builddir)/src/libcharon/libcharon.la \
        -lm $(PTHREADLIB) $(ATOMICLIB) $(DLLIB) ${nm_LIBS}
 
-dbusservicedir = $(datadir)/dbus-1/system.d
-dbusservice_DATA = nm-strongswan-service.conf
+dbuspolicy_DATA = nm-strongswan-service.conf
 
-EXTRA_DIST = $(dbusservice_DATA)
+EXTRA_DIST = $(dbuspolicy_DATA)