]> www.infradead.org Git - users/jedix/linux-maple.git/commit
btf: move pahole check in scripts/link-vmlinux.sh to lib/Kconfig.debug
authorMasahiro Yamada <masahiroy@kernel.org>
Fri, 13 Sep 2024 17:37:53 +0000 (02:37 +0900)
committerAlexei Starovoitov <ast@kernel.org>
Sat, 14 Sep 2024 03:03:29 +0000 (20:03 -0700)
commit42450f7a9086cf38e97c3aeeaabd229af7abbbad
tree9105296ff0cbc99f62a39d4a9646c3c5174cb07e
parentc980dc9c67a94ab716ffc06767cb435480bda09d
btf: move pahole check in scripts/link-vmlinux.sh to lib/Kconfig.debug

When DEBUG_INFO_DWARF5 is selected, pahole 1.21+ is required to enable
DEBUG_INFO_BTF.

When DEBUG_INFO_DWARF4 or DEBUG_INFO_DWARF_TOOLCHAIN_DEFAULT is selected,
DEBUG_INFO_BTF can be enabled without pahole installed, but a build error
will occur in scripts/link-vmlinux.sh:

    LD      .tmp_vmlinux1
  BTF: .tmp_vmlinux1: pahole (pahole) is not available
  Failed to generate BTF for vmlinux
  Try to disable CONFIG_DEBUG_INFO_BTF

We did not guard DEBUG_INFO_BTF by PAHOLE_VERSION when previously
discussed [1].

However, commit 613fe1692377 ("kbuild: Add CONFIG_PAHOLE_VERSION")
added CONFIG_PAHOLE_VERSION after all. Now several CONFIG options, as
well as the combination of DEBUG_INFO_BTF and DEBUG_INFO_DWARF5, are
guarded by PAHOLE_VERSION.

The remaining compile-time check in scripts/link-vmlinux.sh now appears
to be an awkward inconsistency.

This commit adopts Nathan's original work.

[1]: https://lore.kernel.org/lkml/20210111180609.713998-1-natechancellor@gmail.com/

Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Reviewed-by: Alan Maguire <alan.maguire@oracle.com>
Acked-by: Andrii Nakryiko <andrii@kernel.org>
Reviewed-by: Nathan Chancellor <nathan@kernel.org>
Link: https://lore.kernel.org/r/20240913173759.1316390-2-masahiroy@kernel.org
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
lib/Kconfig.debug
scripts/link-vmlinux.sh