mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2024-11-27 19:25:21 +02:00
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. git-svn-id: svn://svn.openwrt.org/openwrt/trunk@32553 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
parent
97f0df7a84
commit
40b6fce4a1
@ -79,7 +79,11 @@ define Host/Compile
|
|||||||
endef
|
endef
|
||||||
|
|
||||||
define Host/Install
|
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
|
$(CP) $(TOOLCHAIN_DIR)/bin/$(REAL_GNU_TARGET_NAME)-readelf $(REAL_STAGING_DIR_HOST)/bin/readelf
|
||||||
endef
|
endef
|
||||||
|
|
||||||
|
@ -19,14 +19,17 @@ endef
|
|||||||
|
|
||||||
define Host/Install
|
define Host/Install
|
||||||
$(GCC_MAKE) -C $(GCC_BUILD_DIR) \
|
$(GCC_MAKE) -C $(GCC_BUILD_DIR) \
|
||||||
|
prefix="$(TOOLCHAIN_DIR)/initial" \
|
||||||
install-gcc \
|
install-gcc \
|
||||||
$(if $(GCC_BUILD_TARGET_LIBGCC),install-target-libgcc)
|
$(if $(GCC_BUILD_TARGET_LIBGCC),install-target-libgcc)
|
||||||
|
|
||||||
# XXX: glibc insists on linking against libgcc_eh
|
# 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 ; \
|
[ -e libgcc_eh.a ] || ln -sf libgcc.a libgcc_eh.a ; \
|
||||||
cp libgcc.a libgcc_initial.a; \
|
cp libgcc.a libgcc_initial.a; \
|
||||||
)
|
)
|
||||||
|
|
||||||
|
$(CP) $(TOOLCHAIN_DIR)/initial/. $(TOOLCHAIN_DIR)/
|
||||||
endef
|
endef
|
||||||
|
|
||||||
$(eval $(call HostBuild))
|
$(eval $(call HostBuild))
|
||||||
|
@ -93,7 +93,7 @@ CPU_CFLAGS = \
|
|||||||
--std=gnu99 -ffunction-sections -fdata-sections \
|
--std=gnu99 -ffunction-sections -fdata-sections \
|
||||||
$(TARGET_CFLAGS)
|
$(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) \
|
$(TARGET_CONFIGURE_OPTS) \
|
||||||
DEVEL_PREFIX=/ \
|
DEVEL_PREFIX=/ \
|
||||||
RUNTIME_PREFIX=/ \
|
RUNTIME_PREFIX=/ \
|
||||||
|
Loading…
Reference in New Issue
Block a user