|author||Masahiro Yamada <firstname.lastname@example.org>||2019-07-01 09:58:45 +0900|
|committer||Masahiro Yamada <email@example.com>||2019-07-09 21:44:37 +0900|
kbuild: compile-test kernel headers to ensure they are self-contained
The headers in include/ are globally used in the kernel source tree to provide common APIs. They are included from external modules, too. It will be useful to make as many headers self-contained as possible so that we do not have to rely on a specific include order. There are more than 4000 headers in include/. In my rough analysis, 70% of them are already self-contained. With efforts, most of them can be self-contained. For now, we must exclude more than 1000 headers just because they cannot be compiled as standalone units. I added them to header-test-. The blacklist was mostly generated by a script, so the reason of the breakage should be checked later. Signed-off-by: Masahiro Yamada <firstname.lastname@example.org> Tested-by: Jani Nikula <email@example.com> Reviewed-by: Joel Fernandes (Google) <firstname.lastname@example.org>
Diffstat (limited to 'init')
1 files changed, 11 insertions, 0 deletions
diff --git a/init/Kconfig b/init/Kconfig
index 74192de8ada6..e2e99544da8d 100644
@@ -108,6 +108,17 @@ config HEADER_TEST
If you are a developer or tester and want to ensure the requested
headers are self-contained, say Y here. Otherwise, choose N.
+ bool "Compile test kernel headers"
+ depends on HEADER_TEST
+ Headers in include/ are used to build external moduls.
+ Compile test them to ensure they are self-contained, i.e.
+ compilable as standalone units.
+ If you are a developer or tester and want to ensure the headers
+ in include/ are self-contained, say Y here. Otherwise, choose N.
bool "Compile test UAPI headers"
depends on HEADER_TEST && HEADERS_INSTALL && CC_CAN_LINK