From 9d6eef9b39547d230d5a7cb871735bae71f5fd55 Mon Sep 17 00:00:00 2001 From: Waldemar Brodkorb Date: Tue, 26 Aug 2014 12:28:55 +0200 Subject: we need to remove crtbegin.o/crtend.o from gcc specs file. otherwise broken executables (f.e. sash) with a wrong data start are created by elf2flt) --- toolchain/gcc/Makefile | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'toolchain/gcc/Makefile') diff --git a/toolchain/gcc/Makefile b/toolchain/gcc/Makefile index 25c396e1b..efe5231c1 100644 --- a/toolchain/gcc/Makefile +++ b/toolchain/gcc/Makefile @@ -48,12 +48,16 @@ ifneq ($(ADK_LINUX_AARCH64)$(ADK_LINUX_ALPHA)$(ADK_LINUX_XTENSA)$(ADK_LINUX_M68K GCC_FINAL_CONFOPTS+= --enable-cxx-flags='$(TARGET_CXXFLAGS)' endif +ifeq ($(ADK_TARGET_UCLINUX),y) +GCC_FINAL_CONFOPTS+= --disable-shared +else # uClibc/glibc uses libgcc_s.so.1 for pthread_cancel with dlopen ifeq (ADK_TARGET_LIB_MUSL),y) GCC_FINAL_CONFOPTS+= --enable-shared='libstdc++' else GCC_FINAL_CONFOPTS+= --enable-shared='libstdc++,libgcc' endif +endif ifeq ($(ADK_LINUX_M68K)$(ADK_LINUX_SH)$(ADK_LINUX_X86_64)$(ADK_LINUX_X86),) GCC_FINAL_CONFOPTS+= --disable-biarch --disable-multilib @@ -267,6 +271,10 @@ endif ln -sf libstdc++.so.6.0.19 libstdc++.so.6 # cleanup unneeded docs rm -rf $(TOOLCHAIN_DIR)/usr/share + # create gcc wrapper for uClinux/m68k + echo "#!/bin/sh" > $(TOOLCHAIN_DIR)/usr/bin/adk-uclinux-gcc + echo "exec ${GNU_TARGET_NAME}-gcc \"$$@\" -specs $(ADK_TOPDIR)/toolchain/gcc/m68k-uclinux-gcc.specs" >> $(TOOLCHAIN_DIR)/usr/bin/adk-uclinux-gcc + chmod a+x $(TOOLCHAIN_DIR)/usr/bin/adk-uclinux-gcc touch $@ include ${ADK_TOPDIR}/mk/toolchain.mk -- cgit v1.2.3 From 008d0e157538e4a4c302dc79e6c28c9da615b527 Mon Sep 17 00:00:00 2001 From: Waldemar Brodkorb Date: Wed, 27 Aug 2014 14:59:45 +0200 Subject: fix gcc wrapper, spawn a shell after rc is finished --- toolchain/gcc/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'toolchain/gcc/Makefile') diff --git a/toolchain/gcc/Makefile b/toolchain/gcc/Makefile index efe5231c1..bbe049826 100644 --- a/toolchain/gcc/Makefile +++ b/toolchain/gcc/Makefile @@ -273,7 +273,7 @@ endif rm -rf $(TOOLCHAIN_DIR)/usr/share # create gcc wrapper for uClinux/m68k echo "#!/bin/sh" > $(TOOLCHAIN_DIR)/usr/bin/adk-uclinux-gcc - echo "exec ${GNU_TARGET_NAME}-gcc \"$$@\" -specs $(ADK_TOPDIR)/toolchain/gcc/m68k-uclinux-gcc.specs" >> $(TOOLCHAIN_DIR)/usr/bin/adk-uclinux-gcc + echo "exec ${GNU_TARGET_NAME}-gcc \"\$$@\" -specs $(ADK_TOPDIR)/toolchain/gcc/m68k-uclinux-gcc.specs" >> $(TOOLCHAIN_DIR)/usr/bin/adk-uclinux-gcc chmod a+x $(TOOLCHAIN_DIR)/usr/bin/adk-uclinux-gcc touch $@ -- cgit v1.2.3