aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJo-Philipp Wich <jow@openwrt.org>2011-04-11 16:06:46 +0000
committerJo-Philipp Wich <jow@openwrt.org>2011-04-11 16:06:46 +0000
commita66b4960011df6d91b29f5f2b7f4831369e6859d (patch)
treeece5a931dafbac0b7aabfaef51a06879daaee51a
parenta65b43a46fe65e7051b68c6e8af4c90d2f96e293 (diff)
downloadupstream-a66b4960011df6d91b29f5f2b7f4831369e6859d.tar.gz
upstream-a66b4960011df6d91b29f5f2b7f4831369e6859d.tar.bz2
upstream-a66b4960011df6d91b29f5f2b7f4831369e6859d.zip
rules.mk: properly populate $(LIBGCC_S) for external toolchains
SVN-Revision: 26593
-rw-r--r--rules.mk5
1 files changed, 5 insertions, 0 deletions
diff --git a/rules.mk b/rules.mk
index a3516a57a0..7be2d6195d 100644
--- a/rules.mk
+++ b/rules.mk
@@ -110,7 +110,12 @@ TARGET_PATH:=$(STAGING_DIR_HOST)/bin:$(PATH)
TARGET_CFLAGS:=$(TARGET_OPTIMIZATION)$(if $(CONFIG_DEBUG), -g3)
TARGET_CPPFLAGS:=-I$(STAGING_DIR)/usr/include -I$(STAGING_DIR)/include
TARGET_LDFLAGS:=-L$(STAGING_DIR)/usr/lib -L$(STAGING_DIR)/lib
+ifneq ($(CONFIG_EXTERNAL_TOOLCHAIN),)
+LIBGCC_S_PATH=$(realpath $(wildcard $(call qstrip,$(CONFIG_LIBGCC_ROOT_DIR))/$(call qstrip,$(CONFIG_LIBGCC_FILE_SPEC))))
+LIBGCC_S=$(if $(LIBGCC_S_PATH),-L$(dir $(LIBGCC_S_PATH)) -lgcc_s)
+else
LIBGCC_S=$(if $(wildcard $(TOOLCHAIN_DIR)/lib/libgcc_s.so),-L$(TOOLCHAIN_DIR)/lib -lgcc_s,$(wildcard $(TOOLCHAIN_DIR)/lib/gcc/*/*/libgcc.a))
+endif
ifdef CONFIG_USE_UCLIBC
LIBRPC=-lrpc
endif