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

From: James Clark
Date: Mon Aug 16 2021 - 09:19:55 EST


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>
---
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