polkit/polkit-suid_flags.patch

73 lines
2.1 KiB
Diff

commit 1d2f40178c8b3ba39c25de25530c998c3591fab8
Author: Vincent Untz <vuntz@gnome.org>
Date: Fri Feb 24 13:13:17 2012 +0100
polkitagent, pkexec: Respect SUID_CFLAGS and SUID_LDFLAGS
This is a good way for distributors to use -fPIE/-pie.
diff --git a/configure.ac b/configure.ac
index f4a0c41..42da974 100644
--- a/configure.ac
+++ b/configure.ac
@@ -429,6 +429,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 e8c9fb1..f0f8419 100644
--- a/src/polkitagent/Makefile.am
+++ b/src/polkitagent/Makefile.am
@@ -92,6 +92,7 @@ endif
polkit_agent_helper_1_CFLAGS = \
-D_POLKIT_COMPILATION \
+ $(SUID_CFLAGS) \
$(GLIB_CFLAGS) \
$(NULL)
@@ -101,6 +102,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)
gir_DATA = PolkitAgent-1.0.gir
diff --git a/src/programs/Makefile.am b/src/programs/Makefile.am
index c260dee..6aac06b 100644
--- a/src/programs/Makefile.am
+++ b/src/programs/Makefile.am
@@ -24,6 +24,7 @@ bin_PROGRAMS = pkexec pkcheck pkaction
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