Pārlūkot izejas kodu

Merge branch 'misc-fixes' of git://git.busybox.net/~tpetazzoni/git/buildroot

Peter Korsgaard 15 gadi atpakaļ
vecāks
revīzija
74708bad15
71 mainītis faili ar 308 papildinājumiem un 283 dzēšanām
  1. 4 4
      Makefile
  2. 4 4
      boot/grub/grub.mk
  3. 2 2
      boot/grub2/grub2.mk
  4. 1 1
      package/Makefile.autotools.in
  5. 42 78
      package/Makefile.in
  6. 1 1
      package/acpid/acpid.mk
  7. 3 3
      package/busybox/busybox.mk
  8. 3 1
      package/cmake/cmake.mk
  9. 2 2
      package/coreutils/coreutils.mk
  10. 1 1
      package/dillo/dillo.mk
  11. 1 1
      package/docker/docker.mk
  12. 1 1
      package/eeprog/eeprog.mk
  13. 1 1
      package/ezxml/ezxml.mk
  14. 57 36
      package/fontconfig/fontconfig-2.6.0-use_for_build.patch
  15. 1 1
      package/gadgetfs-test/gadgetfs-test.mk
  16. 1 1
      package/games/rubix/rubix.mk
  17. 2 2
      package/gettext/gettext.mk
  18. 1 1
      package/gtk2-engines/gtk2-engines.mk
  19. 1 1
      package/iostat/iostat.mk
  20. 1 1
      package/iproute2/iproute2.mk
  21. 2 2
      package/libfloat/libfloat.mk
  22. 1 1
      package/libglib12/libglib12.mk
  23. 1 1
      package/libgtk12/libgtk12.mk
  24. 2 2
      package/lmbench/lmbench.mk
  25. 1 2
      package/lockfile-progs/lockfile-progs.mk
  26. 1 1
      package/mdadm/mdadm.mk
  27. 1 1
      package/memstat/memstat.mk
  28. 1 1
      package/microperl/microperl.mk
  29. 2 2
      package/microwin/microwin.mk
  30. 2 2
      package/mii-diag/mii-diag.mk
  31. 1 1
      package/mrouted/mrouted.mk
  32. 1 2
      package/mtd/mtd.mk
  33. 1 1
      package/multimedia/alsa-utils/alsa-utils.mk
  34. 1 1
      package/multimedia/festival/festival/festival.mk
  35. 1 1
      package/multimedia/festival/speech-tools/speech-tools.mk
  36. 0 1
      package/multimedia/ffmpeg/ffmpeg.mk
  37. 1 1
      package/multimedia/mplayer/mplayer.mk
  38. 4 4
      package/netkitbase/netkitbase.mk
  39. 5 5
      package/netkittelnet/netkittelnet.mk
  40. 1 1
      package/netplug/netplug.mk
  41. 1 1
      package/netsnmp/netsnmp.mk
  42. 1 1
      package/newt/newt.mk
  43. 1 1
      package/nfs-utils/nfs-utils.mk
  44. 1 1
      package/openssh/openssh.mk
  45. 2 2
      package/openssl/openssl.mk
  46. 1 1
      package/pcmcia/pcmcia.mk
  47. 1 1
      package/portmap/portmap.mk
  48. 1 1
      package/pppd/pppd.mk
  49. 2 2
      package/python/python.mk
  50. 7 64
      package/ruby/ruby.mk
  51. 2 2
      package/sed/sed.mk
  52. 1 1
      package/slang/slang.mk
  53. 1 1
      package/stunnel/stunnel.mk
  54. 1 1
      package/sysvinit/sysvinit.mk
  55. 1 1
      package/tcpdump/dhcpdump.mk
  56. 1 1
      package/udev/udev.mk
  57. 1 1
      package/util-linux/util-linux.mk
  58. 1 1
      package/vsftpd/vsftpd.mk
  59. 2 1
      package/webkit/webkit.mk
  60. 2 2
      package/wipe/wipe.mk
  61. 3 3
      package/wireless-tools/wireless-tools.mk
  62. 1 0
      package/x11r7/xcb-util/xcb-util.mk
  63. 96 0
      package/x11r7/xlib_libXt/xlib_libXt-1.0.7-fix-cross-compile.patch
  64. 1 2
      package/x11r7/xlib_libXt/xlib_libXt.mk
  65. 1 0
      package/xvkbd/Config.in
  66. 2 2
      package/xvkbd/xvkbd.mk
  67. 0 2
      toolchain/Makefile.in
  68. 9 7
      toolchain/external-toolchain/ext-tool.mk
  69. 2 2
      toolchain/gdb/gdb.mk
  70. 1 1
      toolchain/uClibc/uClibc-0.9.30.config
  71. 1 1
      toolchain/uClibc/uClibc-0.9.31.config

+ 4 - 4
Makefile

@@ -441,12 +441,12 @@ show-targets:
 	@echo $(TARGETS)
 
 ifeq ($(BR2_CONFIG_CACHE),y)
-# drop configure cache if configuration is changed
-$(BUILD_DIR)/tgt-config.cache: $(CONFIG_DIR)/.config
+# drop configure caches if configuration is changed
+$(BUILD_DIR)/tgt-config.cache $(BUILD_DIR)/host-config.cache: $(CONFIG_DIR)/.config
 	rm -f $@
 	touch $@
 
-$(BASE_TARGETS): | $(BUILD_DIR)/tgt-config.cache
+$(BASE_TARGETS): | $(BUILD_DIR)/tgt-config.cache $(BUILD_DIR)/host-config.cache
 endif
 
 else # ifeq ($(BR2_HAVE_DOT_CONFIG),y)
@@ -580,7 +580,7 @@ endif
 	rm -rf $(CONFIG_DIR)/.config $(CONFIG_DIR)/.config.old $(CONFIG_DIR)/.config.cmd $(CONFIG_DIR)/.auto.deps
 
 flush:
-	rm -f $(BUILD_DIR)/tgt-config.cache
+	rm -f $(BUILD_DIR)/tgt-config.cache $(BUILD_DIR)/host-config.cache
 
 %_defconfig: $(TOPDIR)/configs/%_defconfig
 	cp $^ $(CONFIG_DIR)/.config

+ 4 - 4
boot/grub/grub.mk

@@ -79,12 +79,12 @@ $(GRUB_DIR)/.configured: $(GRUB_DIR)/.unpacked
 	touch $@
 
 $(GRUB_DIR)/$(GRUB_BINARY): $(GRUB_DIR)/.configured
-	$(MAKE) CC=$(TARGET_CC) -C $(GRUB_DIR)
+	$(MAKE) CC="$(TARGET_CC)" -C $(GRUB_DIR)
 	rm -f $(GRUB_DIR)/$(GRUB_BINARY)
-	$(MAKE) CC=$(TARGET_CC) CFLAGS+=-static -C $(GRUB_DIR)/grub grub
+	$(MAKE) CC="$(TARGET_CC)" CFLAGS+=-static -C $(GRUB_DIR)/grub grub
 	mkdir -p $(dir $(STAGING_DIR)/$(GRUB_TARGET_BINARY))
 	mv $(GRUB_DIR)/$(GRUB_BINARY) $(STAGING_DIR)/$(GRUB_TARGET_BINARY).static
-	$(MAKE) CC=$(TARGET_CC) -C $(GRUB_DIR)/grub
+	$(MAKE) CC="$(TARGET_CC)" -C $(GRUB_DIR)/grub
 
 $(GRUB_DIR)/.installed: $(GRUB_DIR)/$(GRUB_BINARY)
 	cp $(GRUB_DIR)/$(GRUB_BINARY) $(TARGET_DIR)/$(GRUB_TARGET_BINARY)
@@ -99,7 +99,7 @@ endif
 grub: $(GRUB_DIR)/.installed
 
 grub-clean:
-	$(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(GRUB_DIR) uninstall
+	$(MAKE) DESTDIR=$(TARGET_DIR) CC="$(TARGET_CC)" -C $(GRUB_DIR) uninstall
 	-$(MAKE) -C $(GRUB_DIR) clean
 	rm -f $(TARGET_DIR)/boot/grub/$(GRUB_SPLASHIMAGE) \
 		$(TARGET_DIR)/sbin/$(GRUB_BINARY) \

+ 2 - 2
boot/grub2/grub2.mk

@@ -67,7 +67,7 @@ $(GRUB2_DIR)/.configured: $(GRUB2_DIR)/.unpacked
 	touch $@
 
 $(GRUB2_DIR)/.compiled: $(GRUB2_DIR)/.configured
-	$(MAKE) CC=$(TARGET_CC) -C $(@D)
+	$(MAKE) CC="$(TARGET_CC)" -C $(@D)
 	touch $@
 
 $(GRUB2_DIR)/.installed: $(GRUB2_DIR)/.compiled
@@ -77,7 +77,7 @@ $(GRUB2_DIR)/.installed: $(GRUB2_DIR)/.compiled
 grub2: host-automake host-autoconf $(GRUB2_DIR)/.installed
 
 grub2-clean:
-	$(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(GRUB2_DIR) uninstall
+	$(MAKE) DESTDIR=$(TARGET_DIR) CC="$(TARGET_CC)" -C $(GRUB2_DIR) uninstall
 	-$(MAKE) -C $(GRUB2_DIR) clean
 
 grub2-dirclean:

+ 1 - 1
package/Makefile.autotools.in

@@ -90,7 +90,6 @@ define $(2)_CONFIGURE_CMDS
 	(cd $$($$(PKG)_SRCDIR) && rm -rf config.cache && \
 	$$(TARGET_CONFIGURE_OPTS) \
 	$$(TARGET_CONFIGURE_ARGS) \
-	$$(TARGET_CONFIGURE_ENV) \
 	$$($$(PKG)_CONF_ENV) \
 	./configure \
 		$$(if $$(filter YES,$$($$(PKG)_USE_CONFIG_CACHE)),--cache-file="$(BUILD_DIR)/tgt-config.cache",) \
@@ -117,6 +116,7 @@ define $(2)_CONFIGURE_CMDS
 		LDFLAGS="$$(HOST_LDFLAGS)" \
                 $$($$(PKG)_CONF_ENV) \
 		./configure \
+		$$(if $$(filter YES,$$($$(PKG)_USE_CONFIG_CACHE)),--cache-file="$(BUILD_DIR)/host-config.cache",) \
 		--prefix="$$(HOST_DIR)/usr" \
 		--sysconfdir="$$(HOST_DIR)/etc" \
 		$$($$(PKG)_CONF_OPT) \

+ 42 - 78
package/Makefile.in

@@ -77,23 +77,13 @@ ifeq ($(BR2_LARGEFILE),y)
 TARGET_CFLAGS+=-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64
 endif
 
-
-#########################################################################
 ifeq ($(BR2_TOOLCHAIN_BUILDROOT),y)
 TARGET_CFLAGS+=-I$(STAGING_DIR)/usr/include -I$(STAGING_DIR)/include
-TARGET_LDFLAGS+=-L$(STAGING_DIR)/lib -L$(STAGING_DIR)/usr/lib
-TARGET_CXXFLAGS=$(TARGET_CFLAGS)
-TARGET_CFLAGS+= $(BR2_SYSROOT) $(BR2_ISYSROOT)
-TARGET_LDFLAGS+= $(BR2_SYSROOT)
+endif
 
-#########################################################################
-else ifeq ($(BR2_TOOLCHAIN_EXTERNAL),y)
-TARGET_CFLAGS+=--sysroot=$(STAGING_DIR)/
-TARGET_CXXFLAGS=$(TARGET_CFLAGS)
-TARGET_LDFLAGS=--sysroot=$(STAGING_DIR)/
 TARGET_LDFLAGS+=-L$(STAGING_DIR)/lib -L$(STAGING_DIR)/usr/lib
-endif
-#########################################################################
+TARGET_CXXFLAGS=$(TARGET_CFLAGS)
+TARGET_SYSROOT_OPT=--sysroot=$(STAGING_DIR)
 
 # Compute GNU_TARGET_NAME and REAL_GNU_TARGET_NAME
 GNU_TARGET_NAME=$(ARCH)-linux
@@ -113,32 +103,36 @@ endif
 REAL_GNU_TARGET_NAME=$(ARCH)-unknown-linux-$(LIBC)$(ABI)
 
 ifeq ($(BR2_TOOLCHAIN_BUILDROOT),y)
-
-# Quotes are needed for spaces et al in path components.
-TARGET_PATH="$(TOOLCHAIN_DIR)/bin:$(HOST_DIR)/bin:$(HOST_DIR)/usr/bin:$(HOST_DIR)/usr/sbin/:$(STAGING_DIR)/bin:$(STAGING_DIR)/usr/bin:$(PATH)"
 TARGET_CROSS=$(STAGING_DIR)/usr/bin/$(REAL_GNU_TARGET_NAME)-
 else ifeq ($(BR2_TOOLCHAIN_EXTERNAL),y)
 TOOLCHAIN_EXTERNAL_PREFIX:=$(call qstrip,$(BR2_TOOLCHAIN_EXTERNAL_PREFIX))
 TOOLCHAIN_EXTERNAL_PATH:=$(call qstrip,$(BR2_TOOLCHAIN_EXTERNAL_PATH))
-TARGET_PATH="$(HOST_DIR)/bin:$(HOST_DIR)/usr/bin:$(HOST_DIR)/usr/sbin/:$(TOOLCHAIN_DIR)/bin:$(TOOLCHAIN_EXTERNAL_PATH)/bin:$(PATH)"
 TARGET_CROSS=$(TOOLCHAIN_EXTERNAL_PATH)/bin/$(TOOLCHAIN_EXTERNAL_PREFIX)-
 endif
-TARGET_AR=$(TARGET_CROSS)ar
-TARGET_AS=$(TARGET_CROSS)as
-TARGET_CC=$(TARGET_CROSS)gcc
-TARGET_CPP=$(TARGET_CROSS)cpp
-TARGET_CXX=$(TARGET_CROSS)g++
-TARGET_FC=$(TARGET_CROSS)gfortran
-TARGET_LD=$(TARGET_CROSS)ld
-TARGET_NM=$(TARGET_CROSS)nm
-TARGET_RANLIB=$(TARGET_CROSS)ranlib
-TARGET_OBJCOPY=$(TARGET_CROSS)objcopy
-TARGET_OBJDUMP=$(TARGET_CROSS)objdump
+
+# Quotes are needed for spaces et al in path components.
+TARGET_PATH="$(HOST_DIR)/bin:$(HOST_DIR)/usr/bin:$(HOST_DIR)/usr/sbin/:$(PATH)"
+
+# Define TARGET_xx variables for all common binutils/gcc tools by
+# including the --sysroot option where necessary.
+TARGET_AR       = $(TARGET_CROSS)ar
+TARGET_AS       = $(TARGET_CROSS)as
+TARGET_CC       = $(TARGET_CROSS)gcc $(TARGET_SYSROOT_OPT)
+TARGET_CPP      = $(TARGET_CROSS)cpp $(TARGET_SYSROOT_OPT)
+TARGET_CXX      = $(TARGET_CROSS)g++ $(TARGET_SYSROOT_OPT)
+TARGET_FC       = $(TARGET_CROSS)gfortran $(TARGET_SYSROOT_OPT)
+TARGET_LD       = $(TARGET_CROSS)ld $(TARGET_SYSROOT_OPT)
+TARGET_NM       = $(TARGET_CROSS)nm
+TARGET_RANLIB   = $(TARGET_CROSS)ranlib
+TARGET_OBJCOPY  = $(TARGET_CROSS)objcopy
+TARGET_OBJDUMP  = $(TARGET_CROSS)objdump
+
 ifeq ($(BR2_TOOLCHAIN_BUILDROOT),y)
-TARGET_LDCONFIG=$(TARGET_CROSS)ldconfig
+TARGET_LDCONFIG = $(TARGET_CROSS)ldconfig
 else ifeq ($(BR2_TOOLCHAIN_EXTERNAL),y)
-TARGET_LDCONFIG=/sbin/ldconfig
+TARGET_LDCONFIG = /sbin/ldconfig
 endif
+
 ifeq ($(BR2_STRIP_strip),y)
 STRIP_DISCARD_ALL:=--discard-all
 STRIP_STRIP_UNNEEDED:=--strip-unneeded
@@ -167,7 +161,7 @@ BISON:=$(shell which bison || type -p bison)
 
 HOST_CFLAGS   += -I$(HOST_DIR)/include -I$(HOST_DIR)/usr/include
 HOST_CXXFLAGS += -I$(HOST_DIR)/include -I$(HOST_DIR)/usr/include
-HOST_LDFLAGS  += -L$(HOST_DIR)/lib -L$(HOST_DIR)/usr/lib
+HOST_LDFLAGS  += -L$(HOST_DIR)/lib -L$(HOST_DIR)/usr/lib -Wl,-rpath,$(HOST_DIR)/usr/lib
 HOST_PATH=$(HOST_DIR)/bin:$(HOST_DIR)/usr/bin:$(PATH)
 
 # hostcc version as an integer - E.G. 4.3.2 => 432
@@ -179,11 +173,11 @@ TARGET_CONFIGURE_OPTS=PATH=$(TARGET_PATH) \
 		AS="$(TARGET_AS)" \
 		LD="$(TARGET_LD)" \
 		NM="$(TARGET_NM)" \
-		CC="$(TARGET_CC) $(TARGET_CFLAGS)" \
-		GCC="$(TARGET_CC) $(TARGET_CFLAGS)" \
-		CPP="$(TARGET_CPP) $(TARGET_CFLAGS)" \
-		CXX="$(TARGET_CXX) $(TARGET_CXXFLAGS)" \
-		FC="$(TARGET_FC) $(TARGET_FCFLAGS)" \
+		CC="$(TARGET_CC)" \
+		GCC="$(TARGET_CC)" \
+		CPP="$(TARGET_CPP)" \
+		CXX="$(TARGET_CXX)" \
+		FC="$(TARGET_FC)" \
 		RANLIB="$(TARGET_RANLIB)" \
 		STRIP="$(TARGET_STRIP)" \
 		OBJCOPY="$(TARGET_OBJCOPY)" \
@@ -198,63 +192,33 @@ TARGET_CONFIGURE_OPTS=PATH=$(TARGET_PATH) \
 		CXXFLAGS_FOR_BUILD="$(HOST_CXXFLAGS)" \
 		LDFLAGS_FOR_BUILD="$(HOST_LDFLAGS)" \
 		FCFLAGS_FOR_BUILD="$(HOST_FCFLAGS)" \
-		AR_FOR_TARGET="$(TARGET_AR)" \
-		AS_FOR_TARGET="$(TARGET_AS)" \
-		CC_FOR_TARGET="$(TARGET_CC)" \
-		LD_FOR_TARGET="$(TARGET_LD)" \
-		NM_FOR_TARGET="$(TARGET_NM)" \
 		DEFAULT_ASSEMBLER="$(TARGET_AS)" \
 		DEFAULT_LINKER="$(TARGET_LD)" \
+		CFLAGS="$(TARGET_CFLAGS)" \
+		CXXFLAGS="$(TARGET_CXXFLAGS)" \
+		LDFLAGS="$(TARGET_LDFLAGS)" \
+		FCFLAGS="$(TARGET_FCFLAGS)" \
 		PKG_CONFIG_SYSROOT_DIR="$(STAGING_DIR)" \
 		PKG_CONFIG="$(PKG_CONFIG_HOST_BINARY)" \
 		PKG_CONFIG_PATH="$(STAGING_DIR)/usr/lib/pkgconfig:$(PKG_CONFIG_PATH)" \
 		PERLLIB="$(HOST_DIR)/usr/lib/perl" \
 		STAGING_DIR="$(STAGING_DIR)"
 
-TARGET_CONFIGURE_ENV=\
-	CFLAGS="$(TARGET_CFLAGS)" \
-	CXXFLAGS="$(TARGET_CXXFLAGS)" \
-	LDFLAGS="$(TARGET_LDFLAGS)" \
-	FCFLAGS="$(TARGET_FCFLAGS)" \
-
 TARGET_MAKE_ENV=PATH=$(TARGET_PATH) \
 		PERLLIB="$(HOST_DIR)/usr/lib/perl"
 
 HOST_CONFIGURE_OPTS=PATH=$(HOST_PATH) \
 		AR="$(HOSTAR)" \
 		AS="$(HOSTAS)" \
-		LD="$(HOSTLD) $(HOST_LDFLAGS)" \
+		LD="$(HOSTLD)" \
 		NM="$(HOSTNM)" \
-		CC="$(HOSTCC) $(HOST_CFLAGS)" \
-		GCC="$(HOSTCC) $(HOST_CFLAGS)" \
-		CXX="$(HOSTCXX) $(HOST_CXXFLAGS)" \
-		CPP="$(HOSTCPP) $(HOST_CFLAGS)" \
-		AR_FOR_BUILD="$(HOSTAR)" \
-		AS_FOR_BUILD="$(HOSTAS)" \
-		CC_FOR_BUILD="$(HOSTCC)" \
-		GCC_FOR_BUILD="$(HOSTCC)" \
-		CXX_FOR_BUILD="$(HOSTCXX)" \
-		LD_FOR_BUILD="$(HOSTLD)" \
-		FC_FOR_BUILD="$(HOSTFC)" \
-		CFLAGS_FOR_BUILD="$(HOST_CFLAGS)" \
-		CXXFLAGS_FOR_BUILD="$(HOST_CXXFLAGS)" \
-		LDFLAGS_FOR_BUILD="$(HOST_LDFLAGS)" \
-		FCFLAGS_FOR_BUILD="$(HOST_FCFLAGS)" \
-		AR_FOR_TARGET="$(TARGET_AR)" \
-		AS_FOR_TARGET="$(TARGET_AS)" \
-		CC_FOR_TARGET="$(TARGET_CC)" \
-		LD_FOR_TARGET="$(TARGET_LD)" \
-		NM_FOR_TARGET="$(TARGET_NM)" \
-		RANLIB_FOR_TARGET="$(TARGET_RANLIB)" \
-		STRIP_FOR_TARGET="$(TARGET_STRIP)" \
-		OBJCOPY_FOR_TARGET="$(TARGET_OBJCOPY)" \
-		OBJDUMP_FOR_TARGET="$(TARGET_OBJDUMP)" \
-		DEFAULT_ASSEMBLER="$(TARGET_AS)" \
-		DEFAULT_LINKER="$(TARGET_LD)" \
-		ORIGINAL_AS_FOR_TARGET="$(TARGET_AS)" \
-		ORIGINAL_LD_FOR_TARGET="$(TARGET_LD)" \
-		ORIGINAL_NM_FOR_TARGET="$(TARGET_NM)" \
-		ORIGINAL_OBJDUMP_FOR_TARGET="$(TARGET_OBJDUMP)" \
+		CC="$(HOSTCC)" \
+		GCC="$(HOSTCC)" \
+		CXX="$(HOSTCXX)" \
+		CPP="$(HOSTCPP)" \
+		CFLAGS="$(HOST_CFLAGS)" \
+		CXXFLAGS="$(HOST_CXXFLAGS)" \
+		LDFLAGS="$(HOST_LDFLAGS)" \
 		PKG_CONFIG_ALLOW_SYSTEM_CFLAGS=1 \
 		PKG_CONFIG_ALLOW_SYSTEM_LIBS=1 \
 		PKG_CONFIG="$(PKG_CONFIG_HOST_BINARY)" \

+ 1 - 1
package/acpid/acpid.mk

@@ -17,7 +17,7 @@ $(ACPID_DIR)/.unpacked: $(DL_DIR)/$(ACPID_SOURCE)
 	touch $(ACPID_DIR)/.unpacked
 
 $(ACPID_DIR)/acpid: $(ACPID_DIR)/.unpacked
-	$(MAKE) CC=$(TARGET_CC) -C $(ACPID_DIR)
+	$(MAKE) CC="$(TARGET_CC)" -C $(ACPID_DIR)
 	$(STRIPCMD) $(STRIP_STRIP_ALL) $(ACPID_DIR)/acpid
 	$(STRIPCMD) $(STRIP_STRIP_ALL) $(ACPID_DIR)/acpi_listen
 	touch -c $(ACPID_DIR)/acpid $(ACPID_DIR)/acpi_listen

+ 3 - 3
package/busybox/busybox.mk

@@ -99,20 +99,20 @@ ifeq ($(BR2_PACKAGE_NETKITTELNET),y)
 	$(SED) "s/^.*CONFIG_TELNETD.*/CONFIG_TELNETD=n/;" $(BUSYBOX_DIR)/.config
 	@echo "WARNING!! CONFIG_TELNETD option disabled!"
 endif
-	yes "" | $(MAKE) CC=$(TARGET_CC) CROSS_COMPILE="$(TARGET_CROSS)" \
+	yes "" | $(MAKE) CC="$(TARGET_CC)" CROSS_COMPILE="$(TARGET_CROSS)" \
 		CROSS="$(TARGET_CROSS)" -C $(BUSYBOX_DIR) oldconfig
 	touch $@
 
 
 $(BUSYBOX_DIR)/busybox: $(BUSYBOX_DIR)/.config
-	$(MAKE) CC=$(TARGET_CC) CROSS_COMPILE="$(TARGET_CROSS)" \
+	$(MAKE) CC="$(TARGET_CC)" CROSS_COMPILE="$(TARGET_CROSS)" \
 		CROSS="$(TARGET_CROSS)" PREFIX="$(TARGET_DIR)" \
 		EXTRA_LDFLAGS="$(TARGET_LDFLAGS)" \
 		ARCH=$(KERNEL_ARCH) -C $(BUSYBOX_DIR)
 
 $(TARGET_DIR)/bin/busybox: $(BUSYBOX_DIR)/busybox
 ifeq ($(BR2_PACKAGE_BUSYBOX_FULLINSTALL),y)
-	$(MAKE) CC=$(TARGET_CC) CROSS_COMPILE="$(TARGET_CROSS)" \
+	$(MAKE) CC="$(TARGET_CC)" CROSS_COMPILE="$(TARGET_CROSS)" \
 		CROSS="$(TARGET_CROSS)" PREFIX="$(TARGET_DIR)" \
 		EXTRA_LDFLAGS="$(TARGET_LDFLAGS)" \
 		ARCH=$(KERNEL_ARCH) -C $(BUSYBOX_DIR) install

+ 3 - 1
package/cmake/cmake.mk

@@ -4,7 +4,9 @@ CMAKE_SITE=http://www.cmake.org/files/v2.8/
 
 define HOST_CMAKE_CONFIGURE_CMDS
  (cd $(@D); \
-   ./bootstrap --prefix=$(HOST_DIR)/usr --parallel=$(BR2_JLEVEL) \
+	LDFLAGS="$(HOST_LDFLAGS)" \
+	CFLAGS="$(HOST_CFLAGS)" \
+	./bootstrap --prefix=$(HOST_DIR)/usr --parallel=$(BR2_JLEVEL) \
  )
 endef
 

+ 2 - 2
package/coreutils/coreutils.mk

@@ -109,7 +109,7 @@ $(COREUTILS_DIR)/$(COREUTILS_BINARY): $(COREUTILS_DIR)/.configured
 	rm -f $(TARGET_DIR)/$(COREUTILS_TARGET_BINARY)
 
 $(TARGET_DIR)/$(COREUTILS_TARGET_BINARY): $(COREUTILS_DIR)/$(COREUTILS_BINARY)
-	$(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(COREUTILS_DIR) install
+	$(MAKE) DESTDIR=$(TARGET_DIR) CC="$(TARGET_CC)" -C $(COREUTILS_DIR) install
 	# some things go in root rather than usr
 	for f in $(BIN_PROGS); do \
 		mv $(TARGET_DIR)/usr/bin/$$f $(TARGET_DIR)/bin/$$f; \
@@ -132,7 +132,7 @@ endif
 # If both coreutils and busybox are selected, the corresponding applets
 # may need to be reinstated by the clean targets.
 coreutils-clean:
-	$(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(COREUTILS_DIR) uninstall
+	$(MAKE) DESTDIR=$(TARGET_DIR) CC="$(TARGET_CC)" -C $(COREUTILS_DIR) uninstall
 	-$(MAKE) -C $(COREUTILS_DIR) clean
 
 coreutils-dirclean:

+ 1 - 1
package/dillo/dillo.mk

@@ -33,7 +33,7 @@ $(DILLO_DIR)/.configured: $(DILLO_DIR)/.unpacked
 	touch $(DILLO_DIR)/.configured
 
 $(DILLO_DIR)/src/dillo: $(DILLO_DIR)/.configured
-	$(MAKE) CC=$(TARGET_CC) -C $(DILLO_DIR)
+	$(MAKE) CC="$(TARGET_CC)" -C $(DILLO_DIR)
 
 $(DILLO_DIR)/.installed: $(DILLO_DIR)/src/dillo
 	$(MAKE) -C $(DILLO_DIR) DESTDIR=$(TARGET_DIR) install

+ 1 - 1
package/docker/docker.mk

@@ -10,7 +10,7 @@ DOCKER_AUTORECONF = NO
 DOCKER_INSTALL_STAGING = NO
 DOCKER_INSTALL_TARGET = YES
 
-DOCKER_MAKE_OPT = CC=$(TARGET_CC) CXX=$(TARGET_CXX) LD=$(TARGET_LD) \
+DOCKER_MAKE_OPT = CC="$(TARGET_CC)" CXX="$(TARGET_CXX)" LD="$(TARGET_LD)" \
 					CFLAGS="-I$(STAGING_DIR)/usr/include \
 						-I$(STAGING_DIR)/usr/include/glib-2.0 \
 						-I$(STAGING_DIR)/usr/lib/glib-2.0/include" \

+ 1 - 1
package/eeprog/eeprog.mk

@@ -8,7 +8,7 @@ EEPROG_VERSION = 0.7.6
 EEPROG_SITE = http://codesink.org/download
 
 define EEPROG_BUILD_CMDS
-	$(MAKE) CC=$(TARGET_CC) CFLAGS="$(TARGET_CFLAGS)" -C $(@D)
+	$(MAKE) CC="$(TARGET_CC)" CFLAGS="$(TARGET_CFLAGS)" -C $(@D)
 endef
 
 define EEPROG_INSTALL_TARGET_CMDS

+ 1 - 1
package/ezxml/ezxml.mk

@@ -21,7 +21,7 @@ $(EZXML_DIR)/.configured: $(EZXML_DIR)/.unpacked
 	touch $@
 
 $(EZXML_DIR)/libezxml.a: $(EZXML_DIR)/.configured
-	$(MAKE) CC=$(TARGET_CC) CFLAGS="$(TARGET_CFLAGS)" AR=$(TARGET_AR) \
+	$(MAKE) CC="$(TARGET_CC)" CFLAGS="$(TARGET_CFLAGS)" AR=$(TARGET_AR) \
 	-f GNUmakefile -C $(EZXML_DIR)
 
 $(STAGING_DIR)/usr/lib/libezxml.a: $(EZXML_DIR)/libezxml.a

+ 57 - 36
package/fontconfig/fontconfig-2.6.0-use_for_build.patch

@@ -1,59 +1,80 @@
----
- fc-arch/Makefile.am      |    2 +-
- fc-case/Makefile.am      |    2 +-
- fc-glyphname/Makefile.am |    2 +-
- fc-lang/Makefile.am      |    2 +-
- 4 files changed, 4 insertions(+), 4 deletions(-)
-
-Index: fontconfig-2.6.0/fc-arch/Makefile.am
-===================================================================
---- fontconfig-2.6.0.orig/fc-arch/Makefile.am
-+++ fontconfig-2.6.0/fc-arch/Makefile.am
-@@ -24,7 +24,7 @@
- 
- CC = @CC_FOR_BUILD@
+diff -Naur fontconfig-2.6.0.orig/doc/Makefile.am fontconfig-2.6.0/doc/Makefile.am
+--- fontconfig-2.6.0.orig/doc/Makefile.am	2007-11-06 01:05:37.000000000 +0100
++++ fontconfig-2.6.0/doc/Makefile.am	2010-05-22 00:03:00.000000000 +0200
+@@ -21,9 +21,10 @@
+ # TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ # PERFORMANCE OF THIS SOFTWARE.
+ 
+-CC = @CC_FOR_BUILD@
+ EXEEXT = @EXEEXT_FOR_BUILD@
+-LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
++COMPILE = $(CC_FOR_BUILD) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
++		      $(CPPFLAGS_FOR_BUILD) $(AM_CFLAGS) $(CFLAGS_FOR_BUILD)
++LINK = $(CC_FOR_BUILD) $(AM_CFLAGS) $(CFLAGS_FOR_BUILD) $(AM_LDFLAGS) $(LDFLAGS_FOR_BUILD) -o $@
+ 
+ DOC_SRC = $(srcdir)
+ DOC_MODULE = fontconfig
+diff -Naur fontconfig-2.6.0.orig/fc-arch/Makefile.am fontconfig-2.6.0/fc-arch/Makefile.am
+--- fontconfig-2.6.0.orig/fc-arch/Makefile.am	2008-01-02 17:44:39.000000000 +0100
++++ fontconfig-2.6.0/fc-arch/Makefile.am	2010-05-21 23:59:18.000000000 +0200
+@@ -22,9 +22,10 @@
+ # PERFORMANCE OF THIS SOFTWARE.
+ #
+ 
+-CC = @CC_FOR_BUILD@
  EXEEXT = @EXEEXT_FOR_BUILD@
 -LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
-+LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS_FOR_BUILD) $(AM_LDFLAGS) $(LDFLAGS_FOR_BUILD) -o $@
++COMPILE = $(CC_FOR_BUILD) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
++	$(CPPFLAGS_FOR_BUILD) $(AM_CFLAGS) $(CFLAGS_FOR_BUILD)
++LINK = $(CC_FOR_BUILD) $(AM_CFLAGS) $(CFLAGS_FOR_BUILD) $(AM_LDFLAGS) $(LDFLAGS_FOR_BUILD) -o $@
  
  INCLUDES=-I${top_srcdir}/src -I${top_srcdir} $(WARN_CFLAGS)
  
-Index: fontconfig-2.6.0/fc-case/Makefile.am
-===================================================================
---- fontconfig-2.6.0.orig/fc-case/Makefile.am
-+++ fontconfig-2.6.0/fc-case/Makefile.am
-@@ -24,7 +24,7 @@
+diff -Naur fontconfig-2.6.0.orig/fc-case/Makefile.am fontconfig-2.6.0/fc-case/Makefile.am
+--- fontconfig-2.6.0.orig/fc-case/Makefile.am	2010-05-21 23:55:02.000000000 +0200
++++ fontconfig-2.6.0/fc-case/Makefile.am	2010-05-22 00:04:09.000000000 +0200
+@@ -22,9 +22,10 @@
+ # PERFORMANCE OF THIS SOFTWARE.
+ #
  
- CC = @CC_FOR_BUILD@
+-CC = @CC_FOR_BUILD@
  EXEEXT = @EXEEXT_FOR_BUILD@
 -LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
-+LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS_FOR_BUILD) $(AM_LDFLAGS) $(LDFLAGS_FOR_BUILD) -o $@
++COMPILE = $(CC_FOR_BUILD) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
++		      $(CPPFLAGS_FOR_BUILD) $(AM_CFLAGS) $(CFLAGS_FOR_BUILD)
++LINK = $(CC_FOR_BUILD) $(AM_CFLAGS) $(CFLAGS_FOR_BUILD) $(AM_LDFLAGS) $(LDFLAGS_FOR_BUILD) -o $@
  
  INCLUDES=-I${top_srcdir}/src -I${top_srcdir} $(WARN_CFLAGS)
  
-Index: fontconfig-2.6.0/fc-glyphname/Makefile.am
-===================================================================
---- fontconfig-2.6.0.orig/fc-glyphname/Makefile.am
-+++ fontconfig-2.6.0/fc-glyphname/Makefile.am
-@@ -24,7 +24,7 @@
+diff -Naur fontconfig-2.6.0.orig/fc-glyphname/Makefile.am fontconfig-2.6.0/fc-glyphname/Makefile.am
+--- fontconfig-2.6.0.orig/fc-glyphname/Makefile.am	2008-01-02 17:44:39.000000000 +0100
++++ fontconfig-2.6.0/fc-glyphname/Makefile.am	2010-05-22 00:04:54.000000000 +0200
+@@ -22,9 +22,10 @@
+ # PERFORMANCE OF THIS SOFTWARE.
+ #
  
- CC = @CC_FOR_BUILD@
+-CC = @CC_FOR_BUILD@
  EXEEXT = @EXEEXT_FOR_BUILD@
 -LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
-+LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS_FOR_BUILD) $(AM_LDFLAGS) $(LDFLAGS_FOR_BUILD) -o $@
++COMPILE = $(CC_FOR_BUILD) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
++		      $(CPPFLAGS_FOR_BUILD) $(AM_CFLAGS) $(CFLAGS_FOR_BUILD)
++LINK = $(CC_FOR_BUILD) $(AM_CFLAGS) $(CFLAGS_FOR_BUILD) $(AM_LDFLAGS) $(LDFLAGS_FOR_BUILD) -o $@
  
  INCLUDES=-I${top_srcdir}/src -I${top_srcdir} $(WARN_CFLAGS)
  
-Index: fontconfig-2.6.0/fc-lang/Makefile.am
-===================================================================
---- fontconfig-2.6.0.orig/fc-lang/Makefile.am
-+++ fontconfig-2.6.0/fc-lang/Makefile.am
-@@ -24,7 +24,7 @@
+diff -Naur fontconfig-2.6.0.orig/fc-lang/Makefile.am fontconfig-2.6.0/fc-lang/Makefile.am
+--- fontconfig-2.6.0.orig/fc-lang/Makefile.am	2008-01-02 17:44:39.000000000 +0100
++++ fontconfig-2.6.0/fc-lang/Makefile.am	2010-05-22 00:05:44.000000000 +0200
+@@ -22,9 +22,10 @@
+ # PERFORMANCE OF THIS SOFTWARE.
+ #
  
- CC = @CC_FOR_BUILD@
+-CC = @CC_FOR_BUILD@
  EXEEXT = @EXEEXT_FOR_BUILD@
 -LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
-+LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS_FOR_BUILD) $(AM_LDFLAGS) $(LDFLAGS_FOR_BUILD) -o $@
++COMPILE = $(CC_FOR_BUILD) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
++		      $(CPPFLAGS_FOR_BUILD) $(AM_CFLAGS) $(CFLAGS_FOR_BUILD)
++LINK = $(CC_FOR_BUILD) $(AM_CFLAGS) $(CFLAGS_FOR_BUILD) $(AM_LDFLAGS) $(LDFLAGS_FOR_BUILD) -o $@
  
  INCLUDES=-I${top_srcdir}/src -I${top_srcdir} $(WARN_CFLAGS)
  

+ 1 - 1
package/gadgetfs-test/gadgetfs-test.mk

@@ -7,7 +7,7 @@ GADGETFS_TEST_SOURCE=gadgetfs-test.tar.bz2
 GADGETFS_TEST_SITE=http://avr32linux.org/twiki/pub/Main/GadgetFsTest/
 GADGETFS_TEST_DIR=$(BUILD_DIR)/gadgetfs-test
 
-GADGETFS_TEST_MAKEOPTS:=CC=$(TARGET_CC) CFLAGS="$(TARGET_CFLAGS)" LDFLAGS="$(TARGET_LDFLAGS)"
+GADGETFS_TEST_MAKEOPTS:=CC="$(TARGET_CC)" CFLAGS="$(TARGET_CFLAGS)" LDFLAGS="$(TARGET_LDFLAGS)"
 
 ifeq ($(BR2_PACKAGE_GADGETFS_TEST_USE_AIO),y)
 GADGETFS_TEST_MAKEOPTS+=USE_AIO=y

+ 1 - 1
package/games/rubix/rubix.mk

@@ -10,7 +10,7 @@ RUBIX_INSTALL_STAGING = NO
 RUBIX_INSTALL_TARGET = YES
 RUBIX_INSTALL_TARGET_OPT = GAMESDIR=$(TARGET_DIR)/usr/games install
 
-RUBIX_MAKE_OPT = CC=$(TARGET_CC) XINC="-I$(STAGING_DIR)/usr/include/X11" XLIB="-L$(STAGING_DIR)/usr/lib -lX11"
+RUBIX_MAKE_OPT = CC="$(TARGET_CC)" XINC="-I$(STAGING_DIR)/usr/include/X11" XLIB="-L$(STAGING_DIR)/usr/lib -lX11"
 
 RUBIX_DEPENDENCIES = xserver_xorg-server
 

+ 2 - 2
package/gettext/gettext.mk

@@ -119,8 +119,8 @@ gettext: host-pkg-config $(if $(BR2_PACKAGE_LIBICONV),libiconv) $(STAGING_DIR)/$
 gettext-unpacked: $(GETTEXT_DIR)/.unpacked
 
 gettext-clean:
-	-$(MAKE) DESTDIR=$(STAGING_DIR) CC=$(TARGET_CC) -C $(GETTEXT_DIR) uninstall
-	-$(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(GETTEXT_DIR) uninstall
+	-$(MAKE) DESTDIR=$(STAGING_DIR) CC="$(TARGET_CC)" -C $(GETTEXT_DIR) uninstall
+	-$(MAKE) DESTDIR=$(TARGET_DIR) CC="$(TARGET_CC)" -C $(GETTEXT_DIR) uninstall
 	-$(MAKE) -C $(GETTEXT_DIR) clean
 
 gettext-dirclean:

+ 1 - 1
package/gtk2-engines/gtk2-engines.mk

@@ -119,7 +119,7 @@ $(GTK2_ENGINES_DIR)/.configured: $(GTK2_ENGINES_DIR)/.unpacked
 	touch $(GTK2_ENGINES_DIR)/.configured
 
 $(GTK2_ENGINES_DIR)/gtk/.libs/$(GTK2_ENGINES_BINARY): $(GTK2_ENGINES_DIR)/.configured
-	$(GTK2_ENGINES_BUILD_ENV) $(MAKE) CC=$(TARGET_CC) -C $(GTK2_ENGINES_DIR)
+	$(GTK2_ENGINES_BUILD_ENV) $(MAKE) CC="$(TARGET_CC)" -C $(GTK2_ENGINES_DIR)
 	touch -c $(GTK2_ENGINES_DIR)/gtk/.libs/$(GTK2_ENGINES_BINARY)
 
 $(STAGING_DIR)/lib/$(GTK2_ENGINES_BINARY): $(GTK2_ENGINES_DIR)/gtk/.libs/$(GTK2_ENGINES_BINARY)

+ 1 - 1
package/iostat/iostat.mk

@@ -21,7 +21,7 @@ $(IOSTAT_DIR)/.unpacked: $(DL_DIR)/$(IOSTAT_SOURCE)
 	touch $(IOSTAT_DIR)/.unpacked
 
 $(IOSTAT_DIR)/$(IOSTAT_BINARY): $(IOSTAT_DIR)/.unpacked
-	$(MAKE) CC=$(TARGET_CC) -C $(IOSTAT_DIR)
+	$(MAKE) CC="$(TARGET_CC)" -C $(IOSTAT_DIR)
 	$(STRIPCMD) $(IOSTAT_DIR)/$(IOSTAT_BINARY)
 
 $(TARGET_DIR)/$(IOSTAT_TARGET_BINARY): $(IOSTAT_DIR)/$(IOSTAT_BINARY)

+ 1 - 1
package/iproute2/iproute2.mk

@@ -31,7 +31,7 @@ $(IPROUTE2_DIR)/$(IPROUTE2_BINARY): $(IPROUTE2_DIR)/.configured
 	$(MAKE) \
 		-C $(IPROUTE2_DIR) \
 		KERNEL_INCLUDE=$(LINUX_SOURCE_DIR)/include \
-		CC=$(TARGET_CC) \
+		CC="$(TARGET_CC)" \
 		AR=$(TARGET_CROSS)ar \
 		NETEM_DIST="" \
 		SUBDIRS="lib ip tc"

+ 2 - 2
package/libfloat/libfloat.mk

@@ -34,8 +34,8 @@ $(LIBFLOAT_DIR)/.unpacked: $(DL_DIR)/$(LIBFLOAT_SOURCE) $(DL_DIR)/$(LIBFLOAT_PAT
 	toolchain/patch-kernel.sh $(LIBFLOAT_DIR) package/libfloat/ libfloat\*.patch
 	touch $@
 
-$(LIBFLOAT_DIR)/libfloat.so.1: $(LIBFLOAT_DIR)/.unpacked $(TARGET_CC)
-	$(MAKE) CC=$(TARGET_CC) LD=$(TARGET_CROSS)ld -C $(LIBFLOAT_DIR)
+$(LIBFLOAT_DIR)/libfloat.so.1: $(LIBFLOAT_DIR)/.unpacked
+	$(MAKE) CC="$(TARGET_CC)" LD=$(TARGET_CROSS)ld -C $(LIBFLOAT_DIR)
 
 $(STAGING_DIR)/lib/libfloat.so $(STAGING_DIR)/lib/libfloat.a: $(LIBFLOAT_DIR)/libfloat.so.1
 	cp -dpf $(LIBFLOAT_DIR)/libfloat.a $(STAGING_DIR)/lib/libfloat.a

+ 1 - 1
package/libglib12/libglib12.mk

@@ -45,7 +45,7 @@ $(LIBGLIB12_DIR)/.configured: $(LIBGLIB12_DIR)/.unpacked
 	touch $@
 
 $(LIBGLIB12_DIR)/.libs/$(LIBGLIB12_BINARY): $(LIBGLIB12_DIR)/.configured
-	$(MAKE) CC=$(TARGET_CC) -C $(LIBGLIB12_DIR)
+	$(MAKE) CC="$(TARGET_CC)" -C $(LIBGLIB12_DIR)
 
 $(STAGING_DIR)/lib/$(LIBGLIB12_BINARY): $(LIBGLIB12_DIR)/.libs/$(LIBGLIB12_BINARY)
 	$(MAKE) prefix=$(STAGING_DIR) \

+ 1 - 1
package/libgtk12/libgtk12.mk

@@ -54,7 +54,7 @@ $(LIBGTK12_DIR)/.configured: $(LIBGTK12_DIR)/.unpacked
 	touch $(LIBGTK12_DIR)/.configured
 
 $(LIBGTK12_DIR)/gtk/.libs/$(LIBGTK12_BINARY): $(LIBGTK12_DIR)/.configured
-	$(MAKE) CC=$(TARGET_CC) -C $(LIBGTK12_DIR)
+	$(MAKE) CC="$(TARGET_CC)" -C $(LIBGTK12_DIR)
 	touch -c $(LIBGTK12_DIR)/gtk/.libs/$(LIBGTK12_BINARY)
 
 $(STAGING_DIR)/lib/$(LIBGTK12_BINARY): $(LIBGTK12_DIR)/gtk/.libs/$(LIBGTK12_BINARY)

+ 2 - 2
package/lmbench/lmbench.mk

@@ -16,11 +16,11 @@ define LMBENCH_CONFIGURE_CMDS
 endef
 
 define LMBENCH_BUILD_CMDS
-	$(MAKE) CFLAGS="$(TARGET_CFLAGS)" OS=$(ARCH) CC=$(TARGET_CC) -C $(@D)/src
+	$(MAKE) CFLAGS="$(TARGET_CFLAGS)" OS=$(ARCH) CC="$(TARGET_CC)" -C $(@D)/src
 endef
 
 define LMBENCH_INSTALL_TARGET_CMDS
-	$(MAKE) CFLAGS="$(TARGET_CFLAGS)" OS=$(ARCH) CC=$(TARGET_CC) BASE=$(TARGET_DIR)/usr -C $(@D)/src install
+	$(MAKE) CFLAGS="$(TARGET_CFLAGS)" OS=$(ARCH) CC="$(TARGET_CC)" BASE=$(TARGET_DIR)/usr -C $(@D)/src install
 endef
 
 define LMBENCH_CLEAN_CMDS

+ 1 - 2
package/lockfile-progs/lockfile-progs.mk

@@ -21,8 +21,7 @@ $(LOCKFILE_PROGS_DIR)/.unpacked: $(DL_DIR)/$(LOCKFILE_PROGS_SOURCE)
 	touch $(LOCKFILE_PROGS_DIR)/.unpacked
 
 $(TARGET_DIR)/$(LOCKFILE_PROGS_BINARY): $(LOCKFILE_PROGS_DIR)/.unpacked
-	$(MAKE) $(TARGET_CONFIGURE_OPTS) $(TARGET_CONFIGURE_ENV) \
-		-C $(LOCKFILE_PROGS_DIR)
+	$(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(LOCKFILE_PROGS_DIR)
 	cp -a $(LOCKFILE_PROGS_DIR)/bin/lockfile* $(TARGET_DIR)/usr/bin
 	$(STRIPCMD) $(STRIP_STRIP_UNNEEDED) $(TARGET_DIR)/$(LOCKFILE_PROGS_BINARY)
 

+ 1 - 1
package/mdadm/mdadm.mk

@@ -14,7 +14,7 @@ MDADM_INSTALL_STAGING = NO
 MDADM_INSTALL_TARGET = YES
 
 MDADM_MAKE_OPT = \
-	CFLAGS="$(TARGET_CFLAGS)" CC=$(TARGET_CC) -C $(MDADM_DIR) mdadm
+	CFLAGS="$(TARGET_CFLAGS)" CC="$(TARGET_CC)" -C $(MDADM_DIR) mdadm
 
 MDADM_INSTALL_TARGET_OPT = \
 	DESTDIR=$(TARGET_DIR)/usr -C $(MDADM_DIR) install-mdadm

+ 1 - 1
package/memstat/memstat.mk

@@ -9,7 +9,7 @@ MEMSTAT_SITE = $(BR2_DEBIAN_MIRROR)/debian/pool/main/m/memstat
 MEMSTAT_SOURCE = memstat_$(MEMSTAT_VERSION).tar.gz
 
 define MEMSTAT_BUILD_CMDS
-	$(MAKE) CC=$(TARGET_CC) LD=$(TARGET_LD) CFLAGS="$(TARGET_CFLAGS)" \
+	$(MAKE) CC="$(TARGET_CC)" LD="$(TARGET_LD)" CFLAGS="$(TARGET_CFLAGS)" \
 		-C $(@D) memstat
 endef
 

+ 1 - 1
package/microperl/microperl.mk

@@ -68,7 +68,7 @@ $(MICROPERL_DIR)/.configured: $(MICROPERL_DIR)/.host_make_fixed
 	touch $@
 
 $(MICROPERL_DIR)/microperl: $(MICROPERL_DIR)/.configured
-	$(MAKE) -f $(MICROPERL_DIR)/Makefile.micro CC=$(TARGET_CC) \
+	$(MAKE) -f $(MICROPERL_DIR)/Makefile.micro CC="$(TARGET_CC)" \
 		OPTIMIZE="$(TARGET_CFLAGS)" -C $(MICROPERL_DIR)
 ifeq ($(BR2_PACKAGE_AUTOMAKE),y)
 	#(cd $(@D); \

+ 2 - 2
package/microwin/microwin.mk

@@ -38,10 +38,10 @@ $(MICROWIN_DIR)/.configured: $(MICROWIN_DIR)/.prepared
 	touch $(MICROWIN_DIR)/.configured
 
 $(MICROWIN_BINARY): $(MICROWIN_DIR)/.configured
-	$(MAKE) ARCH=LINUX-$(shell echo $(ARCH) | tr a-z A-Z) $(shell echo $(ARCH) | tr a-z A-Z)TOOLSPREFIX=$(TARGET_CROSS) CC=$(TARGET_CC) -C $(MICROWIN_DIR)/src CONFIG=$(MICROWIN_CONFIG)
+	$(MAKE) ARCH=LINUX-$(shell echo $(ARCH) | tr a-z A-Z) $(shell echo $(ARCH) | tr a-z A-Z)TOOLSPREFIX=$(TARGET_CROSS) CC="$(TARGET_CC)" -C $(MICROWIN_DIR)/src CONFIG=$(MICROWIN_CONFIG)
 
 $(MICROWIN_TARGET_BINARY): $(MICROWIN_BINARY)
-	$(MAKE) INSTALL_PREFIX=$(TARGET_DIR)/usr INSTALL_OWNER1= INSTALL_OWNER2= CC=$(TARGET_CC) -C $(MICROWIN_DIR)/src CONFIG=$(MICROWIN_CONFIG) install
+	$(MAKE) INSTALL_PREFIX=$(TARGET_DIR)/usr INSTALL_OWNER1= INSTALL_OWNER2= CC="$(TARGET_CC)" -C $(MICROWIN_DIR)/src CONFIG=$(MICROWIN_CONFIG) install
 
 microwin: $(MICROWIN_TARGET_BINARY)
 

+ 2 - 2
package/mii-diag/mii-diag.mk

@@ -34,10 +34,10 @@ $(MIIDIAG_DIR)/.configured: $(MIIDIAG_DIR)/.unpacked
 	touch $@
 
 $(MIIDIAG_DIR)/mii-diag: $(MIIDIAG_DIR)/.configured
-	$(MAKE) CC=$(TARGET_CC) CFLAGS="$(TARGET_CFLAGS)" -C $(MIIDIAG_DIR)
+	$(MAKE) CC="$(TARGET_CC)" CFLAGS="$(TARGET_CFLAGS)" -C $(MIIDIAG_DIR)
 
 $(TARGET_DIR)/$(MIIDIAG_BINARY): $(MIIDIAG_DIR)/mii-diag
-	$(MAKE) CC=$(TARGET_CC) CFLAGS="$(TARGET_CFLAGS)" -C $(MIIDIAG_DIR) DESTDIR=$(TARGET_DIR) install
+	$(MAKE) CC="$(TARGET_CC)" CFLAGS="$(TARGET_CFLAGS)" -C $(MIIDIAG_DIR) DESTDIR=$(TARGET_DIR) install
 	$(STRIPCMD) $@
 	touch $@
 

+ 1 - 1
package/mrouted/mrouted.mk

@@ -27,7 +27,7 @@ $(MROUTED_DIR)/.unpacked: $(DL_DIR)/$(MROUTED_SOURCE) $(DL_DIR)/$(MROUTED_PATCH)
 
 $(MROUTED_DIR)/$(MROUTED_BINARY): $(MROUTED_DIR)/.unpacked
 	$(TARGET_CONFIGURE_OPTS) \
-	$(MAKE) CC=$(TARGET_CC) -C $(MROUTED_DIR)
+	$(MAKE) CC="$(TARGET_CC)" -C $(MROUTED_DIR)
 
 $(TARGET_DIR)/$(MROUTED_TARGET_BINARY): $(MROUTED_DIR)/$(MROUTED_BINARY)
 	cp -a $(MROUTED_DIR)/$(MROUTED_BINARY) $(TARGET_DIR)/$(MROUTED_TARGET_BINARY)

+ 1 - 2
package/mtd/mtd.mk

@@ -65,8 +65,7 @@ MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBIRSVOL)	+= ubirsvol
 MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBIUPDATEVOL)	+= ubiupdatevol
 
 MTD_MAKE_COMMON_FLAGS = \
-	$(TARGET_CONFIGURE_ENV) \
-	CROSS=$(TARGET_CROSS) CC=$(TARGET_CC) \
+	$(TARGET_CONFIGURE_OPTS) CROSS=$(TARGET_CROSS) \
 	WITHOUT_XATTR=1 WITHOUT_LARGEFILE=1
 
 ifneq ($(MTD_TARGETS_y),)

+ 1 - 1
package/multimedia/alsa-utils/alsa-utils.mk

@@ -44,7 +44,7 @@ $(ALSA_UTILS_DIR)/.configured: $(ALSA_UTILS_DIR)/.unpacked
 	touch $@
 
 $(ALSA_UTILS_DIR)/$(ALSA_UTILS_BINARY): $(ALSA_UTILS_DIR)/.configured
-	$(MAKE) CC=$(TARGET_CC) -C $(ALSA_UTILS_DIR)
+	$(MAKE) CC="$(TARGET_CC)" -C $(ALSA_UTILS_DIR)
 	touch -c $@
 
 ALSA_UTILS_TARGETS_ :=

+ 1 - 1
package/multimedia/festival/festival/festival.mk

@@ -13,7 +13,7 @@ FESTIVAL_INSTALL_TARGET_OPT = DESTDIR=$(TARGET_DIR) STRIP=$(TARGET_STRIP) instal
 
 FESTIVAL_CONF_OPT = --prefix=/usr --libdir=/usr/share/festival/lib
 
-FESTIVAL_MAKE_OPT = CC=$(TARGET_CC) CXX=$(TARGET_CXX)
+FESTIVAL_MAKE_OPT = CC="$(TARGET_CC)" CXX="$(TARGET_CXX)"
 
 FESTIVAL_DEPENDENCIES = alsa-lib speech-tools
 

+ 1 - 1
package/multimedia/festival/speech-tools/speech-tools.mk

@@ -12,7 +12,7 @@ SPEECH_TOOLS_INSTALL_TARGET = YES
 SPEECH_TOOLS_INSTALL_TARGET_OPT = DESTDIR=$(TARGET_DIR) STRIP=$(TARGET_STRIP) install
 
 SPEECH_TOOLS_CONF_OPT =
-SPEECH_TOOLS_MAKE_OPT = CC=$(TARGET_CC) CXX=$(TARGET_CXX)
+SPEECH_TOOLS_MAKE_OPT = CC="$(TARGET_CC)" CXX="$(TARGET_CXX)"
 
 SPEECH_TOOLS_DEPENDENCIES = ncurses
 

+ 0 - 1
package/multimedia/ffmpeg/ffmpeg.mk

@@ -121,7 +121,6 @@ define FFMPEG_CONFIGURE_CMDS
 	(cd $(FFMPEG_SRCDIR) && rm -rf config.cache && \
 	$(TARGET_CONFIGURE_OPTS) \
 	$(TARGET_CONFIGURE_ARGS) \
-	$(TARGET_CONFIGURE_ENV) \
 	$(FFMPEG_CONF_ENV) \
 	./configure \
 		--enable-cross-compile	\

+ 1 - 1
package/multimedia/mplayer/mplayer.mk

@@ -53,7 +53,7 @@ $(MPLAYER_DIR)/.configured: $(MPLAYER_DIR)/.unpacked
 		--confdir=/etc \
 		--target=$(GNU_TARGET_NAME) \
 		--host-cc=$(HOSTCC) \
-		--cc=$(TARGET_CC) \
+		--cc="$(TARGET_CC)" \
 		--as=$(TARGET_CROSS)as \
 		--with-extraincdir=$(STAGING_DIR)/usr/include \
 		--with-extralibdir=$(STAGING_DIR)/lib \

+ 4 - 4
package/netkitbase/netkitbase.mk

@@ -27,13 +27,13 @@ $(NETKITBASE_DIR)/.unpacked: $(DL_DIR)/$(NETKITBASE_SOURCE)
 
 $(NETKITBASE_DIR)/.configured: $(NETKITBASE_DIR)/.unpacked
 	(cd $(NETKITBASE_DIR); rm -f config.cache; \
-	 PATH=$(TARGET_PATH) CC=$(TARGET_CC) \
-	./configure --installroot=$(TARGET_DIR) --with-c-compiler=$(TARGET_CC) \
+	 PATH=$(TARGET_PATH) CC="$(TARGET_CC)" \
+	./configure --installroot=$(TARGET_DIR) --with-c-compiler="$(TARGET_CC)" \
 	)
 	touch $(NETKITBASE_DIR)/.configured
 
 $(NETKITBASE_DIR)/$(NETKITBASE_BINARY): $(NETKITBASE_DIR)/.configured
-	$(MAKE) CC=$(TARGET_CC) -C $(NETKITBASE_DIR)
+	$(MAKE) CC="$(TARGET_CC)" -C $(NETKITBASE_DIR)
 	$(STRIPCMD) $(NETKITBASE_DIR)/$(NETKITBASE_BINARY)
 
 $(TARGET_DIR)/$(NETKITBASE_TARGET_BINARY): $(NETKITBASE_DIR)/$(NETKITBASE_BINARY)
@@ -50,7 +50,7 @@ $(TARGET_DIR)/$(NETKITBASE_TARGET_BINARY): $(NETKITBASE_DIR)/$(NETKITBASE_BINARY
 netkitbase: $(TARGET_DIR)/$(NETKITBASE_TARGET_BINARY)
 
 netkitbase-clean:
-	#$(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(NETKITBASE_DIR) uninstall
+	#$(MAKE) DESTDIR=$(TARGET_DIR) CC="$(TARGET_CC)" -C $(NETKITBASE_DIR) uninstall
 	-rm -f $(TARGET_DIR)/usr/sbin/inetd $(TARGET_DIR)/etc/inetd.conf
 	-rm -f $(TARGET_DIR)/etc/inetd.conf
 	-$(MAKE) -C $(NETKITBASE_DIR) clean

+ 5 - 5
package/netkittelnet/netkittelnet.mk

@@ -28,13 +28,13 @@ $(NETKITTELNET_DIR)/.unpacked: $(DL_DIR)/$(NETKITTELNET_SOURCE)
 
 $(NETKITTELNET_DIR)/.configured: $(NETKITTELNET_DIR)/.unpacked
 	(cd $(NETKITTELNET_DIR); rm -f config.cache; \
-	 PATH=$(TARGET_PATH) CC=$(TARGET_CC) \
-	./configure --installroot=$(TARGET_DIR) --with-c-compiler=$(TARGET_CC) \
+	 PATH=$(TARGET_PATH) CC="$(TARGET_CC)" \
+	./configure --installroot=$(TARGET_DIR) --with-c-compiler="$(TARGET_CC)" \
 	)
 	touch $(NETKITTELNET_DIR)/.configured
 
 $(NETKITTELNET_DIR)/$(NETKITTELNET_BINARY): $(NETKITTELNET_DIR)/.configured
-	$(MAKE) SUB=telnetd CC=$(TARGET_CC) -C $(NETKITTELNET_DIR)
+	$(MAKE) SUB=telnetd CC="$(TARGET_CC)" -C $(NETKITTELNET_DIR)
 	$(STRIPCMD) $(NETKITTELNET_DIR)/$(NETKITTELNET_BINARY)
 
 $(TARGET_DIR)/$(NETKITTELNET_TARGET_BINARY): $(NETKITTELNET_DIR)/$(NETKITTELNET_BINARY)
@@ -44,14 +44,14 @@ $(TARGET_DIR)/$(NETKITTELNET_TARGET_BINARY): $(NETKITTELNET_DIR)/$(NETKITTELNET_
 	cp $(NETKITTELNET_DIR)/$(NETKITTELNET_BINARY) $(TARGET_DIR)/$(NETKITTELNET_TARGET_BINARY)
 	# Enable telnet in inetd
 	$(SED) "s~^#telnet.*~telnet\tstream\ttcp\tnowait\troot\t/usr/sbin/telnetd\t/usr/sbin/telnetd~;" $(TARGET_DIR)/etc/inetd.conf
-	#$(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(NETKITTELNET_DIR) install
+	#$(MAKE) DESTDIR=$(TARGET_DIR) CC="$(TARGET_CC)" -C $(NETKITTELNET_DIR) install
 	#rm -rf $(TARGET_DIR)/share/locale $(TARGET_DIR)/usr/info \
 	# $(TARGET_DIR)/usr/man $(TARGET_DIR)/usr/share/doc
 
 netkittelnet: netkitbase $(TARGET_DIR)/$(NETKITTELNET_TARGET_BINARY)
 
 netkittelnet-clean:
-	#$(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(NETKITTELNET_DIR) uninstall
+	#$(MAKE) DESTDIR=$(TARGET_DIR) CC="$(TARGET_CC)" -C $(NETKITTELNET_DIR) uninstall
 	-rm -f $(TARGET_DIR)/usr/sbin/telnetd
 	-$(MAKE) -C $(NETKITTELNET_DIR) clean
 

+ 1 - 1
package/netplug/netplug.mk

@@ -22,7 +22,7 @@ $(NETPLUG_DIR)/.unpacked: $(DL_DIR)/$(NETPLUG_SOURCE)
 	touch $(NETPLUG_DIR)/.unpacked
 
 $(NETPLUG_DIR)/$(NETPLUG_BINARY): $(NETPLUG_DIR)/.unpacked
-	$(MAKE) CC=$(TARGET_CC) -C $(NETPLUG_DIR)
+	$(MAKE) CC="$(TARGET_CC)" -C $(NETPLUG_DIR)
 	$(STRIPCMD) $(NETPLUG_DIR)/$(NETPLUG_BINARY)
 
 $(TARGET_DIR)/$(NETPLUG_TARGET_BINARY): $(NETPLUG_DIR)/$(NETPLUG_BINARY)

+ 1 - 1
package/netsnmp/netsnmp.mk

@@ -133,7 +133,7 @@ netsnmp-headers: $(TARGET_DIR)/usr/include/net-snmp/net-snmp-config.h
 netsnmp-source: $(DL_DIR)/$(NETSNMP_SOURCE)
 
 netsnmp-clean:
-	-$(MAKE) PREFIX=$(TARGET_DIR) INSTALL_PREFIX=$(TARGET_DIR) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(NETSNMP_DIR) uninstall
+	-$(MAKE) PREFIX=$(TARGET_DIR) INSTALL_PREFIX=$(TARGET_DIR) DESTDIR=$(TARGET_DIR) CC="$(TARGET_CC)" -C $(NETSNMP_DIR) uninstall
 	-$(MAKE) -C $(NETSNMP_DIR) clean
 	-rm -rf $(TARGET_DIR)/etc/snmp/{snmpd{,trapd},mib2c*}.conf \
 		$(TARGET_DIR)/etc/default/snmpd \

+ 1 - 1
package/newt/newt.mk

@@ -42,7 +42,7 @@ $(NEWT_DIR)/.configured: $(NEWT_DIR)/.source
 	touch $(NEWT_DIR)/.configured
 
 $(NEWT_DIR)/libnewt.so.$(NEWT_VERSION): $(NEWT_DIR)/.configured
-	$(MAKE) CFLAGS="$(TARGET_CFLAGS) $(NEWT_CFLAGS)" CC=$(TARGET_CC) -C $(NEWT_DIR)
+	$(MAKE) CFLAGS="$(TARGET_CFLAGS) $(NEWT_CFLAGS)" CC="$(TARGET_CC)" -C $(NEWT_DIR)
 	touch -c $@
 
 $(STAGING_DIR)/usr/lib/libnewt.a: $(NEWT_DIR)/libnewt.so.$(NEWT_VERSION)

+ 1 - 1
package/nfs-utils/nfs-utils.mk

@@ -47,7 +47,7 @@ $(NFS_UTILS_DIR)/.configured: $(NFS_UTILS_DIR)/.unpacked
 	touch $@
 
 $(NFS_UTILS_DIR)/$(NFS_UTILS_BINARY): $(NFS_UTILS_DIR)/.configured
-	$(MAKE) CC=$(TARGET_CC) CC_FOR_BUILD="$(HOSTCC)" \
+	$(MAKE) CC="$(TARGET_CC)" CC_FOR_BUILD="$(HOSTCC)" \
 		RPCGEN=/usr/bin/rpcgen -C $(NFS_UTILS_DIR)
 	touch -c $@
 

+ 1 - 1
package/openssh/openssh.mk

@@ -6,7 +6,7 @@
 OPENSSH_VERSION=5.1p1
 OPENSSH_SITE=ftp://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable
 
-OPENSSH_CONF_ENV = LD=$(TARGET_CC)
+OPENSSH_CONF_ENV = LD="$(TARGET_CC)"
 OPENSSH_CONF_OPT = --libexecdir=/usr/lib --disable-lastlog --disable-utmp \
 		--disable-utmpx --disable-wtmp --disable-wtmpx --without-x
 

+ 2 - 2
package/openssl/openssl.mk

@@ -43,8 +43,8 @@ define OPENSSL_CONFIGURE_CMDS
 endef
 
 define OPENSSL_BUILD_CMDS
-	$(MAKE1) CC=$(TARGET_CC) -C $(@D) all build-shared
-	$(MAKE1) CC=$(TARGET_CC) -C $(@D) do_linux-shared
+	$(MAKE1) -C $(@D) all build-shared
+	$(MAKE1) -C $(@D) do_linux-shared
 endef
 
 define OPENSSL_INSTALL_STAGING_CMDS

+ 1 - 1
package/pcmcia/pcmcia.mk

@@ -42,7 +42,7 @@ $(PCMCIA_DIR)/.patched: $(PCMCIA_DIR)/.unpacked
 $(PCMCIA_DIR)/.configured: $(PCMCIA_DIR)/.patched
 	( cd $(PCMCIA_DIR); ./Configure --kernel=$(LINUX26_DIR) --noprompt \
 		--rcdir=/etc --arch=$(ARCH) --trust --srctree --nocardbus \
-		--sysv --kcc=$(TARGET_CROSS)gcc --ucc=$(TARGET_CC) --ld=$(TARGET_CROSS)ld \
+		--sysv --kcc=$(TARGET_CROSS)gcc --ucc="$(TARGET_CC)" --ld=$(TARGET_CROSS)ld \
 		--target=$(TARGET_DIR))
 	$(SED) "s/pump/udhcpc/" $(PCMCIA_DIR)/etc/network
 	$(SED) "s/ide_cs/ide-cs/" $(PCMCIA_DIR)/etc/config

+ 1 - 1
package/portmap/portmap.mk

@@ -22,7 +22,7 @@ $(PORTMAP_DIR)/.unpacked: $(DL_DIR)/$(PORTMAP_SOURCE)
 	touch $(PORTMAP_DIR)/.unpacked
 
 $(PORTMAP_DIR)/$(PORTMAP_BINARY): $(PORTMAP_DIR)/.unpacked
-	$(MAKE) CC=$(TARGET_CC) O="$(TARGET_CFLAGS)" -C $(PORTMAP_DIR)
+	$(MAKE) CC="$(TARGET_CC)" O="$(TARGET_CFLAGS)" -C $(PORTMAP_DIR)
 
 $(TARGET_DIR)/$(PORTMAP_TARGET_BINARY): $(PORTMAP_DIR)/$(PORTMAP_BINARY)
 	$(INSTALL) -D $(PORTMAP_DIR)/$(PORTMAP_BINARY) $(TARGET_DIR)/$(PORTMAP_TARGET_BINARY)

+ 1 - 1
package/pppd/pppd.mk

@@ -9,7 +9,7 @@ PPPD_SOURCE = ppp-$(PPPD_VERSION).tar.gz
 PPPD_SITE = ftp://ftp.samba.org/pub/ppp
 PPPD_TARGET_BINS = chat pppd pppdump pppstats
 PPPD_MANPAGES = $(if $(BR2_HAVE_DOCUMENTATION),chat pppd pppdump pppstats)
-PPPD_MAKE = $(MAKE) CC=$(TARGET_CC) COPTS="$(TARGET_CFLAGS)" -C $(PPPD_DIR) $(PPPD_MAKE_OPT)
+PPPD_MAKE = $(MAKE) CC="$(TARGET_CC)" COPTS="$(TARGET_CFLAGS)" -C $(PPPD_DIR) $(PPPD_MAKE_OPT)
 
 ifeq ($(BR2_PACKAGE_PPPD_FILTER),y)
 	PPPD_DEPENDENCIES += libpcap

+ 2 - 2
package/python/python.mk

@@ -116,7 +116,7 @@ $(PYTHON_DIR)/$(PYTHON_BINARY): $(PYTHON_DIR)/.configured
 ifneq ($(BR2_PACKAGE_PYTHON_SSL),y)
 	export PYTHON_DISABLE_SSL=1
 endif
-	$(MAKE) CC=$(TARGET_CC) -C $(PYTHON_DIR) DESTDIR=$(TARGET_DIR) \
+	$(MAKE) CC="$(TARGET_CC)" -C $(PYTHON_DIR) DESTDIR=$(TARGET_DIR) \
 		PYTHON_MODULES_INCLUDE=$(STAGING_DIR)/usr/include \
 		PYTHON_MODULES_LIB="$(STAGING_DIR)/lib $(STAGING_DIR)/usr/lib" \
 		PYTHON_DISABLE_MODULES="$(BR2_PYTHON_DISABLED_MODULES)" \
@@ -128,7 +128,7 @@ ifneq ($(BR2_PACKAGE_PYTHON_SSL),y)
 endif
 	rm -rf $(PYTHON_DIR)/Lib/test
 	LD_LIBRARY_PATH=$(STAGING_DIR)/lib
-	$(MAKE) CC=$(TARGET_CC) -C $(PYTHON_DIR) install \
+	$(MAKE) CC="$(TARGET_CC)" -C $(PYTHON_DIR) install \
 		DESTDIR=$(TARGET_DIR) CROSS_COMPILE=yes \
 		PYTHON_MODULES_INCLUDE=$(STAGING_DIR)/usr/include \
 		PYTHON_MODULES_LIB="$(STAGING_DIR)/lib $(STAGING_DIR)/usr/lib" \

+ 7 - 64
package/ruby/ruby.mk

@@ -6,69 +6,12 @@
 RUBY_VERSION:=1.9.1-p129
 RUBY_SOURCE:=ruby-$(RUBY_VERSION).tar.gz
 RUBY_SITE:=ftp://ftp.ruby-lang.org/pub/ruby/1.9
-RUBY_DIR:=$(BUILD_DIR)/ruby-$(RUBY_VERSION)
-RUBY_CAT:=$(ZCAT)
-RUBY_BINARY:=ruby
-RUBY_TARGET_BINARY:=usr/bin/ruby
+RUBY_AUTORECONF=YES
+RUBY_DEPENDENCIES=host-ruby
+RUBY_INSTALL_TARGET_OPT=DESTDIR=$(TARGET_DIR) install
+RUBY_MAKE_ENV=$(TARGET_MAKE_ENV)
 
-$(DL_DIR)/$(RUBY_SOURCE):
-	 $(call DOWNLOAD,$(RUBY_SITE),$(RUBY_SOURCE))
+RUBY_CONF_OPT = --disable-install-doc
 
-ruby-source: $(DL_DIR)/$(RUBY_SOURCE)
-
-$(RUBY_DIR)/.unpacked: $(DL_DIR)/$(RUBY_SOURCE)
-	$(RUBY_CAT) $(DL_DIR)/$(RUBY_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
-	toolchain/patch-kernel.sh $(RUBY_DIR) package/ruby/ ruby-\*.patch
-	(cd $(RUBY_DIR); autoreconf)
-	touch $(RUBY_DIR)/.unpacked
-
-$(RUBY_DIR)/.configured: $(RUBY_DIR)/.unpacked
-	(cd $(RUBY_DIR); rm -rf config.cache; \
-		$(TARGET_CONFIGURE_OPTS) \
-		$(TARGET_CONFIGURE_ARGS) \
-		./configure $(QUIET) \
-		--target=$(GNU_TARGET_NAME) \
-		--host=$(GNU_TARGET_NAME) \
-		--build=$(GNU_HOST_NAME) \
-		--prefix=/usr \
-		--exec-prefix=/usr \
-		--bindir=/usr/bin \
-		--sbindir=/usr/sbin \
-		--libdir=/lib \
-		--libexecdir=/usr/lib \
-		--sysconfdir=/etc \
-		--datadir=/usr/share \
-		--localstatedir=/var \
-		--mandir=/usr/man \
-		--infodir=/usr/info \
-		--disable-install-doc \
-		$(DISABLE_IPV6) \
-		$(DISABLE_NLS) \
-		$(DISABLE_LARGEFILE) \
-	)
-	touch $(RUBY_DIR)/.configured
-
-$(RUBY_DIR)/$(RUBY_BINARY): $(RUBY_DIR)/.configured
-	$(MAKE) -C $(RUBY_DIR)
-
-$(TARGET_DIR)/$(RUBY_TARGET_BINARY): $(RUBY_DIR)/$(RUBY_BINARY)
-	$(MAKE) DESTDIR=$(TARGET_DIR) -C $(RUBY_DIR) install
-	rm -rf $(TARGET_DIR)/usr/man $(TARGET_DIR)/usr/share/doc
-
-ruby: $(TARGET_DIR)/$(RUBY_TARGET_BINARY)
-
-ruby-clean:
-	$(MAKE) DESTDIR=$(TARGET_DIR) -C $(RUBY_DIR) uninstall
-	-$(MAKE) -C $(RUBY_DIR) clean
-
-ruby-dirclean:
-	rm -rf $(RUBY_DIR)
-
-#############################################################
-#
-# Toplevel Makefile options
-#
-#############################################################
-ifeq ($(BR2_PACKAGE_RUBY),y)
-TARGETS+=ruby
-endif
+$(eval $(call AUTOTARGETS,package,ruby))
+$(eval $(call AUTOTARGETS,package,ruby,host))

+ 2 - 2
package/sed/sed.mk

@@ -141,7 +141,7 @@ sed-target_binary: $(SED_DIR2)/$(SED_BINARY)
 	      -o $(TARGET_DIR)/$(SED_TARGET_BINARY) \
 	      -ot $(SED_DIR2)/$(SED_BINARY) ]; then \
 		set -x; \
-		$(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(SED_DIR2) install; \
+		$(MAKE) DESTDIR=$(TARGET_DIR) CC="$(TARGET_CC)" -C $(SED_DIR2) install; \
 		mv $(TARGET_DIR)/usr/bin/sed $(TARGET_DIR)/bin/; \
 		rm -rf $(TARGET_DIR)/share/locale; \
 		rm -rf $(TARGET_DIR)/usr/share/doc; \
@@ -150,7 +150,7 @@ sed-target_binary: $(SED_DIR2)/$(SED_BINARY)
 sed: sed-target_binary
 
 sed-clean:
-	$(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(SED_DIR2) uninstall
+	$(MAKE) DESTDIR=$(TARGET_DIR) CC="$(TARGET_CC)" -C $(SED_DIR2) uninstall
 	-$(MAKE) -C $(SED_DIR2) clean
 
 sed-dirclean:

+ 1 - 1
package/slang/slang.mk

@@ -16,7 +16,7 @@ $(SLANG_DIR): $(DL_DIR)/$(SLANG_SOURCE)
 	$(SLANG_CAT) $(DL_DIR)/$(SLANG_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
 
 $(SLANG_DIR)/libslang.so: $(SLANG_DIR)
-	$(MAKE1) CFLAGS="-Os -g -fPIC $(TARGET_CFLAGS)" CC=$(TARGET_CC) -C $(SLANG_DIR)
+	$(MAKE1) CFLAGS="-Os -g -fPIC $(TARGET_CFLAGS)" CC="$(TARGET_CC)" -C $(SLANG_DIR)
 
 $(STAGING_DIR)/usr/lib/libslang.so.1: $(SLANG_DIR)/libslang.so
 	cp -dpf $(SLANG_DIR)/libslang.a $(STAGING_DIR)/usr/lib

+ 1 - 1
package/stunnel/stunnel.mk

@@ -51,7 +51,7 @@ $(STUNNEL_DIR)/.configured: $(STUNNEL_DIR)/.unpacked
 	touch $(STUNNEL_DIR)/.configured
 
 $(STUNNEL_DIR)/src/stunnel: $(STUNNEL_DIR)/.configured
-	$(MAKE) CC=$(TARGET_CC) -C $(STUNNEL_DIR)
+	$(MAKE) CC="$(TARGET_CC)" -C $(STUNNEL_DIR)
 
 $(TARGET_DIR)/usr/bin/stunnel: $(STUNNEL_DIR)/src/stunnel
 	install -c $(STUNNEL_DIR)/src/stunnel $(TARGET_DIR)/usr/bin/stunnel

+ 1 - 1
package/sysvinit/sysvinit.mk

@@ -21,7 +21,7 @@ $(SYSVINIT_DIR)/.unpacked: $(DL_DIR)/$(SYSVINIT_SOURCE)
 	touch $@
 
 $(SYSVINIT_DIR)/$(SYSVINIT_BINARY): $(SYSVINIT_DIR)/.unpacked
-	CFLAGS="$(TARGET_CFLAGS)" $(MAKE) CC=$(TARGET_CC) -C $(SYSVINIT_DIR)/src
+	CFLAGS="$(TARGET_CFLAGS)" $(MAKE) CC="$(TARGET_CC)" -C $(SYSVINIT_DIR)/src
 
 $(TARGET_DIR)/$(SYSVINIT_TARGET_BINARY): $(SYSVINIT_DIR)/$(SYSVINIT_BINARY)
 	for x in halt init shutdown; do \

+ 1 - 1
package/tcpdump/dhcpdump.mk

@@ -23,7 +23,7 @@ $(DHCPDUMP_DIR)/.unpacked: $(DL_DIR)/$(DHCPDUMP_SOURCE)
 
 $(DHCPDUMP_DIR)/.configured: $(DHCPDUMP_DIR)/.unpacked
 	(cd $(DHCPDUMP_DIR); rm -f config.cache; \
-		BUILD_CC=$(TARGET_CC) HOSTCC="$(HOSTCC)" \
+		BUILD_CC="$(TARGET_CC)" HOSTCC="$(HOSTCC)" \
 		$(TARGET_CONFIGURE_OPTS) \
 		$(TARGET_CONFIGURE_ARGS) \
 		./configure $(QUIET) \

+ 1 - 1
package/udev/udev.mk

@@ -42,7 +42,7 @@ UDEV_BUILD_EXTRAS=$(addprefix extras/,$(UDEV_EXTRAS))
 # Build
 #
 define UDEV_BUILD_CMDS
-	$(MAKE) CROSS_COMPILE=$(TARGET_CROSS) CC=$(TARGET_CC) LD=$(TARGET_CC)\
+	$(MAKE) CROSS_COMPILE=$(TARGET_CROSS) CC="$(TARGET_CC)" LD="$(TARGET_CC)"\
 		CFLAGS="$(BR2_UDEV_CFLAGS)" \
 		USE_LOG=false USE_SELINUX=false \
 		udevdir=$(UDEV_ROOT) EXTRAS="$(UDEV_BUILD_EXTRAS)" -C $(@D)

+ 1 - 1
package/util-linux/util-linux.mk

@@ -59,7 +59,7 @@ $(UTIL-LINUX_BINARY): $(UTIL-LINUX_DIR)/.configured
 	$(MAKE) \
 		-C $(UTIL-LINUX_DIR) \
 		ARCH=$(ARCH) \
-		CC=$(TARGET_CC) \
+		CC="$(TARGET_CC)" \
 		OPT="$(TARGET_CFLAGS)" \
 		$(UTIL-LINUX_MAKE_OPT) \
 		HAVE_SLANG="NO"

+ 1 - 1
package/vsftpd/vsftpd.mk

@@ -46,7 +46,7 @@ endif
 
 
 $(VSFTPD_DIR)/$(VSFTPD_BINARY): $(VSFTPD_DIR)/.configured
-	$(MAKE) CC=$(TARGET_CC) CFLAGS="$(TARGET_CFLAGS)" LIBS="$(VSFTPD_LIBS)" -C $(VSFTPD_DIR)
+	$(MAKE) CC="$(TARGET_CC)" CFLAGS="$(TARGET_CFLAGS)" LIBS="$(VSFTPD_LIBS)" -C $(VSFTPD_DIR)
 	touch -c $@
 
 $(TARGET_DIR)/$(VSFTPD_TARGET_BINARY): $(VSFTPD_DIR)/$(VSFTPD_BINARY)

+ 2 - 1
package/webkit/webkit.mk

@@ -12,8 +12,9 @@ WEBKIT_INSTALL_TARGET = YES
 WEBKIT_LIBTOOL_PATCH = NO
 
 WEBKIT_DEPENDENCIES = host-flex host-gperf icu curl libxml2 libxslt	\
-			libgtk2 sqlite enchant libsoup
+			libgtk2 sqlite enchant libsoup jpeg
 
+WEBKIT_CONF_ENV = ac_cv_path_icu_config=$(STAGING_DIR)/usr/bin/icu-config
 
 ifeq ($(BR2_PACKAGE_XORG7),y)
 	WEBKIT_CONF_OPT += --with-target=x11

+ 2 - 2
package/wipe/wipe.mk

@@ -33,7 +33,7 @@ $(WIPE_DIR)/.configured: $(WIPE_DIR)/.unpacked
 
 $(WIPE_DIR)/$(WIPE_BINARY): $(WIPE_DIR)/.configured
 	rm -f $(WIPE_DIR)/$(WIPE_BINARY)
-	$(MAKE) CC=$(TARGET_CC) CC_GENERIC=$(TARGET_CC) CCO_GENERIC="$(TARGET_CFLAGS)" -C $(WIPE_DIR) generic
+	$(MAKE) CC="$(TARGET_CC)" CC_GENERIC="$(TARGET_CC)" CCO_GENERIC="$(TARGET_CFLAGS)" -C $(WIPE_DIR) generic
 
 $(TARGET_DIR)/$(WIPE_TARGET_BINARY): $(WIPE_DIR)/$(WIPE_BINARY)
 	cp -a $(WIPE_DIR)/$(WIPE_BINARY) $(TARGET_DIR)/$(WIPE_TARGET_BINARY)
@@ -41,7 +41,7 @@ $(TARGET_DIR)/$(WIPE_TARGET_BINARY): $(WIPE_DIR)/$(WIPE_BINARY)
 wipe: $(TARGET_DIR)/$(WIPE_TARGET_BINARY)
 
 wipe-clean:
-	#$(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(WIPE_DIR) uninstall
+	#$(MAKE) DESTDIR=$(TARGET_DIR) CC="$(TARGET_CC)" -C $(WIPE_DIR) uninstall
 	-$(MAKE) -C $(WIPE_DIR) clean
 
 wipe-dirclean:

+ 3 - 3
package/wireless-tools/wireless-tools.mk

@@ -29,13 +29,13 @@ $(WIRELESS_TOOLS_BUILD_DIR)/.configured: $(WIRELESS_TOOLS_BUILD_DIR)/.unpacked
 
 $(WIRELESS_TOOLS_BUILD_DIR)/iwmulticall: $(WIRELESS_TOOLS_BUILD_DIR)/.configured
 	$(MAKE) -C $(WIRELESS_TOOLS_BUILD_DIR) \
-		CC=$(TARGET_CC) CFLAGS="$(TARGET_CFLAGS)" \
+		CC="$(TARGET_CC)" CFLAGS="$(TARGET_CFLAGS)" \
 		iwmulticall
 
 $(TARGET_DIR)/sbin/iwconfig: $(WIRELESS_TOOLS_BUILD_DIR)/iwmulticall
 	$(MAKE) -C $(WIRELESS_TOOLS_BUILD_DIR) \
 		PREFIX="$(TARGET_DIR)" \
-		CC=$(TARGET_CC) CFLAGS="$(TARGET_CFLAGS)" \
+		CC="$(TARGET_CC)" CFLAGS="$(TARGET_CFLAGS)" \
 		install-iwmulticall
 
 wireless-tools: $(TARGET_DIR)/sbin/iwconfig
@@ -43,7 +43,7 @@ wireless-tools: $(TARGET_DIR)/sbin/iwconfig
 wireless-tools-source: $(DL_DIR)/$(WIRELESS_TOOLS_SOURCE)
 
 wireless-tools-clean:
-	$(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(WIRELESS_TOOLS_BUILD_DIR) uninstall
+	$(MAKE) DESTDIR=$(TARGET_DIR) CC="$(TARGET_CC)" -C $(WIRELESS_TOOLS_BUILD_DIR) uninstall
 	-$(MAKE) -C $(WIRELESS_TOOLS_BUILD_DIR) clean
 
 wireless-tools-dirclean:

+ 1 - 0
package/x11r7/xcb-util/xcb-util.mk

@@ -7,6 +7,7 @@ XCB_UTIL_VERSION = 0.3.6
 XCB_UTIL_SOURCE = xcb-util-$(XCB_UTIL_VERSION).tar.bz2
 XCB_UTIL_SITE = http://xcb.freedesktop.org/dist/
 XCB_UTIL_LIBTOOL_PATCH = NO
+XCB_UTIL_DEPENDENCIES = host-gperf
 
 $(eval $(call AUTOTARGETS,package/x11r7,xcb-util))
 

+ 96 - 0
package/x11r7/xlib_libXt/xlib_libXt-1.0.7-fix-cross-compile.patch

@@ -0,0 +1,96 @@
+From da5ba611fbff6f939a7cec9ca41fa7df0f76a197 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?R=C3=A9mi=20Cardona?= <remi@gentoo.org>
+Date: Thu, 5 Nov 2009 11:55:22 +0100
+Subject: [PATCH] fix cross-compile again
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+makestrs should always be built for the target arch. When cross-compiling,
+create a native version "xmakestrs" which will always be noinst, and use it
+to generate the other sources.
+
+This avoids installing a makestrs built for the wrong arch.
+
+Based on this patch :
+http://overlays.gentoo.org/proj/embedded/browser/openmoko/trunk/openmoko-target/x11-libs/libXt/files/libXt-1.0.7-crosscompile-makestr.patch
+
+Signed-off-by: Rémi Cardona <remi@gentoo.org>
+---
+ configure.ac     |    2 ++
+ src/Makefile.am  |    8 +++++++-
+ util/Makefile.am |   15 ++++++++++-----
+ 3 files changed, 19 insertions(+), 6 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 6a66d45..73bfbc0 100755
+--- a/configure.ac
++++ b/configure.ac
+@@ -40,6 +40,8 @@ AC_PROG_LIBTOOL
+ AM_PROG_CC_C_O
+ XORG_DEFAULT_OPTIONS
+ 
++AM_CONDITIONAL(CROSS_COMPILING, [ test $cross_compiling = yes ])
++
+ if test x"$CC_FOR_BUILD" = x; then
+ 	if test x"$cross_compiling" = xyes; then
+ 		AC_CHECK_PROGS(CC_FOR_BUILD, gcc cc)
+diff --git a/src/Makefile.am b/src/Makefile.am
+index a43fb22..6b767a7 100644
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -92,12 +92,18 @@ BUILT_FILES = $(BUILT_SOURCE) $(BUILT_HEADER)
+ 
+ STRING_LIST = $(top_srcdir)/util/string.list
+ 
++if CROSS_COMPILING
++MAKESTRS=$(top_builddir)/util/xmakestrs
++else
++MAKESTRS=$(top_builddir)/util/makestrs
++endif
++
+ all-local: $(BUILT_FILES)
+ 
+ $(BUILT_HEADER): $(BUILT_SOURCE)
+ 
+ $(BUILT_SOURCE):
+-	$(top_builddir)/util/makestrs -i $(top_srcdir) $(STRINGSABIOPTIONS) < $(STRING_LIST) > StringDefs.c
++	$(MAKESTRS) -i $(top_srcdir) $(STRINGSABIOPTIONS) < $(STRING_LIST) > StringDefs.c
+ 	mkdir -p $(top_builddir)/src
+ 	mkdir -p $(top_builddir)/include/X11
+ 	cp StringDefs.h $(top_builddir)/include/X11
+diff --git a/util/Makefile.am b/util/Makefile.am
+index d51365e..6853d89 100644
+--- a/util/Makefile.am
++++ b/util/Makefile.am
+@@ -1,13 +1,10 @@
+ if INSTALL_MAKESTRS
+ bin_PROGRAMS = makestrs
++noinst_PROGRAMS = $(MAKESTRS_PROG)
+ else
+-noinst_PROGRAMS = makestrs
++noinst_PROGRAMS = makestrs $(MAKESTRS_PROG)
+ endif
+ 
+-CC = @CC_FOR_BUILD@
+-CFLAGS = @CFLAGS_FOR_BUILD@
+-LDFLAGS = @LDFLAGS_FOR_BUILD@
+-
+ EXTRA_DIST = \
+ 	Shell.ht \
+ 	StrDefs.ct \
+@@ -45,3 +42,11 @@ SUFFIXES = .$(APP_MAN_SUFFIX) .man
+ 
+ .man.$(APP_MAN_SUFFIX):
+ 	$(AM_V_GEN)$(SED) $(MAN_SUBSTS) < $< > $@
++
++if CROSS_COMPILING
++MAKESTRS_PROG=xmakestrs$(EXEEXT)
++
++xmakestrs$(EXEEXT): makestrs.c
++	$(AM_V_GEN)$(CC_FOR_BUILD) $(X11_CFLAGS) $(CPPFLAGS_FOR_BUILD) \
++	$(CFLAGS_FOR_BUILD) $(LDFLAGS_FOR_BUILD) -o $@ makestrs.c
++endif
+-- 
+1.6.5.2
+

+ 1 - 2
package/x11r7/xlib_libXt/xlib_libXt.mk

@@ -10,8 +10,7 @@ XLIB_LIBXT_SITE = http://xorg.freedesktop.org/releases/individual/lib
 XLIB_LIBXT_AUTORECONF = YES
 XLIB_LIBXT_LIBTOOL_PATCH = NO
 XLIB_LIBXT_INSTALL_STAGING = YES
-XLIB_LIBXT_DEPENDENCIES = xlib_libSM xlib_libX11 xproto_kbproto xproto_xproto xcb-proto libxcb
-XLIB_LIBXT_CONF_ENV = CC_FOR_BUILD="/usr/bin/gcc -I$(STAGING_DIR)/usr/include"
+XLIB_LIBXT_DEPENDENCIES = xlib_libSM xlib_libX11 xproto_kbproto xproto_xproto xcb-proto libxcb host-xproto_xproto
 XLIB_LIBXT_CONF_OPT = --disable-malloc0returnsnull --enable-shared --disable-static --disable-install-makestrs
 
 $(eval $(call AUTOTARGETS,package/x11r7,xlib_libXt))

+ 1 - 0
package/xvkbd/Config.in

@@ -2,6 +2,7 @@ config BR2_PACKAGE_XVKBD
 	bool "xvkbd"
 	depends on BR2_PACKAGE_XORG7
 	select BR2_PACKAGE_XLIB_LIBXAW
+	select BR2_PACKAGE_XLIB_LIBXTST
 	help
 	  on-screen keyboard for X
 

+ 2 - 2
package/xvkbd/xvkbd.mk

@@ -10,12 +10,12 @@ XVKBD_AUTORECONF = NO
 XVKBD_INSTALL_STAGING = NO
 XVKBD_INSTALL_TARGET = YES
 
-XVKBD_MAKE_OPT = CC=$(TARGET_CC) CXX=$(TARGET_CXX) LD=$(TARGET_CC) \
+XVKBD_MAKE_OPT = CC="$(TARGET_CC)" CXX="$(TARGET_CXX)" LD="$(TARGET_CC)" \
 				CFLAGS="-O2 -I$(STAGING_DIR)/usr/include" USRLIBDIR="$(STAGING_DIR)/usr/lib"
 
 XVKBD_INSTALL_TARGET_OPT = DESTDIR=$(TARGET_DIR) install
 
-XVKBD_DEPENDENCIES = xserver_xorg-server xlib_libXaw
+XVKBD_DEPENDENCIES = xserver_xorg-server xlib_libXaw xlib_libXtst
 
 $(eval $(call AUTOTARGETS,package,xvkbd))
 

+ 0 - 2
toolchain/Makefile.in

@@ -15,8 +15,6 @@ BR2_SYSROOT_TARGET_DESTDIR=DESTDIR=$(TARGET_DIR)/
 BR2_CONFIGURE_DEVEL_SYSROOT=--with-sysroot=$(TOOLCHAIN_DIR)/uClibc_dev/
 BR2_CONFIGURE_STAGING_SYSROOT=--with-sysroot=$(STAGING_DIR)
 BR2_CONFIGURE_BUILD_TOOLS=--with-build-time-tools=$(STAGING_DIR)/usr/$(REAL_GNU_TARGET_NAME)/bin
-BR2_SYSROOT=--sysroot=$(STAGING_DIR)/
-BR2_ISYSROOT=-isysroot $(STAGING_DIR)
 
 # gcc has a bunch of needed stuff....
 include toolchain/gcc/Makefile.in

+ 9 - 7
toolchain/external-toolchain/ext-tool.mk

@@ -262,7 +262,8 @@ check_arm_abi = \
 # Check that the external toolchain supports C++
 #
 check_cplusplus = \
-	if ! test -x $(TARGET_CXX) ; then \
+	$(TARGET_CXX) -v > /dev/null 2>&1 ; \
+	if test $$? -ne 0 ; then \
 		echo "BR2_INSTALL_LIBSTDCPP is selected but C++ support not available in external toolchain" ; \
 		exit 1 ; \
 	fi ; \
@@ -271,8 +272,9 @@ check_cplusplus = \
 # Check that the cross-compiler given in the configuration exists
 #
 check_cross_compiler_exists = \
-	if ! test -x $(TARGET_CC) ; then \
-		echo "Cannot find cross-compiler $(TARGET_CC)" ; \
+	$(TARGET_CC) -v > /dev/null 2>&1 ; \
+	if test $$? -ne 0 ; then \
+		echo "Cannot execute cross-compiler '$(TARGET_CC)'" ; \
 		exit 1 ; \
 	fi ; \
 
@@ -301,9 +303,10 @@ endif # ! no threads
 # could select a multilib variant as we want the "main" sysroot, which
 # contains all variants of the C library in the case of multilib
 # toolchains.
-SYSROOT_DIR=$(shell $(TARGET_CC) -print-sysroot 2>/dev/null)
+TARGET_CC_NO_SYSROOT=$(filter-out --sysroot=%,$(TARGET_CC))
+SYSROOT_DIR=$(shell $(TARGET_CC_NO_SYSROOT) -print-sysroot 2>/dev/null)
 ifeq ($(SYSROOT_DIR),)
-SYSROOT_DIR=$(shell readlink -f $$(LANG=C $(TARGET_CC) -print-file-name=libc.a |sed -r -e 's:usr/lib/libc\.a::;'))
+SYSROOT_DIR=$(shell readlink -f $$(LANG=C $(TARGET_CC_NO_SYSROOT) -print-file-name=libc.a |sed -r -e 's:usr/lib/libc\.a::;'))
 endif
 
 # Now, find if the toolchain specifies a sub-directory for the
@@ -315,8 +318,7 @@ endif
 # subdirectory, in the main SYSROOT_DIR, that corresponds to the
 # selected architecture variant. ARCH_SYSROOT_DIR will contain the
 # full path to this location.
-TARGET_CFLAGS_NO_SYSROOT=$(filter-out --sysroot=%,$(TARGET_CFLAGS))
-ARCH_SUBDIR=$(shell $(TARGET_CC) $(TARGET_CFLAGS_NO_SYSROOT) -print-multi-directory)
+ARCH_SUBDIR=$(shell $(TARGET_CC_NO_SYSROOT) $(TARGET_CFLAGS) -print-multi-directory)
 ARCH_SYSROOT_DIR=$(SYSROOT_DIR)/$(ARCH_SUBDIR)
 
 $(STAMP_DIR)/ext-toolchain-installed:

+ 2 - 2
toolchain/gdb/gdb.mk

@@ -95,7 +95,7 @@ endif
 $(GDB_TARGET_DIR)/gdb/gdb: $(GDB_TARGET_DIR)/.configured
 	# force ELF support since it fails due to BFD linking problems
 	gdb_cv_var_elf=yes \
-	$(MAKE) CC=$(TARGET_CC) MT_CFLAGS="$(TARGET_CFLAGS)" \
+	$(MAKE) CC="$(TARGET_CC)" MT_CFLAGS="$(TARGET_CFLAGS)" \
 		-C $(GDB_TARGET_DIR)
 	$(STRIPCMD) $(GDB_TARGET_DIR)/gdb/gdb
 
@@ -150,7 +150,7 @@ $(GDB_SERVER_DIR)/.configured: $(GDB_DIR)/.unpacked
 	touch $@
 
 $(GDB_SERVER_DIR)/gdbserver: $(GDB_SERVER_DIR)/.configured
-	$(MAKE) CC=$(TARGET_CC) MT_CFLAGS="$(TARGET_CFLAGS)" \
+	$(MAKE) CC="$(TARGET_CC)" MT_CFLAGS="$(TARGET_CFLAGS)" \
 		-C $(GDB_SERVER_DIR)
 	$(STRIPCMD) $(GDB_SERVER_DIR)/gdbserver
 

+ 1 - 1
toolchain/uClibc/uClibc-0.9.30.config

@@ -87,7 +87,7 @@ UCLIBC_HAS___PROGNAME=y
 UCLIBC_HAS_PTY=y
 ASSUME_DEVPTS=y
 UNIX98PTY_ONLY=y
-# UCLIBC_HAS_GETPT is not set
+UCLIBC_HAS_GETPT=y
 UCLIBC_HAS_TM_EXTENSIONS=y
 UCLIBC_HAS_TZ_CACHING=y
 UCLIBC_HAS_TZ_FILE=y

+ 1 - 1
toolchain/uClibc/uClibc-0.9.31.config

@@ -94,7 +94,7 @@ UCLIBC_HAS_SHADOW=y
 UCLIBC_HAS_PTY=y
 ASSUME_DEVPTS=y
 UNIX98PTY_ONLY=y
-# UCLIBC_HAS_GETPT is not set
+UCLIBC_HAS_GETPT=y
 UCLIBC_HAS_LIBUTIL=y
 UCLIBC_HAS_TM_EXTENSIONS=y
 UCLIBC_HAS_TZ_CACHING=y