From 178275dc0cbb3009728913689b489608c0469bdd Mon Sep 17 00:00:00 2001 From: Matteo Cypriani Date: Sun, 7 Sep 2014 10:47:02 -0400 Subject: [PATCH] Don't build libtcc1 with -fstack-protector-strong Prevent libtcc1.a to be compiled with -fstack-protector-strong, so that linking with tcc doesn't fail because symbol '__stack_chk_fail_local' is not present in libtcc1.a. This is useful only if the CFLAGS passed from the main Makefile contain this flag. --- lib/Makefile | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/lib/Makefile b/lib/Makefile index e9e12f1..37d4711 100644 --- a/lib/Makefile +++ b/lib/Makefile @@ -54,6 +54,10 @@ WIN64_O = $(X86_64_O) crt1.o wincrt1.o dllcrt1.o dllmain.o chkstk.o # into shared libraries PICFLAGS = -fPIC +# don't compile with -fstack-protector-strong, TCC doesn't handle it +# correctly +CFLAGS := $(filter-out -fstack-protector-strong,$(CFLAGS)) + ifeq "$(TARGET)" "i386-win32" OBJ = $(addprefix $(DIR)/,$(WIN32_O)) TGT = -DTCC_TARGET_I386 -DTCC_TARGET_PE