qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH] build: remove use of MAKELEVEL optimization in


From: Greg Kurz
Subject: Re: [Qemu-devel] [PATCH] build: remove use of MAKELEVEL optimization in submodule handling
Date: Mon, 6 Nov 2017 13:26:57 +0100

On Mon,  6 Nov 2017 11:41:34 +0000
"Daniel P. Berrange" <address@hidden> wrote:

> The Makefile attempts to optimize the handling of submodules by using 
> MAKELEVEL
> to only check the submodule status when running from the top level make
> invokation. This causes problems for people who are using a makefile of their
> own to in turn invoke QEMU's makefile, as MAKELEVEL is already set to 1 (or
> more) when QEMU's makefile runs.
> 
> This optimization should not really be needed, since the git-submodule.sh
> script is already used to detect if a submodule update is required. This by
> removing the MAKELEVEL check, we at most add an extra 'git-submodule.sh 
> status'
> call to each make level, the overhead of which is lost in noise of building
> QEMU.
> 
> Signed-off-by: Daniel P. Berrange <address@hidden>
> ---
> 

Heh, I had come up with a similar patch based on master and nearly the
same commit message. :)

Reviewed-by: Greg Kurz <address@hidden>

> NB this is on top of 
> https://lists.gnu.org/archive/html/qemu-devel/2017-11/msg00449.html
> 

I could check that this patch applied on top of the series mentioned above
fixes the issue for me.

Tested-by: Greg Kurz <address@hidden>

>  Makefile | 12 +++++-------
>  1 file changed, 5 insertions(+), 7 deletions(-)
> 
> diff --git a/Makefile b/Makefile
> index a92d7b8e14..0496c5057a 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -18,12 +18,11 @@ git-submodule-update:
>  
>  .PHONY: git-submodule-update
>  
> -ifeq (0,$(MAKELEVEL))
> -  git_module_status := $(shell \
> -    cd '$(SRC_PATH)' && \
> -    GIT="$(GIT)" ./scripts/git-submodule.sh status $(GIT_SUBMODULES); \
> -    echo $$?; \
> -  )
> +git_module_status := $(shell \
> +  cd '$(SRC_PATH)' && \
> +  GIT="$(GIT)" ./scripts/git-submodule.sh status $(GIT_SUBMODULES); \
> +  echo $$?; \
> +)
>  
>  ifeq (1,$(git_module_status))
>  ifeq (no,$(GIT_UPDATE))
> @@ -42,7 +41,6 @@ git-submodule-update:
>            "GIT","$(GIT_SUBMODULES)")
>  endif
>  endif
> -endif
>  
>  .git-submodule-status: git-submodule-update config-host.mak
>  




reply via email to

[Prev in Thread] Current Thread [Next in Thread]