Re: [PATCH] tools build: Fix feature detect clean for out of source builds

From: Jiri Olsa
Date: Tue Aug 31 2021 - 14:46:25 EST


On Mon, Aug 16, 2021 at 02:07:05PM +0100, James Clark wrote:
> Currently the clean target when using O= isn't cleaning the feature
> detect output. This is because O= and OUTPUT= are set to canonical
> paths. For example in tools/perf/Makefile:
>
> FULL_O := $(shell cd $(PWD); readlink -f $(O) || echo $(O))
>
> This means that OUTPUT ends in a / and most usages prepend it to a file
> without adding an extra /. This line that was changed adds an extra /
> before the 'feature' folder but not to the end, resulting in a clean
> command like this:
>
> rm -f /tmp/build//featuretest-all.bin ...
>
> After the change the clean command looks like this:
>
> rm -f /tmp/build/feature/test-all.bin ...
>
> Signed-off-by: James Clark <james.clark@xxxxxxx>

nice catch!

Acked-by: Jiri Olsa <jolsa@xxxxxxxxxx>

thanks,
jirka

> ---
> tools/build/Makefile | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/tools/build/Makefile b/tools/build/Makefile
> index 5ed41b96fcde..6f11e6fc9ffe 100644
> --- a/tools/build/Makefile
> +++ b/tools/build/Makefile
> @@ -32,7 +32,7 @@ all: $(OUTPUT)fixdep
>
> # Make sure there's anything to clean,
> # feature contains check for existing OUTPUT
> -TMP_O := $(if $(OUTPUT),$(OUTPUT)/feature,./)
> +TMP_O := $(if $(OUTPUT),$(OUTPUT)feature/,./)
>
> clean:
> $(call QUIET_CLEAN, fixdep)
> --
> 2.28.0
>