The DRM subsystem contains additional build-time checks, primarily aimed at DRM developers and CI systems. The checks may be overzealous. They may slow down or fail the build altogether. They may create excessive dependency files in the build tree. They should not be enabled for regular builds, and certainly not forced on unsuspecting developers running an allyesconfig or allmodconfig build.
Add config DRM_DISABLE_EXTRA_BUILD_CHECKS, enabled by default as well as by allyesconfig/allmodconfig, hiding the extra checks from anyone but people who intentionally opt-in for the checks. For example, to enable header tests: $ scripts/config --disable CONFIG_DRM_DISABLE_EXTRA_BUILD_CHECKS --enable CONFIG_DRM_HEADER_TEST $ make olddefconfig Reported-by: Linus Torvalds <torva...@linux-foundation.org> Closes: https://lore.kernel.org/r/CAHk-=wjcdfrDTjzm6J6T-3fxtVyBG7a_0BXc2=mgoum6kpf...@mail.gmail.com Fixes: 62ae45687e43 ("drm: ensure drm headers are self-contained and pass kernel-doc") Cc: Masahiro Yamada <masahi...@kernel.org> Cc: David Airlie <airl...@gmail.com> Cc: Daniel Vetter <dan...@ffwll.ch> Signed-off-by: Jani Nikula <jani.nik...@intel.com> --- Cc: linux-kbu...@vger.kernel.org Cc: dri-de...@lists.freedesktop.org Cc: intel...@lists.freedesktop.org Cc: intel-gfx@lists.freedesktop.org --- drivers/gpu/drm/Kconfig | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/Kconfig b/drivers/gpu/drm/Kconfig index 2cba2b6ebe1c..5a3fce9ef998 100644 --- a/drivers/gpu/drm/Kconfig +++ b/drivers/gpu/drm/Kconfig @@ -489,9 +489,26 @@ config DRM_PRIVACY_SCREEN bool default n +# Reversed option to disable on allyesconfig/allmodconfig builds +config DRM_DISABLE_EXTRA_BUILD_CHECKS + bool "Disable DRM subsystem extra build-time checks" + default y + help + The DRM subsystem contains additional build-time checks, primarily + aimed at DRM developers and CI systems. The checks may be + overzealous. They may slow down or fail the build altogether. They may + create excessive dependency files in the tree. They should not be + enabled for regular builds, and thus they are disabled by default. + +# Proxy config to allow simple "depends on DRM_EXTRA_BUILD_CHECKS" +config DRM_EXTRA_BUILD_CHECKS + bool + depends on DRM && EXPERT && DRM_DISABLE_EXTRA_BUILD_CHECKS=n + default !DRM_DISABLE_EXTRA_BUILD_CHECKS + config DRM_WERROR bool "Compile the drm subsystem with warnings as errors" - depends on DRM && EXPERT + depends on DRM_EXTRA_BUILD_CHECKS depends on !WERROR default n help @@ -505,7 +522,7 @@ config DRM_WERROR config DRM_HEADER_TEST bool "Ensure DRM headers are self-contained and pass kernel-doc" - depends on DRM && EXPERT && BROKEN + depends on DRM_EXTRA_BUILD_CHECKS default n help Ensure the DRM subsystem headers both under drivers/gpu/drm and -- 2.39.5