tools/bpf/bpftool/Makefile | 5 +++++ 1 file changed, 5 insertions(+)
When the perf build executes 'make -C ../bpf/bpftool bootstrap', bpftool's
Makefile unconditionally evaluated feature checks for llvm, libcap, libbfd,
and disassembler libraries because the bootstrap target was not exempted.
Since the bootstrap bpftool strictly compiles minimal AST parsing and C
code generation logic without linking LLVM or disassembler libraries, these
feature check sub-makes are completely redundant.
Exempt the bootstrap target from non-essential feature tests to eliminate
unneeded sub-make fork overhead during Kbuild startup.
Tested-by: James Clark <james.clark@linaro.org>
Assisted-by: Gemini:gemini-3.1-pro-preview
Signed-off-by: Ian Rogers <irogers@google.com>
---
This patch originally appeared in the now merged perf patch series:
https://lore.kernel.org/linux-perf-users/20260514163409.927816-1-irogers@google.com/
---
tools/bpf/bpftool/Makefile | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/tools/bpf/bpftool/Makefile b/tools/bpf/bpftool/Makefile
index 0febf60e1b64..8f50bc163bb2 100644
--- a/tools/bpf/bpftool/Makefile
+++ b/tools/bpf/bpftool/Makefile
@@ -106,6 +106,10 @@ ifneq ($(SKIP_CRYPTO),1)
CRYPTO_LIBS := -lcrypto
endif
+ifeq ($(MAKECMDGOALS),bootstrap)
+FEATURE_TESTS := libelf-zstd
+FEATURE_DISPLAY :=
+else
FEATURE_TESTS := clang-bpf-co-re
FEATURE_TESTS += llvm
FEATURE_TESTS += libcap
@@ -122,6 +126,7 @@ FEATURE_DISPLAY += libcap
FEATURE_DISPLAY += libbfd
FEATURE_DISPLAY += libbfd-liberty
FEATURE_DISPLAY += libbfd-liberty-z
+endif
check_feat := 1
NON_CHECK_FEAT_TARGETS := clean uninstall doc doc-clean doc-install doc-uninstall
--
2.54.0.823.g6e5bcc1fc9-goog
2026-05-30 18:07 UTC-0700 ~ Ian Rogers <irogers@google.com> > When the perf build executes 'make -C ../bpf/bpftool bootstrap', bpftool's > Makefile unconditionally evaluated feature checks for llvm, libcap, libbfd, > and disassembler libraries because the bootstrap target was not exempted. > > Since the bootstrap bpftool strictly compiles minimal AST parsing and C > code generation logic without linking LLVM or disassembler libraries, these > feature check sub-makes are completely redundant. > > Exempt the bootstrap target from non-essential feature tests to eliminate > unneeded sub-make fork overhead during Kbuild startup. > > Tested-by: James Clark <james.clark@linaro.org> > Assisted-by: Gemini:gemini-3.1-pro-preview > Signed-off-by: Ian Rogers <irogers@google.com> Makes sense, thank you Ian! Acked-by: Quentin Monnet <qmo@kernel.org>
© 2016 - 2026 Red Hat, Inc.