flatpak: Fix polkit build

It requires us patching away the runtime check for
libsystemd.
This commit is contained in:
Georges Basile Stavracas Neto 2019-05-18 19:54:00 -03:00
parent 5cec5efc28
commit 82f1558fec
3 changed files with 130 additions and 3 deletions

View file

@ -60,13 +60,35 @@
"name" : "polkit",
"buildsystem" : "autotools",
"config-opts" : [
"--disable-polkitd",
"--disable-man-pages",
"--disable-introspection",
"--disable-libelogind"
"--enable-libsystemd-login=no",
"--with-systemdsystemunitdir=no"
],
"rm-configure" : true,
"cleanup" : [
"/bin/*",
"/etc/pam.d",
"/etc/dbus-1",
"/share/dbus-1/system-services/*",
"/share/polkit-1",
"/lib/polkit-1"
],
"sources" : [
{
"type" : "git",
"url" : "git://anongit.freedesktop.org/polkit"
"type" : "archive",
"url" : "http://www.freedesktop.org/software/polkit/releases/polkit-0.113.tar.gz",
"sha256" : "e1c095093c654951f78f8618d427faf91cf62abdefed98de40ff65eca6413c81"
},
{
"type" : "patch",
"path" : "polkit-build-Add-option-to-build-without-polkitd.patch"
},
{
"type" : "file",
"path" : "polkit-autogen",
"dest-filename" : "autogen.sh"
}
]
},

View file

@ -0,0 +1,4 @@
#!/bin/sh
gtkdocize --flavour no-tmpl
autoreconf -if

View file

@ -0,0 +1,101 @@
From dab179770380918462d0d76e08b11e4abe55c933 Mon Sep 17 00:00:00 2001
From: Patrick Griffis <tingping@tingping.se>
Date: Thu, 8 Sep 2016 16:15:54 -0400
Subject: [PATCH] build: Add option to build without polkitd
This is for any consumer that needs libpolkit but does
not need polkitd. For example an application running in
flatpak.
---
configure.ac | 29 ++++++++++++++++++++---------
src/Makefile.am | 6 +++++-
test/Makefile.am | 6 +++++-
3 files changed, 30 insertions(+), 11 deletions(-)
diff --git a/configure.ac b/configure.ac
index 97d4222..a08785c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -129,20 +129,30 @@ AC_DEFINE([GLIB_VERSION_MIN_REQUIRED], [GLIB_VERSION_2_30],
AC_DEFINE([GLIB_VERSION_MAX_ALLOWED], [G_ENCODE_VERSION(2,34)],
[Notify us when we'll need to transition away from g_type_init()])
+
+AC_ARG_ENABLE([polkitd],
+ [AS_HELP_STRING([--disable-polkitd], [Do not build polkitd])],
+ [enable_polkitd=$enableval], [enable_polkitd=yes])
+AM_CONDITIONAL(BUILD_POLKITD, [test x${enable_polkitd} = yes])
+
+
AC_ARG_WITH(mozjs, AS_HELP_STRING([--with-mozjs=@<:@mozjs185/mozjs-17.0|auto@:>@],
[Specify version of Spidermonkey to use]),,
with_mozjs=auto)
-AS_IF([test x${with_mozjs} != xauto], [
- PKG_CHECK_MODULES(LIBJS, ${with_mozjs})
-], [
- PKG_CHECK_MODULES(LIBJS, [mozjs185], have_mozjs185=yes, have_mozjs185=no)
- AS_IF([test x${have_mozjs185} = xno], [
- PKG_CHECK_MODULES(LIBJS, [mozjs-17.0], have_mozjs17=yes,
- [AC_MSG_ERROR([Could not find mozjs185 or mozjs-17.0; see http://ftp.mozilla.org/pub/mozilla.org/js/])])
+
+AS_IF([test x${enable_polkitd} = yes], [
+ AS_IF([test x${with_mozjs} != xauto], [
+ PKG_CHECK_MODULES(LIBJS, ${with_mozjs})
+ ], [
+ PKG_CHECK_MODULES(LIBJS, [mozjs185], have_mozjs185=yes, have_mozjs185=no)
+ AS_IF([test x${have_mozjs185} = xno], [
+ PKG_CHECK_MODULES(LIBJS, [mozjs-17.0], have_mozjs17=yes,
+ [AC_MSG_ERROR([Could not find mozjs185 or mozjs-17.0; see http://ftp.mozilla.org/pub/mozilla.org/js/])])
+ ])
])
+ AC_SUBST(LIBJS_CFLAGS)
+ AC_SUBST(LIBJS_LIBS)
])
-AC_SUBST(LIBJS_CFLAGS)
-AC_SUBST(LIBJS_LIBS)
EXPAT_LIB=""
AC_ARG_WITH(expat, [ --with-expat=<dir> Use expat from here],
@@ -605,6 +615,7 @@ echo "
Session tracking: ${SESSION_TRACKING}
PAM support: ${have_pam}
systemdsystemunitdir: ${systemdsystemunitdir}
+ polkitd: ${enable_polkitd}
polkitd user: ${POLKITD_USER}"
if test "$have_pam" = yes ; then
diff --git a/src/Makefile.am b/src/Makefile.am
index 09fc7b3..c6fe91b 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -1,5 +1,9 @@
-SUBDIRS = polkit polkitbackend polkitagent programs
+SUBDIRS = polkit polkitagent programs
+
+if BUILD_POLKITD
+SUBDIRS += polkitbackend
+endif
if BUILD_EXAMPLES
SUBDIRS += examples
diff --git a/test/Makefile.am b/test/Makefile.am
index 59d0680..d43b0fe 100644
--- a/test/Makefile.am
+++ b/test/Makefile.am
@@ -1,7 +1,11 @@
-SUBDIRS = mocklibc . polkit polkitbackend
+SUBDIRS = mocklibc . polkit
AM_CFLAGS = $(GLIB_CFLAGS)
+if BUILD_POLKITD
+SUBDIRS += polkitbackend
+endif
+
noinst_LTLIBRARIES = libpolkit-test-helper.la
libpolkit_test_helper_la_SOURCES = polkittesthelper.c polkittesthelper.h
libpolkit_test_helper_la_LIBADD = $(GLIB_LIBS)
--
2.9.3