summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sys-boot/yaboot/files/yaboot-nopiessp-gcc4.patch')
-rw-r--r--sys-boot/yaboot/files/yaboot-nopiessp-gcc4.patch32
1 files changed, 14 insertions, 18 deletions
diff --git a/sys-boot/yaboot/files/yaboot-nopiessp-gcc4.patch b/sys-boot/yaboot/files/yaboot-nopiessp-gcc4.patch
index 1016d8f5621d..ed1755b72b33 100644
--- a/sys-boot/yaboot/files/yaboot-nopiessp-gcc4.patch
+++ b/sys-boot/yaboot/files/yaboot-nopiessp-gcc4.patch
@@ -1,6 +1,10 @@
-diff -Nrup yaboot-1.3.13.orig/Config.gentoo yaboot-1.3.13/Config.gentoo
---- yaboot-1.3.13.orig/Config.gentoo 1970-01-01 00:00:00.000000000 +0000
-+++ yaboot-1.3.13/Config.gentoo 2005-06-12 00:41:14.889576152 +0000
+disable ssp usage in yaboot itself
+
+unfortunately, since we link against external libs that themselves were built
+with ssp turned on, we have to provide stubs to keep the linking from failing
+
+--- yaboot-1.3.13/Config.gentoo
++++ yaboot-1.3.13/Config.gentoo
@@ -0,0 +1,6 @@
+check_gcc=$(shell if $(CC) $(1) -S -o /dev/null -xc /dev/null > /dev/null 2>&1; \
+ then echo "$(1)"; else echo "$(2)"; fi)
@@ -8,9 +12,8 @@ diff -Nrup yaboot-1.3.13.orig/Config.gentoo yaboot-1.3.13/Config.gentoo
+CFLAGS += $(call check_gcc, -fno-stack-protector)
+CFLAGS += $(call check_gcc, --nopie)
+
-diff -Nrup yaboot-1.3.13.orig/Makefile yaboot-1.3.13/Makefile
---- yaboot-1.3.13.orig/Makefile 2004-07-11 20:12:03.000000000 +0000
-+++ yaboot-1.3.13/Makefile 2005-06-12 00:41:14.890576000 +0000
+--- yaboot-1.3.13/Makefile
++++ yaboot-1.3.13/Makefile
@@ -1,6 +1,7 @@
## Setup
@@ -28,15 +31,8 @@ diff -Nrup yaboot-1.3.13.orig/Makefile yaboot-1.3.13/Makefile
ifeq ($(USE_MD5_PASSWORDS),y)
OBJS += second/md5.o
-diff -Naur yaboot-1.3.14.orig/lib/ssp.c yaboot-1.3.14/lib/ssp.c
---- yaboot-1.3.14.orig/lib/ssp.c 1970-01-01 00:00:00.000000000 +0000
-+++ yaboot-1.3.14/lib/ssp.c 2010-06-20 18:50:57.000000000 +0000
-@@ -0,0 +1,7 @@
-+extern void __stack_chk_fail_local (void) ;
-+
-+void
-+__stack_chk_fail_local (void)
-+{
-+ return;
-+}
-
+--- yaboot-1.3.14/lib/ssp.c
++++ yaboot-1.3.14/lib/ssp.c
+@@ -0,0 +1,2 @@
++void __stack_chk_fail(void) {}
++void __stack_chk_fail_local(void) {}