aboutsummaryrefslogtreecommitdiffstats
path: root/rules.mk
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
commit3b97582caa13c1cc737dc3f712f2179043df7f1d (patch)
tree8689429d1a37dc9da384c0430fe58d585d840384 /rules.mk
parent88d8a57b983eea5e488f3b785eb27406fe3a19c7 (diff)
downloadupstream-3b97582caa13c1cc737dc3f712f2179043df7f1d.tar.gz
upstream-3b97582caa13c1cc737dc3f712f2179043df7f1d.tar.bz2
upstream-3b97582caa13c1cc737dc3f712f2179043df7f1d.zip
[buildroot] rules.mk: properly populate $(LIBGCC_S) for external toolchains
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@26593 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'rules.mk')
-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