From c565bc4a61851eae7c45ffd319df2bf625bdfd67 Mon Sep 17 00:00:00 2001 From: Wen Xiong Date: Thu, 3 Apr 2014 10:27:43 -0500 Subject: [PATCH] iprutils: Fixes to comply with hardened build flags by ubuntu and debian MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit On Ubuntu and Debian, the hardened build passes the following flags to the compilation through env. variables. Hence several formatting strings are mandatory. Also for that to work, the Makefile needs to handle the env. variables. $ dpkg-buildflags CFLAGS=-g -O3 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security CPPFLAGS=-D_FORTIFY_SOURCE=2 CXXFLAGS=-g -O3 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security FFLAGS=-g -O3 -fstack-protector --param=ssp-buffer-size=4 GCJFLAGS=-g -O3 -fstack-protector --param=ssp-buffer-size=4 LDFLAGS=-Wl,-Bsymbolic-functions -Wl,-z,relro Signed-off-by: Frédéric Bonnard --- Makefile | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/Makefile b/Makefile index 80e4b93..99484f4 100644 --- a/Makefile +++ b/Makefile @@ -9,29 +9,29 @@ CC = gcc include version.mk -CFLAGS = -g -Wall $(IPR_DEFINES) +CFLAGS += -g -Wall $(IPR_DEFINES) UTILS_VER = $(IPR_MAJOR_RELEASE).$(IPR_MINOR_RELEASE).$(IPR_FIX_LEVEL) TAR = cd .. && tar -zcpf iprutils-$(UTILS_VER)-src.tgz --exclude CVS --exclude applied-patches --exclude series --exclude txt --exclude pc --exclude patches --exclude debug --exclude *~* iprutils all: iprconfig iprupdate iprdump iprinit iprdbg docs iprconfig: iprconfig.c iprlib.o iprconfig.h - $(CC) $(CFLAGS) $(INCLUDEDIR) -o iprconfig iprconfig.c iprlib.o -lform -lpanel -lncurses -lmenu + $(CC) $(CFLAGS) $(INCLUDEDIR) -o iprconfig iprconfig.c iprlib.o $(LDFLAGS) -lform -lpanel -lncurses -lmenu iprupdate: iprupdate.c iprlib.o - $(CC) $(CFLAGS) $(INCLUDEDIR) -o iprupdate iprlib.o iprupdate.c + $(CC) $(CFLAGS) $(INCLUDEDIR) -o iprupdate iprlib.o iprupdate.c $(LDFLAGS) iprdump:iprdump.c iprlib.o - $(CC) $(CFLAGS) $(INCLUDEDIR) -o iprdump iprlib.o iprdump.c + $(CC) $(CFLAGS) $(INCLUDEDIR) -o iprdump iprlib.o iprdump.c $(LDFLAGS) iprinit:iprinit.c iprlib.o - $(CC) $(CFLAGS) $(INCLUDEDIR) -o iprinit iprlib.o iprinit.c + $(CC) $(CFLAGS) $(INCLUDEDIR) -o iprinit iprlib.o iprinit.c $(LDFLAGS) iprdbg:iprdbg.c iprlib.o - $(CC) $(CFLAGS) $(INCLUDEDIR) -o iprdbg iprlib.o iprdbg.c + $(CC) $(CFLAGS) $(INCLUDEDIR) -o iprdbg iprlib.o iprdbg.c $(LDFLAGS) iprucode:iprucode.c iprlib.o - $(CC) $(CFLAGS) $(INCLUDEDIR) -o iprucode iprlib.o iprucode.c + $(CC) $(CFLAGS) $(INCLUDEDIR) -o iprucode iprlib.o iprucode.c $(LDFLAGS) iprlib.o: iprlib.c iprlib.h $(CC) $(CFLAGS) $(INCLUDEDIR) -o iprlib.o -c iprlib.c