diff options
author | Felix Fietkau <nbd@openwrt.org> | 2012-06-30 18:12:15 +0000 |
---|---|---|
committer | Felix Fietkau <nbd@openwrt.org> | 2012-06-30 18:12:15 +0000 |
commit | e74e4dbd29f86f25da1285c574b8587e1626a585 (patch) | |
tree | ea946200c53429938a8be7c3083719cf96a10a4e | |
parent | b2e5c5f82e2c0340649d514bfb3bb6382ae39041 (diff) | |
download | mtk-20170518-e74e4dbd29f86f25da1285c574b8587e1626a585.zip mtk-20170518-e74e4dbd29f86f25da1285c574b8587e1626a585.tar.gz mtk-20170518-e74e4dbd29f86f25da1285c574b8587e1626a585.tar.bz2 |
toolchain: keep the initial gcc around for later uclibc rebuilds
testing uclibc changes is tricky because the final gcc tends to miscompile
uclibc code or barf up internal compiler errors.
install binutils into $(TOOLCHAIN_DIR)/initial (without changing the configure
prefix) and copy it from there to $(TOOLCHAIN_DIR)/ so that the initial gcc
can be put into $(PATH) for the uclibc build, even if the final gcc
is already installed.
SVN-Revision: 32553
-rw-r--r-- | toolchain/binutils/Makefile | 6 | ||||
-rw-r--r-- | toolchain/gcc/initial/Makefile | 5 | ||||
-rw-r--r-- | toolchain/uClibc/Makefile | 2 |
3 files changed, 10 insertions, 3 deletions
diff --git a/toolchain/binutils/Makefile b/toolchain/binutils/Makefile index 0022202..9d12721 100644 --- a/toolchain/binutils/Makefile +++ b/toolchain/binutils/Makefile @@ -79,7 +79,11 @@ define Host/Compile endef define Host/Install - $(MAKE) -C $(HOST_BUILD_DIR) install + mkdir -p $(TOOLCHAIN_DIR)/initial + $(MAKE) -C $(HOST_BUILD_DIR) \ + prefix=$(TOOLCHAIN_DIR)/initial \ + install + $(CP) $(TOOLCHAIN_DIR)/initial/. $(TOOLCHAIN_DIR)/ $(CP) $(TOOLCHAIN_DIR)/bin/$(REAL_GNU_TARGET_NAME)-readelf $(REAL_STAGING_DIR_HOST)/bin/readelf endef diff --git a/toolchain/gcc/initial/Makefile b/toolchain/gcc/initial/Makefile index f3f78b0..3d8ab61 100644 --- a/toolchain/gcc/initial/Makefile +++ b/toolchain/gcc/initial/Makefile @@ -19,14 +19,17 @@ endef define Host/Install $(GCC_MAKE) -C $(GCC_BUILD_DIR) \ + prefix="$(TOOLCHAIN_DIR)/initial" \ install-gcc \ $(if $(GCC_BUILD_TARGET_LIBGCC),install-target-libgcc) # XXX: glibc insists on linking against libgcc_eh - ( cd $(TOOLCHAIN_DIR)/lib/gcc/$(REAL_GNU_TARGET_NAME)/$(PKG_VERSION) ; \ + ( cd $(TOOLCHAIN_DIR)/initial/lib/gcc/$(REAL_GNU_TARGET_NAME)/$(PKG_VERSION) ; \ [ -e libgcc_eh.a ] || ln -sf libgcc.a libgcc_eh.a ; \ cp libgcc.a libgcc_initial.a; \ ) + + $(CP) $(TOOLCHAIN_DIR)/initial/. $(TOOLCHAIN_DIR)/ endef $(eval $(call HostBuild)) diff --git a/toolchain/uClibc/Makefile b/toolchain/uClibc/Makefile index 6e7e9dd..315e044 100644 --- a/toolchain/uClibc/Makefile +++ b/toolchain/uClibc/Makefile @@ -93,7 +93,7 @@ CPU_CFLAGS = \ --std=gnu99 -ffunction-sections -fdata-sections \ $(TARGET_CFLAGS) -UCLIBC_MAKE = PATH='$(TARGET_PATH)' $(MAKE) -C $(HOST_BUILD_DIR) \ +UCLIBC_MAKE = PATH='$(TOOLCHAIN_DIR)/initial/bin:$(TARGET_PATH)' $(MAKE) -C $(HOST_BUILD_DIR) \ $(TARGET_CONFIGURE_OPTS) \ DEVEL_PREFIX=/ \ RUNTIME_PREFIX=/ \ |