[Buildroot] [PATCH] ARC: update tools to arc-2015.06 release

Guido Martínez guido at vanguardiasur.com.ar
Sat Jul 18 03:17:58 UTC 2015


Hi Yann, all,

On Sat, Jul 18, 2015 at 12:54:15AM +0200, Yann E. MORIN wrote:
> Romain, All,
> 
> On 2015-07-18 00:23 +0200, Yann E. MORIN spake thusly:
> > On 2015-07-17 13:45 +0200, Romain Naour spake thusly:
> > [--SNIP--]
> > > Your patch looks good, but I have a build failure with uclibc:
> > > 
> > > make O=test/arc/ toolchain 2>&1 | tee build-arc-toolchain.log
> [--SNIP--]
> > OK, I was able to reproduce the error. [...]
> 
> Here's a patch that does fix the issue.
> 
> Tested on-top of master, with:
>   - in-tree build
>   - out-of-tree build without makefile wrapper (Romain's use-case)
>   - out-of-tree build with makefile wrapper (my use-case)
> 
> They all worked at least so far as to build uclibc (make uclibc);
> nothing more was attempted).
> 
> The change is not unlike what we already had to test where O was coming
> from, but we just reverse the logic to keep only what we're interested
> in, and we forcibly unexport O.
> 
> I'm not really happy with the patch to start with (hence I'm not
> officially pushing it):
> 
>     diff --git a/Makefile b/Makefile
>     index 531ac5d..5abca65 100644
>     --- a/Makefile
>     +++ b/Makefile
>     @@ -29,11 +29,16 @@ UMASK=0022
>      ifneq ($(shell umask),$(UMASK))
>      .PHONY: all $(MAKECMDGOALS)
>      
>     +ifeq ($(origin O),command line)
>     +EXTRAMAKEARGS = O=$(O)
>     +endif
>     +unexport O
>     +
>      all:
>     -	@umask $(UMASK) && $(MAKE  ) --no-print-directory
>     +	@umask $(UMASK) && $(MAKE) $(EXTRAMAKEARGS) -- no-print-directory
>      
>      $(MAKECMDGOALS):
>     -	@umask $(UMASK) && $(MAKE) --n o-print-directory $@
>     +	@umask $(UMASK) && $(MAKE) $(EXTRAMAKEARGS) --no   -print-directory $@
>      
>      else # umask

This works OK. But I think something like:

	diff --git a/Makefile b/Makefile
	index afdf554..df52c85 100644
	--- a/Makefile
	+++ b/Makefile
	@@ -329,6 +329,7 @@ unexport CONFIG_SITE
	 unexport QMAKESPEC
	 unexport TERMINFO
	 unexport MACHINE
	+unexport O

	 GNU_HOST_NAME := $(shell support/gnuconfig/config.guess)

does too. Maybe I'm missing something, but I don't think we would ever
want to export $(O) to any of the package Makefiles, the same way we
don't export $(CC).

Note that $(origin O) will still be "command line" in the sub-make after
setting the umask, since "O=..." will be set in $(MAKEFLAGS), thus there
shouldn't be a difference in the run.

I tested those 3 cases you mentioned and they work OK, but I'll run full
builds in a minute.

-- 
Guido Martínez, VanguardiaSur
www.vanguardiasur.com.ar



More information about the buildroot mailing list