[PATCH bpf-next] kbuild: Do not clean resolve_btfids if the output does not exist

Subsystems: kernel build + files below scripts/ (unless maintained elsewhere), the rest

STALE1998d LANDED: 5 (5M)

1 review trailer (1 from subsystem maintainers); landed in mainline as 0e1aa629f1ce on 2021-02-11.

2 messages, 2 authors, 2021-02-11 · open the first message on its own page

[PATCH bpf-next] kbuild: Do not clean resolve_btfids if the output does not exist

From: Jiri Olsa <jolsa@kernel.org>
Date: 2021-02-11 12:45:24

Nathan reported issue with cleaning empty build directory:

  $ make -s O=build distclean
  ../../scripts/Makefile.include:4: *** \
  O=/ho...build/tools/bpf/resolve_btfids does not exist.  Stop.

The problem that tools scripts require existing output
directory, otherwise it fails.

Adding check around the resolve_btfids clean target to
ensure the output directory is in place.

Tested-by: Nathan Chancellor <nathan@kernel.org>
Signed-off-by: Jiri Olsa <jolsa@kernel.org>
---
 Makefile | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
index 159d9592b587..b6fa039c18b8 100644
--- a/Makefile
+++ b/Makefile
@@ -1088,8 +1088,14 @@ endif
 
 PHONY += resolve_btfids_clean
 
+resolve_btfids_O = $(abspath $(objtree))/tools/bpf/resolve_btfids
+
+# tools/bpf/resolve_btfids directory might not exist
+# in output directory, skip its clean in that case
 resolve_btfids_clean:
-	$(Q)$(MAKE) -sC $(srctree)/tools/bpf/resolve_btfids O=$(abspath $(objtree))/tools/bpf/resolve_btfids clean
+ifneq ($(wildcard $(resolve_btfids_O)),)
+	$(Q)$(MAKE) -sC $(srctree)/tools/bpf/resolve_btfids O=$(resolve_btfids_O) clean
+endif
 
 ifdef CONFIG_BPF
 ifdef CONFIG_DEBUG_INFO_BTF
-- 
2.29.2

Re: [PATCH bpf-next] kbuild: Do not clean resolve_btfids if the output does not exist

From: patchwork-bot+netdevbpf@kernel.org
Date: 2021-02-11 19:31:06

Hello:

This patch was applied to bpf/bpf-next.git (refs/heads/master):

On Thu, 11 Feb 2021 13:40:04 +0100 you wrote:
Nathan reported issue with cleaning empty build directory:

  $ make -s O=build distclean
  ../../scripts/Makefile.include:4: *** \
  O=/ho...build/tools/bpf/resolve_btfids does not exist.  Stop.

The problem that tools scripts require existing output
directory, otherwise it fails.

[...]
Here is the summary with links:
  - [bpf-next] kbuild: Do not clean resolve_btfids if the output does not exist
    https://git.kernel.org/bpf/bpf-next/c/0e1aa629f1ce

You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help