summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVincent Untz <vuntz@gnome.org>2012-02-24 13:13:17 +0100
committerColin Walters <walters@verbum.org>2013-04-11 13:20:47 -0400
commite267e965ac30e29cb2de1e2ba668e7d00ab5b700 (patch)
treeb1365c8266524b9f1c99329494b6d9feb4545374
parent80a10b589fa606930b0dab2e2613e77b734d9a6b (diff)
downloadpolkit-e267e965ac30e29cb2de1e2ba668e7d00ab5b700.tar.gz
polkitagent, pkexec: Respect SUID_CFLAGS and SUID_LDFLAGS
This is a good way for distributors to use -fPIE/-pie. https://bugs.freedesktop.org/attachment.cgi?id=57584
-rw-r--r--configure.ac5
-rw-r--r--src/polkitagent/Makefile.am6
-rw-r--r--src/programs/Makefile.am6
3 files changed, 17 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac
index b1e478b..a9c24c4 100644
--- a/configure.ac
+++ b/configure.ac
@@ -479,6 +479,11 @@ AC_SUBST([GETTEXT_PACKAGE])
AM_GLIB_GNU_GETTEXT
AC_DEFINE_UNQUOTED([GETTEXT_PACKAGE],["$GETTEXT_PACKAGE"],[gettext domain])
+AC_ARG_VAR([SUID_CFLAGS],
+ [CFLAGS used for binaries which are usually with the suid bit])
+AC_ARG_VAR([SUID_LDFLAGS],
+ [LDFLAGS used for binaries which are usually with the suid bit])
+
AC_OUTPUT([
Makefile
actions/Makefile
diff --git a/src/polkitagent/Makefile.am b/src/polkitagent/Makefile.am
index c8420fa..3bc364e 100644
--- a/src/polkitagent/Makefile.am
+++ b/src/polkitagent/Makefile.am
@@ -94,6 +94,7 @@ endif
polkit_agent_helper_1_CFLAGS = \
-D_POLKIT_COMPILATION \
+ $(SUID_CFLAGS) \
$(GLIB_CFLAGS) \
$(NULL)
@@ -103,6 +104,11 @@ polkit_agent_helper_1_LDADD = \
$(top_builddir)/src/polkit/libpolkit-gobject-1.la \
$(NULL)
+polkit_agent_helper_1_LDFLAGS = \
+ $(SUID_LDFLAGS) \
+ $(AM_LDFLAGS) \
+ $(NULL)
+
if HAVE_INTROSPECTION
girdir = $(INTROSPECTION_GIRDIR)
diff --git a/src/programs/Makefile.am b/src/programs/Makefile.am
index bc1b5a8..4e7273d 100644
--- a/src/programs/Makefile.am
+++ b/src/programs/Makefile.am
@@ -24,6 +24,7 @@ bin_PROGRAMS = pkexec pkcheck pkaction pkttyagent
pkexec_SOURCES = pkexec.c
pkexec_CFLAGS = \
+ $(SUID_CFLAGS) \
$(GLIB_CFLAGS) \
$(AUTH_LIBS) \
$(NULL)
@@ -34,6 +35,11 @@ pkexec_LDADD = \
$(top_builddir)/src/polkitagent/libpolkit-agent-1.la \
$(NULL)
+pkexec_LDFLAGS = \
+ $(SUID_LDFLAGS) \
+ $(AM_LDFLAGS) \
+ $(NULL)
+
# ----------------------------------------------------------------------------------------------------
pkcheck_SOURCES = pkcheck.c