kbuild: fix 'make modules' error when CONFIG_DEBUG_INFO_BTF_MODULES=y

Message ID 20230110054800.119222-1-masahiroy@kernel.org
State New
Headers
Series kbuild: fix 'make modules' error when CONFIG_DEBUG_INFO_BTF_MODULES=y |

Commit Message

Masahiro Yamada Jan. 10, 2023, 5:48 a.m. UTC
  When CONFIG_DEBUG_INFO_BTF_MODULES=y, running 'make modules'
in the clean kernel tree will get the following error.

  $ grep CONFIG_DEBUG_INFO_BTF_MODULES .config
  CONFIG_DEBUG_INFO_BTF_MODULES=y
  $ make -s clean
  $ make modules
    [snip]
    AR      vmlinux.a
  ar: ./built-in.a: No such file or directory
  make: *** [Makefile:1241: vmlinux.a] Error 1

'modules' depends on 'vmlinux', but builtin objects are not built.

Define KBUILD_BUILTIN.

Fixes: f73edc8951b2 ("kbuild: unify two modpost invocations")
Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
---

 Makefile | 1 +
 1 file changed, 1 insertion(+)
  

Patch

diff --git a/Makefile b/Makefile
index 760640162db6..2ee3ab599477 100644
--- a/Makefile
+++ b/Makefile
@@ -1525,6 +1525,7 @@  endif
 # *.ko are usually independent of vmlinux, but CONFIG_DEBUG_INFOBTF_MODULES
 # is an exception.
 ifdef CONFIG_DEBUG_INFO_BTF_MODULES
+KBUILD_BUILTIN := 1
 modules: vmlinux
 endif