HomeFreeBSD

autoconf: Pretend `CONFIG_MODULES` is always on

Description

autoconf: Pretend CONFIG_MODULES is always on

  • Unconditionally inject CONFIG_MODULES make variable and #define CONFIG_MODULES to Kbuild in ZFS_LINUX_COMPILE autoconf function to emulate loadable kernel modules support. This allows OpenZFS to perform Linux checks despite CONFIG_MODULES=n in the actual Linux config.
  • Add ZFS_AC_KERNEL_CONFIG_MODULES check which encompasses the logic from ZFS_AC_KERNEL_TEST_MODULE with additional diagnostic messages to the user
  • Removed ZFS_AC_KERNEL_TEST_MODULE as it merely duplicates every check in ZFS_AC_KERNEL_CONFIG_DEFINED
  • Moved ZFS_AC_MODULE_SYMVERS after ZFS_AC_KERNEL_CONFIG_DEFINED so the user has a chance to see the proper diagnostic from the steps before.

A workaround for Linux's

commit 3e3005df73b535cb849cf4ec8075d6aa3c460f68
Author: Masahiro Yamada <masahiroy@kernel.org>
Date:   Wed Mar 31 22:38:03 2021 +0900

kbuild: unify modules(_install) for in-tree and external modules

If you attempt to build or install modules ('make modules(_install)'
with CONFIG_MODULES disabled, you will get a clear error message, but
nothing for external module builds.

Factor out the modules and modules_install rules into the common part,
so you will get the same error message when you try to build external
modules with CONFIG_MODULES=n.

Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>

Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: szubersk <szuberskidamian@gmail.com>
Closes #10832
Closes #13361

Details

Provenance
Damian Szuberski <szuberskidamian@gmail.com>Authored on Apr 26 2022, 5:47 PM
GitHub <noreply@github.com>Committed on Apr 26 2022, 5:47 PM
Parents
rG600a02b8844e: Improve log spacemap load time
Branches
Unknown
Tags
Unknown

Event Timeline

GitHub <noreply@github.com> committed rGa0dfd98a25b5: autoconf: Pretend `CONFIG_MODULES` is always on (authored by Damian Szuberski <szuberskidamian@gmail.com>).Apr 26 2022, 5:47 PM