* [PATCH 0/2] Documentation/kbuild: Document COMPILE_TEST and platform dependencies
@ 2020-12-08 15:28 ` Geert Uytterhoeven
0 siblings, 0 replies; 12+ messages in thread
From: Geert Uytterhoeven @ 2020-12-08 15:28 UTC (permalink / raw)
To: Greg Kroah-Hartman, Masahiro Yamada, Michal Marek,
Jonathan Corbet, Arnd Bergmann
Cc: linux-kbuild, linux-doc, linux-kernel, linux-arm-kernel,
Geert Uytterhoeven
Hi all,
This patch series documents best practices for COMPILE_TEST and
architecture/platform dependencies, like already in use in most
subsystems, to serve as a point of reference.
Thanks for your comments!
Geert Uytterhoeven (2):
Documentation/kbuild: Document COMPILE_TEST dependencies
Documentation/kbuild: Document platform dependency practises
Documentation/kbuild/kconfig-language.rst | 35 +++++++++++++++++++++++
1 file changed, 35 insertions(+)
--
2.25.1
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH 0/2] Documentation/kbuild: Document COMPILE_TEST and platform dependencies
@ 2020-12-08 15:28 ` Geert Uytterhoeven
0 siblings, 0 replies; 12+ messages in thread
From: Geert Uytterhoeven @ 2020-12-08 15:28 UTC (permalink / raw)
To: Greg Kroah-Hartman, Masahiro Yamada, Michal Marek,
Jonathan Corbet, Arnd Bergmann
Cc: Geert Uytterhoeven, linux-doc, linux-kernel, linux-arm-kernel,
linux-kbuild
Hi all,
This patch series documents best practices for COMPILE_TEST and
architecture/platform dependencies, like already in use in most
subsystems, to serve as a point of reference.
Thanks for your comments!
Geert Uytterhoeven (2):
Documentation/kbuild: Document COMPILE_TEST dependencies
Documentation/kbuild: Document platform dependency practises
Documentation/kbuild/kconfig-language.rst | 35 +++++++++++++++++++++++
1 file changed, 35 insertions(+)
--
2.25.1
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH 1/2] Documentation/kbuild: Document COMPILE_TEST dependencies
2020-12-08 15:28 ` Geert Uytterhoeven
@ 2020-12-08 15:28 ` Geert Uytterhoeven
-1 siblings, 0 replies; 12+ messages in thread
From: Geert Uytterhoeven @ 2020-12-08 15:28 UTC (permalink / raw)
To: Greg Kroah-Hartman, Masahiro Yamada, Michal Marek,
Jonathan Corbet, Arnd Bergmann
Cc: linux-kbuild, linux-doc, linux-kernel, linux-arm-kernel,
Geert Uytterhoeven
Document best practises for using COMPILE_TEST dependencies.
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
---
Documentation/kbuild/kconfig-language.rst | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/Documentation/kbuild/kconfig-language.rst b/Documentation/kbuild/kconfig-language.rst
index 1cf1aebdd6cdf8fa..2b746332d8aa6bce 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
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
--
2.25.1
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 1/2] Documentation/kbuild: Document COMPILE_TEST dependencies
@ 2020-12-08 15:28 ` Geert Uytterhoeven
0 siblings, 0 replies; 12+ messages in thread
From: Geert Uytterhoeven @ 2020-12-08 15:28 UTC (permalink / raw)
To: Greg Kroah-Hartman, Masahiro Yamada, Michal Marek,
Jonathan Corbet, Arnd Bergmann
Cc: Geert Uytterhoeven, linux-doc, linux-kernel, linux-arm-kernel,
linux-kbuild
Document best practises for using COMPILE_TEST dependencies.
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
---
Documentation/kbuild/kconfig-language.rst | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/Documentation/kbuild/kconfig-language.rst b/Documentation/kbuild/kconfig-language.rst
index 1cf1aebdd6cdf8fa..2b746332d8aa6bce 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
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
--
2.25.1
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 2/2] Documentation/kbuild: Document platform dependency practises
2020-12-08 15:28 ` Geert Uytterhoeven
@ 2020-12-08 15:28 ` Geert Uytterhoeven
-1 siblings, 0 replies; 12+ messages in thread
From: Geert Uytterhoeven @ 2020-12-08 15:28 UTC (permalink / raw)
To: Greg Kroah-Hartman, Masahiro Yamada, Michal Marek,
Jonathan Corbet, Arnd Bergmann
Cc: linux-kbuild, linux-doc, linux-kernel, linux-arm-kernel,
Geert Uytterhoeven
Document best practises for using architecture and platform dependencies.
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
---
Documentation/kbuild/kconfig-language.rst | 24 +++++++++++++++++++++++
1 file changed, 24 insertions(+)
diff --git a/Documentation/kbuild/kconfig-language.rst b/Documentation/kbuild/kconfig-language.rst
index 2b746332d8aa6bce..87e9bbe14a21ce83 100644
--- a/Documentation/kbuild/kconfig-language.rst
+++ b/Documentation/kbuild/kconfig-language.rst
@@ -564,6 +564,30 @@ 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.
+Architecture and platform dependencies
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Due to the presence of stubs, most drivers can now be compiled on most
+architectures. However, this does not mean it makes sense to have all drivers
+available everywhere, as the actual hardware may only exist on specific
+architectures and platforms. This is especially true for on-SoC IP cores,
+which may be limited to a specific vendor or SoC family.
+
+To prevent asking the user about drivers that cannot be used on the system(s)
+the user is compiling a kernel for, and if it makes sense, config symbols
+controlling the compilation of a driver should contain proper dependencies,
+limiting the visibility of the symbol to (a superset of) the platform(s) the
+driver can be used on. The dependency can be an architecture (e.g. ARM) or
+platform (e.g. ARCH_OMAP4) dependency. This makes life simpler not only for
+distro config owners, but also for every single developer or user who
+configures a kernel.
+
+Such a dependency can be relaxed by combining it with the compile-testing rule
+above, leading to:
+
+ config FOO
+ bool "Support for foo hardware"
+ depends on ARCH_FOO_VENDOR || COMPILE_TEST
+
Kconfig recursive dependency limitations
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
--
2.25.1
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 2/2] Documentation/kbuild: Document platform dependency practises
@ 2020-12-08 15:28 ` Geert Uytterhoeven
0 siblings, 0 replies; 12+ messages in thread
From: Geert Uytterhoeven @ 2020-12-08 15:28 UTC (permalink / raw)
To: Greg Kroah-Hartman, Masahiro Yamada, Michal Marek,
Jonathan Corbet, Arnd Bergmann
Cc: Geert Uytterhoeven, linux-doc, linux-kernel, linux-arm-kernel,
linux-kbuild
Document best practises for using architecture and platform dependencies.
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
---
Documentation/kbuild/kconfig-language.rst | 24 +++++++++++++++++++++++
1 file changed, 24 insertions(+)
diff --git a/Documentation/kbuild/kconfig-language.rst b/Documentation/kbuild/kconfig-language.rst
index 2b746332d8aa6bce..87e9bbe14a21ce83 100644
--- a/Documentation/kbuild/kconfig-language.rst
+++ b/Documentation/kbuild/kconfig-language.rst
@@ -564,6 +564,30 @@ 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.
+Architecture and platform dependencies
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Due to the presence of stubs, most drivers can now be compiled on most
+architectures. However, this does not mean it makes sense to have all drivers
+available everywhere, as the actual hardware may only exist on specific
+architectures and platforms. This is especially true for on-SoC IP cores,
+which may be limited to a specific vendor or SoC family.
+
+To prevent asking the user about drivers that cannot be used on the system(s)
+the user is compiling a kernel for, and if it makes sense, config symbols
+controlling the compilation of a driver should contain proper dependencies,
+limiting the visibility of the symbol to (a superset of) the platform(s) the
+driver can be used on. The dependency can be an architecture (e.g. ARM) or
+platform (e.g. ARCH_OMAP4) dependency. This makes life simpler not only for
+distro config owners, but also for every single developer or user who
+configures a kernel.
+
+Such a dependency can be relaxed by combining it with the compile-testing rule
+above, leading to:
+
+ config FOO
+ bool "Support for foo hardware"
+ depends on ARCH_FOO_VENDOR || COMPILE_TEST
+
Kconfig recursive dependency limitations
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
--
2.25.1
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply related [flat|nested] 12+ messages in thread
* Re: [PATCH 2/2] Documentation/kbuild: Document platform dependency practises
2020-12-08 15:28 ` Geert Uytterhoeven
@ 2020-12-08 15:43 ` Arnd Bergmann
-1 siblings, 0 replies; 12+ messages in thread
From: Arnd Bergmann @ 2020-12-08 15:43 UTC (permalink / raw)
To: Geert Uytterhoeven
Cc: Greg Kroah-Hartman, Masahiro Yamada, Michal Marek,
Jonathan Corbet, Arnd Bergmann, Linux Kbuild mailing list,
open list:DOCUMENTATION, linux-kernel, Linux ARM
On Tue, Dec 8, 2020 at 4:28 PM Geert Uytterhoeven
<geert+renesas@glider.be> wrote:
>
> Document best practises for using architecture and platform dependencies.
>
> Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
> ---
> Documentation/kbuild/kconfig-language.rst | 24 +++++++++++++++++++++++
> 1 file changed, 24 insertions(+)
>
> diff --git a/Documentation/kbuild/kconfig-language.rst b/Documentation/kbuild/kconfig-language.rst
> index 2b746332d8aa6bce..87e9bbe14a21ce83 100644
> --- a/Documentation/kbuild/kconfig-language.rst
> +++ b/Documentation/kbuild/kconfig-language.rst
> @@ -564,6 +564,30 @@ 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.
>
> +Architecture and platform dependencies
> +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> +Due to the presence of stubs, most drivers can now be compiled on most
> +architectures. However, this does not mean it makes sense to have all drivers
> +available everywhere, as the actual hardware may only exist on specific
> +architectures and platforms. This is especially true for on-SoC IP cores,
> +which may be limited to a specific vendor or SoC family.
> +
> +To prevent asking the user about drivers that cannot be used on the system(s)
> +the user is compiling a kernel for, and if it makes sense, config symbols
> +controlling the compilation of a driver should contain proper dependencies,
> +limiting the visibility of the symbol to (a superset of) the platform(s) the
> +driver can be used on. The dependency can be an architecture (e.g. ARM) or
> +platform (e.g. ARCH_OMAP4) dependency. This makes life simpler not only for
> +distro config owners, but also for every single developer or user who
> +configures a kernel.
> +
> +Such a dependency can be relaxed by combining it with the compile-testing rule
> +above, leading to:
> +
> + config FOO
> + bool "Support for foo hardware"
> + depends on ARCH_FOO_VENDOR || COMPILE_TEST
> +
> Kconfig recursive dependency limitations
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The addition seems useful, but I wonder if we should mention more
patterns here.:
- Some drivers are turned on implicitly for a platform, like
config FOO
bool "Support for foo hardware"
depends on ARCH_FOO_VENDOR || COMPILE_TEST
default ARCH_FOO_VENDOR
- some drivers can use a feature that may be a loadable module
itself, or can compile if that feature is disabled, but the driver
itself must not be built-in if the feature is in a loadable module, e.g.
config FOO
tristate "Foo device"
depends on HWSPINLOCK || (COMPILE_TEST && !HWSPINLOCK)
Arnd
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 2/2] Documentation/kbuild: Document platform dependency practises
@ 2020-12-08 15:43 ` Arnd Bergmann
0 siblings, 0 replies; 12+ messages in thread
From: Arnd Bergmann @ 2020-12-08 15:43 UTC (permalink / raw)
To: Geert Uytterhoeven
Cc: Michal Marek, Arnd Bergmann, Linux Kbuild mailing list,
Greg Kroah-Hartman, Masahiro Yamada, Jonathan Corbet,
open list:DOCUMENTATION, linux-kernel, Linux ARM
On Tue, Dec 8, 2020 at 4:28 PM Geert Uytterhoeven
<geert+renesas@glider.be> wrote:
>
> Document best practises for using architecture and platform dependencies.
>
> Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
> ---
> Documentation/kbuild/kconfig-language.rst | 24 +++++++++++++++++++++++
> 1 file changed, 24 insertions(+)
>
> diff --git a/Documentation/kbuild/kconfig-language.rst b/Documentation/kbuild/kconfig-language.rst
> index 2b746332d8aa6bce..87e9bbe14a21ce83 100644
> --- a/Documentation/kbuild/kconfig-language.rst
> +++ b/Documentation/kbuild/kconfig-language.rst
> @@ -564,6 +564,30 @@ 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.
>
> +Architecture and platform dependencies
> +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> +Due to the presence of stubs, most drivers can now be compiled on most
> +architectures. However, this does not mean it makes sense to have all drivers
> +available everywhere, as the actual hardware may only exist on specific
> +architectures and platforms. This is especially true for on-SoC IP cores,
> +which may be limited to a specific vendor or SoC family.
> +
> +To prevent asking the user about drivers that cannot be used on the system(s)
> +the user is compiling a kernel for, and if it makes sense, config symbols
> +controlling the compilation of a driver should contain proper dependencies,
> +limiting the visibility of the symbol to (a superset of) the platform(s) the
> +driver can be used on. The dependency can be an architecture (e.g. ARM) or
> +platform (e.g. ARCH_OMAP4) dependency. This makes life simpler not only for
> +distro config owners, but also for every single developer or user who
> +configures a kernel.
> +
> +Such a dependency can be relaxed by combining it with the compile-testing rule
> +above, leading to:
> +
> + config FOO
> + bool "Support for foo hardware"
> + depends on ARCH_FOO_VENDOR || COMPILE_TEST
> +
> Kconfig recursive dependency limitations
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The addition seems useful, but I wonder if we should mention more
patterns here.:
- Some drivers are turned on implicitly for a platform, like
config FOO
bool "Support for foo hardware"
depends on ARCH_FOO_VENDOR || COMPILE_TEST
default ARCH_FOO_VENDOR
- some drivers can use a feature that may be a loadable module
itself, or can compile if that feature is disabled, but the driver
itself must not be built-in if the feature is in a loadable module, e.g.
config FOO
tristate "Foo device"
depends on HWSPINLOCK || (COMPILE_TEST && !HWSPINLOCK)
Arnd
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 1/2] Documentation/kbuild: Document COMPILE_TEST dependencies
2020-12-08 15:28 ` Geert Uytterhoeven
@ 2020-12-08 15:44 ` Arnd Bergmann
-1 siblings, 0 replies; 12+ messages in thread
From: Arnd Bergmann @ 2020-12-08 15:44 UTC (permalink / raw)
To: Geert Uytterhoeven
Cc: Greg Kroah-Hartman, Masahiro Yamada, Michal Marek,
Jonathan Corbet, Arnd Bergmann, Linux Kbuild mailing list,
open list:DOCUMENTATION, linux-kernel, Linux ARM
On Tue, Dec 8, 2020 at 4:28 PM Geert Uytterhoeven
<geert+renesas@glider.be> wrote:
>
> Document best practises for using COMPILE_TEST dependencies.
>
> Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Acked-by: Arnd Bergmann <arnd@arndb.de>
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 1/2] Documentation/kbuild: Document COMPILE_TEST dependencies
@ 2020-12-08 15:44 ` Arnd Bergmann
0 siblings, 0 replies; 12+ messages in thread
From: Arnd Bergmann @ 2020-12-08 15:44 UTC (permalink / raw)
To: Geert Uytterhoeven
Cc: Michal Marek, Arnd Bergmann, Linux Kbuild mailing list,
Greg Kroah-Hartman, Masahiro Yamada, Jonathan Corbet,
open list:DOCUMENTATION, linux-kernel, Linux ARM
On Tue, Dec 8, 2020 at 4:28 PM Geert Uytterhoeven
<geert+renesas@glider.be> wrote:
>
> Document best practises for using COMPILE_TEST dependencies.
>
> Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Acked-by: Arnd Bergmann <arnd@arndb.de>
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 1/2] Documentation/kbuild: Document COMPILE_TEST dependencies
2020-12-08 15:28 ` Geert Uytterhoeven
@ 2020-12-19 16:10 ` Masahiro Yamada
-1 siblings, 0 replies; 12+ messages in thread
From: Masahiro Yamada @ 2020-12-19 16:10 UTC (permalink / raw)
To: Geert Uytterhoeven
Cc: Greg Kroah-Hartman, Michal Marek, Jonathan Corbet, Arnd Bergmann,
Linux Kbuild mailing list, open list:DOCUMENTATION,
Linux Kernel Mailing List, linux-arm-kernel
On Wed, Dec 9, 2020 at 12:29 AM Geert Uytterhoeven
<geert+renesas@glider.be> wrote:
>
> Document best practises for using COMPILE_TEST dependencies.
>
> Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
> ---
> Documentation/kbuild/kconfig-language.rst | 11 +++++++++++
> 1 file changed, 11 insertions(+)
>
> diff --git a/Documentation/kbuild/kconfig-language.rst b/Documentation/kbuild/kconfig-language.rst
> index 1cf1aebdd6cdf8fa..2b746332d8aa6bce 100644
> --- a/Documentation/kbuild/kconfig-language.rst
> +++ b/Documentation/kbuild/kconfig-language.rst
> @@ -553,6 +553,17 @@ with "depends on m". E.g.::
Both applied to linux-kbuild. Thanks.
I replaced the two-spaces between sentences
because the majority in this file adopts
one-space between sentences.
(I still see some inconsistencies, though.)
>
> 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
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>
> --
> 2.25.1
>
--
Best Regards
Masahiro Yamada
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 1/2] Documentation/kbuild: Document COMPILE_TEST dependencies
@ 2020-12-19 16:10 ` Masahiro Yamada
0 siblings, 0 replies; 12+ messages in thread
From: Masahiro Yamada @ 2020-12-19 16:10 UTC (permalink / raw)
To: Geert Uytterhoeven
Cc: Jonathan Corbet, Michal Marek, Arnd Bergmann,
Linux Kbuild mailing list, Greg Kroah-Hartman,
open list:DOCUMENTATION, Linux Kernel Mailing List,
linux-arm-kernel
On Wed, Dec 9, 2020 at 12:29 AM Geert Uytterhoeven
<geert+renesas@glider.be> wrote:
>
> Document best practises for using COMPILE_TEST dependencies.
>
> Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
> ---
> Documentation/kbuild/kconfig-language.rst | 11 +++++++++++
> 1 file changed, 11 insertions(+)
>
> diff --git a/Documentation/kbuild/kconfig-language.rst b/Documentation/kbuild/kconfig-language.rst
> index 1cf1aebdd6cdf8fa..2b746332d8aa6bce 100644
> --- a/Documentation/kbuild/kconfig-language.rst
> +++ b/Documentation/kbuild/kconfig-language.rst
> @@ -553,6 +553,17 @@ with "depends on m". E.g.::
Both applied to linux-kbuild. Thanks.
I replaced the two-spaces between sentences
because the majority in this file adopts
one-space between sentences.
(I still see some inconsistencies, though.)
>
> 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
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>
> --
> 2.25.1
>
--
Best Regards
Masahiro Yamada
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 12+ messages in thread
end of thread, other threads:[~2020-12-19 16:13 UTC | newest]
Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-12-08 15:28 [PATCH 0/2] Documentation/kbuild: Document COMPILE_TEST and platform dependencies Geert Uytterhoeven
2020-12-08 15:28 ` Geert Uytterhoeven
2020-12-08 15:28 ` [PATCH 1/2] Documentation/kbuild: Document COMPILE_TEST dependencies Geert Uytterhoeven
2020-12-08 15:28 ` Geert Uytterhoeven
2020-12-08 15:44 ` Arnd Bergmann
2020-12-08 15:44 ` Arnd Bergmann
2020-12-19 16:10 ` Masahiro Yamada
2020-12-19 16:10 ` Masahiro Yamada
2020-12-08 15:28 ` [PATCH 2/2] Documentation/kbuild: Document platform dependency practises Geert Uytterhoeven
2020-12-08 15:28 ` Geert Uytterhoeven
2020-12-08 15:43 ` Arnd Bergmann
2020-12-08 15:43 ` Arnd Bergmann
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.