summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2015-05-17 04:33:12 +0000
committerMike Frysinger <vapier@gentoo.org>2015-05-17 04:33:12 +0000
commitb4367d2545c3e0c9fd5ad73cd47a06a5b074760b (patch)
tree9637e3df1fbed2f21e387bd784753cb815ead662 /sys-boot
parentDrop support for ssp found in gcc-3 and older #527974. (diff)
downloadgentoo-2-b4367d2545c3e0c9fd5ad73cd47a06a5b074760b.tar.gz
gentoo-2-b4367d2545c3e0c9fd5ad73cd47a06a5b074760b.tar.bz2
gentoo-2-b4367d2545c3e0c9fd5ad73cd47a06a5b074760b.zip
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)
Diffstat (limited to 'sys-boot')
-rw-r--r--sys-boot/yaboot/ChangeLog6
-rw-r--r--sys-boot/yaboot/files/yaboot-1.3.17-nopiessp-gcc4.patch36
-rw-r--r--sys-boot/yaboot/files/yaboot-nopiessp-gcc4.patch32
3 files changed, 35 insertions, 39 deletions
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 <vapier@gentoo.org>
+ 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 <vapier@gentoo.org> -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) {}