From f899e1bc452ec65e58cbeff9a0f8f79e8d1eeec7 Mon Sep 17 00:00:00 2001 From: Imre Kaloz Date: Mon, 6 Feb 2006 11:26:51 +0000 Subject: [PATCH] make gcc4 depend on libgcc, and disable the libgcc hack for it SVN-Revision: 3161 --- .../gcc/4.0.2/static-libgcc.patch.conditional | 11 ----------- openwrt/toolchain/gcc/Config.in | 1 + openwrt/toolchain/gcc/Makefile | 6 +----- 3 files changed, 2 insertions(+), 16 deletions(-) delete mode 100644 openwrt/toolchain/gcc/4.0.2/static-libgcc.patch.conditional diff --git a/openwrt/toolchain/gcc/4.0.2/static-libgcc.patch.conditional b/openwrt/toolchain/gcc/4.0.2/static-libgcc.patch.conditional deleted file mode 100644 index 6bb5c50046..0000000000 --- a/openwrt/toolchain/gcc/4.0.2/static-libgcc.patch.conditional +++ /dev/null @@ -1,11 +0,0 @@ ---- specs~ 2006-01-27 11:44:50.000000000 +0100 -+++ specs 2006-01-27 12:00:41.000000000 +0100 -@@ -57,7 +57,7 @@ - %{fmudflap|fmudflapth: -export-dynamic} - - *libgcc: --%{static|static-libgcc:-lgcc -lgcc_eh}%{!static:%{!static-libgcc:%{!shared-libgcc:-lgcc --as-needed -lgcc_s --no-as-needed}%{shared-libgcc:-lgcc_s%{!shared: -lgcc}}}} -+%{static|static-libgcc:-lgcc -lgcc_eh}%{!static:%{!static-libgcc:%{!shared:%{!shared-libgcc:-lgcc -lgcc_eh}%{shared-libgcc:-lgcc_s -lgcc}}%{shared:%{shared-libgcc:-lgcc_s%{!shared-libgcc: -lgcc}}}}} - - *startfile: - %{!shared: %{pg|p|profile:gcrt1.o%s;pie:Scrt1.o%s;:crt1.o%s}} crti.o%s %{static:crtbeginT.o%s;shared|pie:crtbeginS.o%s;:crtbegin.o%s} diff --git a/openwrt/toolchain/gcc/Config.in b/openwrt/toolchain/gcc/Config.in index 759daea5be..bec032e299 100644 --- a/openwrt/toolchain/gcc/Config.in +++ b/openwrt/toolchain/gcc/Config.in @@ -29,6 +29,7 @@ choice config BR2_GCC_VERSION_4_0_2 bool "gcc 4.0.2" select BR2_GCC_3_4 + select BR2_PACKAGE_LIBGCC endchoice diff --git a/openwrt/toolchain/gcc/Makefile b/openwrt/toolchain/gcc/Makefile index 2d24cdd13e..26e17ad61e 100644 --- a/openwrt/toolchain/gcc/Makefile +++ b/openwrt/toolchain/gcc/Makefile @@ -193,11 +193,7 @@ endif # We do another ugly hack here because the standard behaviour is # to include a reference to libgcc.so.1 in all binaries. For flash space # saving, we change the specs file to link in a static libgcc here. - if [ ! -f $(STAGING_DIR)/lib/gcc/$(REAL_GNU_TARGET_NAME)/$(GCC_VERSION)/specs ] ; then \ - echo staging dir specs file is missing, assuming GCC 4.x ; \ - $(STAGING_DIR)/bin/$(REAL_GNU_TARGET_NAME)-gcc -dumpspecs > $(STAGING_DIR)/lib/gcc/$(REAL_GNU_TARGET_NAME)/$(GCC_VERSION)/specs; \ - fi; - if grep -q as-needed $(STAGING_DIR)/lib/gcc/$(REAL_GNU_TARGET_NAME)/$(GCC_VERSION)/specs; then \ + if [ -f $(STAGING_DIR)/lib/gcc/$(REAL_GNU_TARGET_NAME)/$(GCC_VERSION)/specs ] ; then \ patch -d $(STAGING_DIR)/lib/gcc/$(REAL_GNU_TARGET_NAME)/$(GCC_VERSION)/ -p0 < ./$(GCC_VERSION)/static-libgcc.patch.conditional ; \ fi;