toolchain/gcc: make sure to pass $(HOST_DIR)/usr/bin in the PATH
authorMischa Jonker <Mischa.Jonker@synopsys.com>
Thu, 9 May 2013 05:53:04 +0000 (05:53 +0000)
committerPeter Korsgaard <jacmet@sunsite.dk>
Sun, 12 May 2013 20:22:00 +0000 (22:22 +0200)
Since gcc doesn't use the package infrastructure, it doesn't get all
the good generic environment variables, and forgets to get
$(HOST_DIR)/usr/bin in its PATH. This prevents gcc from finding and
using host tools built by Buildroot.

This patch therefore ensures that $(HOST_MAKE_ENV) or
$(TARGET_MAKE_ENV) are passed at the appropriate locations. It will be
useful for a later patch that makes gcc depend on host-flex/host-bison
in some situations.

Original patch by Thomas Petazzoni.

Signed-off-by: Mischa Jonker <mjonker@synopsys.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
toolchain/gcc/gcc-uclibc-4.x.mk

index 959568f7a55193aa7dad78849039b934a794ec92..8cacc32817d631882e7902104078c8ac3711ee05 100644 (file)
@@ -299,16 +299,16 @@ $(GCC_BUILD_DIR1)/.configured: $(GCC_DIR)/.patched
 $(GCC_BUILD_DIR1)/.compiled: $(GCC_BUILD_DIR1)/.configured
        $(Q)$(call MESSAGE,"Building gcc pass-1")
 ifeq ($(BR2_GCC_SUPPORTS_FINEGRAINEDMTUNE),y)
-       $(GCC_CONF_ENV) $(MAKE) -C $(GCC_BUILD_DIR1) all-gcc
+       $(GCC_CONF_ENV) $(HOST_MAKE_ENV) $(MAKE) -C $(GCC_BUILD_DIR1) all-gcc
 else
-       $(MAKE) -C $(GCC_BUILD_DIR1) all-gcc
+       $(HOST_MAKE_ENV) $(MAKE) -C $(GCC_BUILD_DIR1) all-gcc
 endif
        touch $@
 
 gcc_initial=$(GCC_BUILD_DIR1)/.installed
 $(gcc_initial) $(HOST_DIR)/usr/bin/$(GNU_TARGET_NAME)-gcc: $(GCC_BUILD_DIR1)/.compiled
        $(Q)$(call MESSAGE,"Installing gcc pass-1")
-       PATH=$(TARGET_PATH) $(MAKE) -C $(GCC_BUILD_DIR1) install-gcc
+       $(HOST_MAKE_ENV) $(MAKE) -C $(GCC_BUILD_DIR1) install-gcc
        touch $(gcc_initial)
 
 gcc_initial: $(GCC_HOST_PREREQ) host-binutils $(HOST_DIR)/usr/bin/$(GNU_TARGET_NAME)-gcc
@@ -370,9 +370,9 @@ $(GCC_BUILD_DIR2)/.compiled: $(GCC_BUILD_DIR2)/.configured
        $(Q)$(call MESSAGE,"Building gcc pass-2")
        # gcc >= 4.3.0 have to also build all-target-libgcc
 ifeq ($(BR2_GCC_SUPPORTS_FINEGRAINEDMTUNE),y)
-       $(GCC_CONF_ENV) $(MAKE) -C $(GCC_BUILD_DIR2) all-gcc all-target-libgcc
+       $(GCC_CONF_ENV) $(HOST_MAKE_ENV) $(MAKE) -C $(GCC_BUILD_DIR2) all-gcc all-target-libgcc
 else
-       $(MAKE) -C $(GCC_BUILD_DIR2) all-gcc
+       $(HOST_MAKE_ENV) $(MAKE) -C $(GCC_BUILD_DIR2) all-gcc
 endif
        touch $@
 
@@ -381,9 +381,9 @@ $(gcc_intermediate): $(GCC_BUILD_DIR2)/.compiled
        $(Q)$(call MESSAGE,"Installing gcc pass-2")
        # gcc >= 4.3.0 have to also install install-target-libgcc
 ifeq ($(BR2_GCC_SUPPORTS_FINEGRAINEDMTUNE),y)
-       PATH=$(TARGET_PATH) $(MAKE) -C $(GCC_BUILD_DIR2) install-gcc install-target-libgcc
+       $(HOST_MAKE_ENV) $(MAKE) -C $(GCC_BUILD_DIR2) install-gcc install-target-libgcc
 else
-       PATH=$(TARGET_PATH) $(MAKE) -C $(GCC_BUILD_DIR2) install-gcc
+       $(HOST_MAKE_ENV) $(MAKE) -C $(GCC_BUILD_DIR2) install-gcc
 endif
        touch $(gcc_intermediate)
 
@@ -449,12 +449,12 @@ $(GCC_BUILD_DIR3)/.configured: $(GCC_SRC_DIR)/.patched $(GCC_STAGING_PREREQ)
 
 $(GCC_BUILD_DIR3)/.compiled: $(GCC_BUILD_DIR3)/.configured
        $(Q)$(call MESSAGE,"Building gcc final")
-       $(GCC_CONF_ENV) $(MAKE) -C $(GCC_BUILD_DIR3) all
+       $(GCC_CONF_ENV) $(HOST_MAKE_ENV) $(MAKE) -C $(GCC_BUILD_DIR3) all
        touch $@
 
 $(GCC_BUILD_DIR3)/.installed: $(GCC_BUILD_DIR3)/.compiled
        $(Q)$(call MESSAGE,"Installing gcc final")
-       PATH=$(TARGET_PATH) $(MAKE) \
+       $(HOST_MAKE_ENV) $(MAKE) \
                -C $(GCC_BUILD_DIR3) install
        if [ -d "$(STAGING_DIR)/lib64" ]; then \
                if [ ! -e "$(STAGING_DIR)/lib" ]; then \
@@ -582,8 +582,8 @@ $(GCC_BUILD_DIR4)/.configured: $(GCC_BUILD_DIR4)/.prepared
 
 $(GCC_BUILD_DIR4)/.compiled: $(GCC_BUILD_DIR4)/.configured
        $(Q)$(call MESSAGE,"Building gcc on target")
-       PATH=$(TARGET_PATH) \
-       $(MAKE) -C $(GCC_BUILD_DIR4) all
+       $(TARGET_MAKE_ENV) \
+       $(TARGET_MAKE_ENV) $(MAKE) -C $(GCC_BUILD_DIR4) all
        touch $@
 
 GCC_LIB_SUBDIR=lib/gcc/$(GNU_TARGET_NAME)/$(GCC_VERSION)
@@ -595,7 +595,7 @@ endif
 
 $(TARGET_DIR)/usr/bin/gcc: $(GCC_BUILD_DIR4)/.compiled
        $(Q)$(call MESSAGE,"Installing gcc on target")
-       PATH=$(TARGET_PATH) DESTDIR=$(TARGET_DIR) \
+       $(TARGET_MAKE_ENV) DESTDIR=$(TARGET_DIR) \
                $(MAKE1) -C $(GCC_BUILD_DIR4) install
        # Remove broken specs file (cross compile flag is set).
        rm -f $(TARGET_DIR)/usr/$(GCC_LIB_SUBDIR)/specs