From: Geert Uytterhoeven Date: Tue, 8 Dec 2020 15:28:56 +0000 (+0100) Subject: Documentation/kbuild: Document COMPILE_TEST dependencies X-Git-Tag: howlett/maple_spf/20210104~225^2~1 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=c613583b6a87434123fc6714acbec6522859185e;p=users%2Fjedix%2Flinux-maple.git Documentation/kbuild: Document COMPILE_TEST dependencies Document best practises for using COMPILE_TEST dependencies. Signed-off-by: Geert Uytterhoeven Acked-by: Arnd Bergmann Signed-off-by: Masahiro Yamada --- diff --git a/Documentation/kbuild/kconfig-language.rst b/Documentation/kbuild/kconfig-language.rst index 1cf1aebdd6cdf..1b4875f04e133 100644 --- a/Documentation/kbuild/kconfig-language.rst +++ b/Documentation/kbuild/kconfig-language.rst @@ -553,6 +553,17 @@ with "depends on m". E.g.:: limits FOO to module (=m) or disabled (=n). +Compile-testing +~~~~~~~~~~~~~~~ +If a config symbol has a dependency, but the code controlled by the config +symbol can still be compiled if the dependency is not met, it is encouraged to +increase build coverage by adding an "|| COMPILE_TEST" clause to the +dependency. This is especially useful for drivers for more exotic hardware, as +it allows continuous-integration systems to compile-test the code on a more +common system, and detect bugs that way. +Note that compile-tested code should avoid crashing when run on a system where +the dependency is not met. + Kconfig recursive dependency limitations ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~