mmc-utils: don't set -D_FORTIFY_SOURCE in Makefile, take 2
authorMichael Heimpold <mhei@heimpold.de>
Sun, 30 Aug 2015 12:33:46 +0000 (14:33 +0200)
committerMichael Heimpold <mhei@heimpold.de>
Sun, 30 Aug 2015 12:33:46 +0000 (14:33 +0200)
Also already mentioned in ba4338d6f7753c77b03357aa74cc63771e94074a,
the security feature FORTIFY_SOURCE could be set globally.
The current approach tries to undefine and redefine it, however,
the order on the command line prevents this from being successfully, e.g.:

arm-openwrt-linux-muslgnueabi-gcc  ... -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 ... -D_FORTIFY_SOURCE=1 ...
                                       `---------------v-------------------'     `--------v--------'
                                                   AM_CFLAGS                        OpenWrt params

So to have the original source (static) _FORTIFY_SOURCE=2 define,
the only option is to remove it from AM_CFLAGS completely, and
to pass it after the OpenWrt settings explicitely in the Makefile.

This should fix the buildbots finally.

Signed-off-by: Michael Heimpold <mhei@heimpold.de>
utils/mmc-utils/Makefile
utils/mmc-utils/patches/001-properly-set-fortify-source-in-makefile.patch

index a089b2f4c5c0712fd16ecc6ad2cbcb9a14be7b92..00a0531eca4d427d02a316157a50960ab50d2cb8 100644 (file)
@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=mmc-utils
 PKG_VERSION=2015-05-01-$(PKG_SOURCE_VERSION)
-PKG_RELEASE:=1
+PKG_RELEASE:=2
 
 PKG_SOURCE_PROTO:=git
 PKG_SOURCE_URL:=https://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc-utils.git
@@ -44,7 +44,7 @@ endef
 
 define Build/Compile
        $(MAKE) -C $(PKG_BUILD_DIR) \
-               $(TARGET_CONFIGURE_OPTS) CFLAGS="$(TARGET_CFLAGS)" \
+               $(TARGET_CONFIGURE_OPTS) CFLAGS="$(TARGET_CFLAGS) -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2" \
                mmc
 endef
 
index 4a35b959b17545b4703c79a0fec02f34bd29cc25..1a2081335a4f5ad0c0789e2f8b6082af4d659255 100644 (file)
@@ -1,11 +1,9 @@
-Index: mmc-utils-f4eb241519f8d500ce6068a70d2389be39ac5189/Makefile
-===================================================================
---- mmc-utils-f4eb241519f8d500ce6068a70d2389be39ac5189.orig/Makefile
-+++ mmc-utils-f4eb241519f8d500ce6068a70d2389be39ac5189/Makefile
+--- a/Makefile
++++ b/Makefile
 @@ -1,5 +1,5 @@
  CC ?= gcc
 -AM_CFLAGS = -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2
-+AM_CFLAGS = -D_FILE_OFFSET_BITS=64 -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2
++AM_CFLAGS = -D_FILE_OFFSET_BITS=64
  CFLAGS ?= -g -O2
  objects = \
        mmc.o \