Hi Jan,

> On 26 Jun 2020, at 16:02, Jan Beulich <jbeul...@suse.com> wrote:
> 
> While I've been running into an issue here only because of an additional
> local change I'm carrying, to be able to override just the compiler in
> $(XEN_ROOT)/.config (rather than the whole tool chain), in
> config/StdGNU.mk:
> 
> ifeq ($(filter-out default undefined,$(origin CC)),)
> 
> I'd like to propose to nevertheless correct the underlying issue:
> Exporting an unset variable changes its origin from "undefined" to
> "file". This comes into effect because of our adding of -rR to
> MAKEFLAGS, which make 3.82 wrongly applies also upon re-invoking itself
> after having updated auto.conf{,.cmd}.
> 
> Move the export statement past $(XEN_ROOT)/config/$(XEN_OS).mk inclusion
> such that the variables already have their designated values at that
> point, while retaining their initial origin up to the point they get
> defined.

If I understand correctly you actually need this to be after 
include $(XEN_ROOT)/Config.mk

Which actually includes the .config and the StdGNU.mk
Maybe you could say this as $(XEN_ROOT)/config/$(XEN_OS).mk is not actually 
included directly in the Makefile itself ?

I tested the patch and it works on arm and x86 on my side.

> 
> Signed-off-by: Jan Beulich <jbeul...@suse.com>
Tested-by: Bertrand Marquis <bertrand.marq...@arm.com>

> 
> --- a/xen/Makefile
> +++ b/xen/Makefile
> @@ -17,8 +17,6 @@ export XEN_BUILD_HOST       ?= $(shell hostnam
> PYTHON_INTERPRETER    := $(word 1,$(shell which python3 python python2 
> 2>/dev/null) python)
> export PYTHON         ?= $(PYTHON_INTERPRETER)
> 
> -export CC CXX LD
> -
> export BASEDIR := $(CURDIR)
> export XEN_ROOT := $(BASEDIR)/..
> 
> @@ -42,6 +40,8 @@ export TARGET_ARCH     := $(shell echo $
> # Allow someone to change their config file
> export KCONFIG_CONFIG ?= .config
> 
> +export CC CXX LD
> +
> .PHONY: default
> default: build
> 
> 


Reply via email to