Initial commit
This commit is contained in:
50
toolchain/musl/patches/200-add_libssp_nonshared.patch
Normal file
50
toolchain/musl/patches/200-add_libssp_nonshared.patch
Normal file
@@ -0,0 +1,50 @@
|
||||
From 7ec87fbbc3cac99b4173d082dd6195f47c9a32e7 Mon Sep 17 00:00:00 2001
|
||||
From: Steven Barth <steven@midlink.org>
|
||||
Date: Mon, 22 Jun 2015 11:01:56 +0200
|
||||
Subject: [PATCH] Add libssp_nonshared.a so GCC's is not needed
|
||||
|
||||
Signed-off-by: Steven Barth <steven@midlink.org>
|
||||
---
|
||||
Makefile | 10 ++++++++--
|
||||
libssp_nonshared/__stack_chk_fail_local.c | 2 ++
|
||||
2 files changed, 10 insertions(+), 2 deletions(-)
|
||||
create mode 100644 libssp_nonshared/__stack_chk_fail_local.c
|
||||
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -66,7 +66,7 @@ CRT_LIBS = $(addprefix lib/,$(notdir $(C
|
||||
STATIC_LIBS = lib/libc.a
|
||||
SHARED_LIBS = lib/libc.so
|
||||
TOOL_LIBS = lib/musl-gcc.specs
|
||||
-ALL_LIBS = $(CRT_LIBS) $(STATIC_LIBS) $(SHARED_LIBS) $(EMPTY_LIBS) $(TOOL_LIBS)
|
||||
+ALL_LIBS = $(CRT_LIBS) $(STATIC_LIBS) $(SHARED_LIBS) $(EMPTY_LIBS) $(TOOL_LIBS) lib/libssp_nonshared.a
|
||||
ALL_TOOLS = obj/musl-gcc
|
||||
|
||||
WRAPCC_GCC = gcc
|
||||
@@ -125,7 +125,8 @@ NOSSP_SRCS = $(wildcard crt/*.c) \
|
||||
src/thread/__set_thread_area.c src/thread/$(ARCH)/__set_thread_area.c \
|
||||
src/string/memset.c src/string/$(ARCH)/memset.c \
|
||||
src/string/memcpy.c src/string/$(ARCH)/memcpy.c \
|
||||
- ldso/dlstart.c ldso/dynlink.c
|
||||
+ ldso/dlstart.c ldso/dynlink.c \
|
||||
+ src/libssp_nonshared/__stack_chk_fail_local.c
|
||||
$(NOSSP_SRCS:%.c=obj/%.o) $(NOSSP_SRCS:%.c=obj/%.lo): CFLAGS_ALL += $(CFLAGS_NOSSP)
|
||||
|
||||
$(CRT_OBJS): CFLAGS_ALL += -DCRT
|
||||
@@ -168,6 +169,11 @@ lib/libc.a: $(AOBJS)
|
||||
$(AR) rc $@ $(AOBJS)
|
||||
$(RANLIB) $@
|
||||
|
||||
+lib/libssp_nonshared.a: obj/src/libssp_nonshared/__stack_chk_fail_local.o
|
||||
+ rm -f $@
|
||||
+ $(AR) rc $@ $<
|
||||
+ $(RANLIB) $@
|
||||
+
|
||||
$(EMPTY_LIBS):
|
||||
rm -f $@
|
||||
$(AR) rc $@
|
||||
--- /dev/null
|
||||
+++ b/src/libssp_nonshared/__stack_chk_fail_local.c
|
||||
@@ -0,0 +1,2 @@
|
||||
+#include "atomic.h"
|
||||
+void __attribute__((visibility ("hidden"))) __stack_chk_fail_local(void) { a_crash(); }
|
||||
Reference in New Issue
Block a user