From b4367d2545c3e0c9fd5ad73cd47a06a5b074760b Mon Sep 17 00:00:00 2001 From: Mike Frysinger Date: Sun, 17 May 2015 04:33:12 +0000 Subject: Add stub func for newer ssp builds #527974 by Agostino Sarubbo. (Portage version: 2.2.19/cvs/Linux x86_64, signed Manifest commit with key D2E96200) --- sys-boot/yaboot/ChangeLog | 6 +++- .../yaboot/files/yaboot-1.3.17-nopiessp-gcc4.patch | 36 ++++++++++------------ sys-boot/yaboot/files/yaboot-nopiessp-gcc4.patch | 32 +++++++++---------- 3 files changed, 35 insertions(+), 39 deletions(-) (limited to 'sys-boot') diff --git a/sys-boot/yaboot/ChangeLog b/sys-boot/yaboot/ChangeLog index 3de0087c45d4..5ade98f6d90d 100644 --- a/sys-boot/yaboot/ChangeLog +++ b/sys-boot/yaboot/ChangeLog @@ -1,6 +1,10 @@ # ChangeLog for sys-boot/yaboot # Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-boot/yaboot/ChangeLog,v 1.51 2015/05/17 04:27:34 vapier Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-boot/yaboot/ChangeLog,v 1.52 2015/05/17 04:33:12 vapier Exp $ + + 17 May 2015; Mike Frysinger + files/yaboot-1.3.17-nopiessp-gcc4.patch, files/yaboot-nopiessp-gcc4.patch: + Add stub func for newer ssp builds #527974 by Agostino Sarubbo. 17 May 2015; Mike Frysinger -files/yaboot-nopiessp.patch, yaboot-1.3.14-r2.ebuild, yaboot-1.3.16.ebuild, yaboot-1.3.17-r2.ebuild: diff --git a/sys-boot/yaboot/files/yaboot-1.3.17-nopiessp-gcc4.patch b/sys-boot/yaboot/files/yaboot-1.3.17-nopiessp-gcc4.patch index 8e060e54c2e8..1ab2a3eecc3e 100644 --- a/sys-boot/yaboot/files/yaboot-1.3.17-nopiessp-gcc4.patch +++ b/sys-boot/yaboot/files/yaboot-1.3.17-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 @@ -21,22 +24,15 @@ diff -Nrup yaboot-1.3.13.orig/Makefile yaboot-1.3.13/Makefile # Debug mode (spam/verbose) @@ -79,7 +80,7 @@ HOSTCFLAGS = -O2 $(CFLAGS) -Wall -I/usr/ second/fs_of.o second/fs_ext2.o second/fs_iso.o second/fs_swap.o \ - second/iso_util.o \ - lib/nonstd.o \ + second/iso_util.o \ + lib/nonstd.o \ - lib/nosys.o lib/string.o lib/strtol.o lib/vsprintf.o lib/ctype.o lib/malloc.o lib/strstr.o + lib/nosys.o lib/string.o lib/strtol.o lib/vsprintf.o lib/ctype.o lib/malloc.o lib/strstr.o lib/ssp.o 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) {} 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) {} -- cgit v1.2.3-65-gdbad