package/quota: fix build on m68k
authorFabrice Fontaine <fontaine.fabrice@gmail.com>
Tue, 2 Apr 2019 17:18:35 +0000 (19:18 +0200)
committerThomas Petazzoni <thomas.petazzoni@bootlin.com>
Wed, 3 Apr 2019 19:38:15 +0000 (21:38 +0200)
PIE breaks the build on m68k, so add an upstream patch to disable PIE.
Obviously, when we start seriously testing the BR2_RELRO_FULL option, we
will realize that it is broken on some architectures, and will probably
disable it on m68k.

Fixes:
 - http://autobuild.buildroot.org/results/25985bbc160e3d62b23c4c613b2a81f3711621e3

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
package/quota/0001-configure.ac-add-disable-pie-option.patch [new file with mode: 0644]
package/quota/quota.mk

diff --git a/package/quota/0001-configure.ac-add-disable-pie-option.patch b/package/quota/0001-configure.ac-add-disable-pie-option.patch
new file mode 100644 (file)
index 0000000..c3b57fe
--- /dev/null
@@ -0,0 +1,55 @@
+From cb20e19028a8996de9305502ba5e5da3bd1181bf Mon Sep 17 00:00:00 2001
+From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+Date: Tue, 2 Apr 2019 09:19:36 +0200
+Subject: [PATCH] configure.ac: add --disable-pie option
+
+PIE is not necessarily supported on all architectures, so add an option
+to allow the user to disable the PIE.
+
+This fixes the build on the m68k architecture:
+ - http://autobuild.buildroot.org/results/25985bbc160e3d62b23c4c613b2a81f3711621e3
+
+Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+[Upstream status: merged]
+---
+ Makefile.am  |  2 +-
+ configure.ac | 12 ++++++++++++
+ 2 files changed, 13 insertions(+), 1 deletion(-)
+
+diff --git a/Makefile.am b/Makefile.am
+index 638198d..332bd67 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -1,5 +1,5 @@
+ ACLOCAL_AMFLAGS = -I m4
+-AM_LDFLAGS = -pie
++AM_LDFLAGS = @PIE_LDFLAGS@
+ doc_DATA = \
+        README.mailserver \
+diff --git a/configure.ac b/configure.ac
+index 095ff86..5af4235 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -55,6 +55,18 @@ AS_IF([test "x${prefix}" = "xNONE"], [
+   AC_DEFINE_UNQUOTED(PACKAGE_LOCALE_DIR, "${prefix}/share/locale", [Locale-specific data directory])
+ ])
++# ================
++# Check for ldflags
++# ================
++AC_ARG_ENABLE([pie],
++   [AS_HELP_STRING([--disable-pie], [Disable Position Independent Executable])],
++   [enable_pie="$enableval"],
++   [enable_pie=yes]
++)
++AS_IF([test x"$enable_pie" != "xno"], [
++    PIE_LDFLAGS="-pie"
++])
++AC_SUBST([PIE_LDFLAGS])
+ # ================
+ # Check for cflags
+-- 
+2.14.1
+
index 5f1e427d0ba48b8846cf174dbf6473a454b5dabc..8c7563d289515caaad11c471be33bd57159ab7a1 100644 (file)
@@ -10,6 +10,7 @@ QUOTA_DEPENDENCIES = $(TARGET_NLS_DEPENDENCIES) host-nfs-utils
 QUOTA_LICENSE = GPL-2.0+
 QUOTA_LICENSE_FILES = COPYING
 QUOTA_LIBS = $(TARGET_NLS_LIBS)
+QUOTA_CONF_OPTS = --disable-pie
 
 ifeq ($(BR2_PACKAGE_DBUS)$(BR2_PACKAGE_LIBNL),yy)
 QUOTA_DEPENDENCIES += host-pkgconf dbus libnl