aboutsummaryrefslogtreecommitdiffstats
path: root/toolchain/gcc
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2012-06-30 18:12:19 +0000
committerFelix Fietkau <nbd@openwrt.org>2012-06-30 18:12:19 +0000
commit68e39d682ca4c179eaf8ea1aa2e277e1b1da4bcd (patch)
treeed0c23bccea8b11503d55ce5e71d02f61f3621ac /toolchain/gcc
parent488f47237e196cfe24bbeee4c237db19d304e7f8 (diff)
downloadupstream-68e39d682ca4c179eaf8ea1aa2e277e1b1da4bcd.tar.gz
upstream-68e39d682ca4c179eaf8ea1aa2e277e1b1da4bcd.tar.bz2
upstream-68e39d682ca4c179eaf8ea1aa2e277e1b1da4bcd.zip
toolchain/gcc: fix installing the toolchain after removing the toolchain dir without a full rebuild
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@32554 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'toolchain/gcc')
-rw-r--r--toolchain/gcc/final/Makefile10
1 files changed, 8 insertions, 2 deletions
diff --git a/toolchain/gcc/final/Makefile b/toolchain/gcc/final/Makefile
index b0fe20023b..59a5b2497c 100644
--- a/toolchain/gcc/final/Makefile
+++ b/toolchain/gcc/final/Makefile
@@ -28,14 +28,19 @@ ifneq ($(CONFIG_SJLJ_EXCEPTIONS),)
--enable-sjlj-exceptions
endif
-define Host/Configure
- mkdir -p $(GCC_BUILD_DIR) $(TOOLCHAIN_DIR)/$(REAL_GNU_TARGET_NAME)
+define CleanupToolchain
+ $(INSTALL_DIR) $(TOOLCHAIN_DIR)/$(REAL_GNU_TARGET_NAME)
# Important! Required for limits.h to be fixed.
rm -rf $(TOOLCHAIN_DIR)/$(REAL_GNU_TARGET_NAME)/sys-include
ln -sf ../include $(TOOLCHAIN_DIR)/$(REAL_GNU_TARGET_NAME)/sys-include
rm -rf $(TOOLCHAIN_DIR)/$(REAL_GNU_TARGET_NAME)/lib
ln -sf ../lib $(TOOLCHAIN_DIR)/$(REAL_GNU_TARGET_NAME)/lib
$(if $(CONFIG_mips64)$(CONFIG_mips64el)$(CONFIG_x86_64),ln -sf ../lib64 $(TOOLCHAIN_DIR)/$(REAL_GNU_TARGET_NAME)/lib64)
+endef
+
+define Host/Configure
+ $(CleanupToolchain)
+ mkdir -p $(GCC_BUILD_DIR)
(cd $(GCC_BUILD_DIR) && rm -f config.cache; \
$(GCC_CONFIGURE) \
);
@@ -59,6 +64,7 @@ define SetupExtraArch
endef
define Host/Install
+ $(CleanupToolchain)
$(_SINGLE)$(GCC_MAKE) -C $(GCC_BUILD_DIR) install
# Set up the symlinks to enable lying about target name.
set -e; \