OSDN Git Service

Cleaned up patch from Peter S. Mazinger adding support for
authorEric Andersen <andersen@codepoet.org>
Wed, 22 Dec 2004 21:04:52 +0000 (21:04 -0000)
committerEric Andersen <andersen@codepoet.org>
Wed, 22 Dec 2004 21:04:52 +0000 (21:04 -0000)
-fstack-protector and -fno-stack-protector-all security
options

Rules.mak
ldso/ldso/Makefile
ldso/libdl/Makefile
libcrypt/Makefile
libintl/Makefile
libm/Makefile
libnsl/Makefile
libpthread/Makefile
libresolv/Makefile
libutil/Makefile
utils/Makefile

index 7c6b51d..75bf946 100644 (file)
--- a/Rules.mak
+++ b/Rules.mak
@@ -231,9 +231,13 @@ PIEFLAG=
 LDPIEFLAG=
 endif
 
-ifeq ($(SSP_CFLAGS),)
+SSP_DISABLE_FLAGS=$(call check_gcc,-fno-stack-protector,)
+ifeq ($(UCLIBC_PROPOLICE),y)
 SSP_CFLAGS=$(call check_gcc,-fno-stack-protector-all,)
 SSP_CFLAGS+=$(call check_gcc,-fstack-protector,)
+SSP_ALL_CFLAGS=$(call check_gcc,-fstack-protector-all,)
+else
+SSP_CFLAGS=$(SSP_DISABLE_FLAGS)
 endif
 
 # Some nice CFLAGS to work with
@@ -242,7 +246,8 @@ CFLAGS=$(XWARNINGS) $(OPTIMIZATION) $(XARCH_CFLAGS) $(CPU_CFLAGS) $(SSP_CFLAGS)
 
 ifeq ($(DODEBUG),y)
     #CFLAGS += -g3
-    CFLAGS = $(XWARNINGS) -O0 -g3 $(CPU_CFLAGS) -fno-builtin -nostdinc -D_LIBC -I$(TOPDIR)include -I.
+    CFLAGS = $(XWARNINGS) -O0 -g3 $(CPU_CFLAGS) $(SSP_CFLAGS) \
+       -fno-builtin -nostdinc -D_LIBC -I$(TOPDIR)include -I.
     LDFLAGS:= $(CPU_LDFLAGS-y) -shared --warn-common --warn-once -z combreloc
     STRIPTOOL:= true -Since_we_are_debugging
 else
index 1d71f3f..ef48e33 100644 (file)
@@ -21,11 +21,10 @@ TOPDIR=../../
 include $(TOPDIR)Rules.mak
 LDSO_FULLNAME=ld-uClibc-$(MAJOR_VERSION).$(MINOR_VERSION).$(SUBLEVEL).so
 
-SSPFLAGS=$(call check_gcc,-fno-stack-protector,)
 # reset to initial (disabling predefined CFLAGS)
 ASFLAGS=
 
-XXFLAGS=$(XWARNINGS) $(SSPFLAGS)
+XXFLAGS=$(XWARNINGS) $(SSP_DISABLE_FLAGS)
 ifeq ($(DODEBUG),y)
 # Not really much point in including debugging info, since gdb
 # can't really debug ldso, since gdb requires help from ldso to
index 7f65128..37019af 100644 (file)
@@ -21,7 +21,7 @@
 TOPDIR=../../
 include $(TOPDIR)Rules.mak
 
-XXFLAGS=$(XWARNINGS)
+XXFLAGS=$(XWARNINGS) $(SSP_CFLAGS) $(SSP_ALL_CFLAGS)
 ifeq ($(DODEBUG),y)
 XXFLAGS+=-O0 -g3
 else
index afe20f7..497e530 100644 (file)
@@ -24,6 +24,8 @@
 TOPDIR=../
 include $(TOPDIR)Rules.mak
 
+CFLAGS+=$(SSP_ALL_CFLAGS)
+
 LIBCRYPT=libcrypt.a
 LIBCRYPT_SHARED=libcrypt.so
 LIBCRYPT_SHARED_FULLNAME=libcrypt-$(MAJOR_VERSION).$(MINOR_VERSION).$(SUBLEVEL).so
index d52409e..8dd084d 100644 (file)
@@ -25,6 +25,8 @@ TOPDIR=../
 include $(TOPDIR)Rules.mak
 LIBC=$(TOPDIR)libc.a
 
+CFLAGS+=$(SSP_ALL_CFLAGS)
+
 LIBINTL=libintl.a
 LIBINTL_SHARED=libintl.so
 LIBINTL_SHARED_FULLNAME=libintl-$(MAJOR_VERSION).$(MINOR_VERSION).$(SUBLEVEL).so
index cdecf09..02e6321 100644 (file)
@@ -34,6 +34,8 @@
 TOPDIR=../
 include $(TOPDIR)Rules.mak
 
+CFLAGS+=$(SSP_ALL_CFLAGS)
+
 DIRS = 
 ifeq ($(strip $(HAS_FPU)),y)
 ifeq ($(TARGET_ARCH),$(wildcard $(TARGET_ARCH)))
index 1d1b9a5..9156510 100644 (file)
@@ -19,6 +19,8 @@
 TOPDIR=../
 include $(TOPDIR)Rules.mak
 
+CFLAGS+=$(SSP_ALL_CFLAGS)
+
 LIBNSL=libnsl.a
 LIBNSL_SHARED=libnsl.so
 LIBNSL_SHARED_FULLNAME=libnsl-$(MAJOR_VERSION).$(MINOR_VERSION).$(SUBLEVEL).so
index 709d22b..4a763ca 100644 (file)
@@ -19,6 +19,8 @@
 TOPDIR=../
 include $(TOPDIR)Rules.mak
 
+CFLAGS+=$(SSP_ALL_CFLAGS)
+
 #Adjust the soname version to avoid namespace collisions with glibc's libpthread
 LIBPTHREAD=libpthread.a
 LIBPTHREAD_SHARED=libpthread.so
index d575363..510457b 100644 (file)
@@ -25,6 +25,8 @@
 TOPDIR=../
 include $(TOPDIR)Rules.mak
 
+CFLAGS+=$(SSP_ALL_CFLAGS)
+
 LIBRESOLV=libresolv.a
 LIBRESOLV_SHARED=libresolv.so
 LIBRESOLV_SHARED_FULLNAME=libresolv-$(MAJOR_VERSION).$(MINOR_VERSION).$(SUBLEVEL).so
index a31f1ed..59176c9 100644 (file)
@@ -25,6 +25,8 @@ TOPDIR=../
 include $(TOPDIR)Rules.mak
 LIBC=$(TOPDIR)libc.a
 
+CFLAGS+=$(SSP_ALL_CFLAGS)
+
 LIBUTIL=libutil.a
 LIBUTIL_SHARED=libutil.so
 LIBUTIL_SHARED_FULLNAME=libutil-$(MAJOR_VERSION).$(MINOR_VERSION).$(SUBLEVEL).so
index 168a2e9..8664005 100644 (file)
@@ -19,6 +19,8 @@
 TOPDIR=../
 include $(TOPDIR)Rules.mak
 
+CFLAGS+=$(SSP_ALL_CFLAGS)
+
 TARGETS = ldd ldconfig readelf
 
 ifeq ($(strip $(UCLIBC_HAS_LOCALE)),y)