| From 36fbe7cf859314f89539a887b8da3b185790727a Mon Sep 17 00:00:00 2001 |
| From: Arnd Bergmann <arnd@arndb.de> |
| Date: Wed, 11 Dec 2019 14:39:28 +0100 |
| Subject: [PATCH] gcc-plugins: make it possible to disable CONFIG_GCC_PLUGINS |
| again |
| |
| commit a5b0dc5a46c221725c43bd9b01570239a4cd78b1 upstream. |
| |
| I noticed that randconfig builds with gcc no longer produce a lot of |
| ccache hits, unlike with clang, and traced this back to plugins |
| now being enabled unconditionally if they are supported. |
| |
| I am now working around this by adding |
| |
| export CCACHE_COMPILERCHECK=/usr/bin/size -A %compiler% |
| |
| to my top-level Makefile. This changes the heuristic that ccache uses |
| to determine whether the plugins are the same after a 'make clean'. |
| |
| However, it also seems that being able to just turn off the plugins is |
| generally useful, at least for build testing it adds noticeable overhead |
| but does not find a lot of bugs additional bugs, and may be easier for |
| ccache users than my workaround. |
| |
| Fixes: 9f671e58159a ("security: Create "kernel hardening" config area") |
| Signed-off-by: Arnd Bergmann <arnd@arndb.de> |
| Acked-by: Ard Biesheuvel <ardb@kernel.org> |
| Reviewed-by: Masahiro Yamada <masahiroy@kernel.org> |
| Link: https://lore.kernel.org/r/20191211133951.401933-1-arnd@arndb.de |
| Cc: stable@vger.kernel.org |
| Signed-off-by: Kees Cook <keescook@chromium.org> |
| Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> |
| |
| diff --git a/scripts/gcc-plugins/Kconfig b/scripts/gcc-plugins/Kconfig |
| index e9c677a53c74..c2551f7256e2 100644 |
| --- a/scripts/gcc-plugins/Kconfig |
| +++ b/scripts/gcc-plugins/Kconfig |
| @@ -14,8 +14,8 @@ config HAVE_GCC_PLUGINS |
| An arch should select this symbol if it supports building with |
| GCC plugins. |
| |
| -config GCC_PLUGINS |
| - bool |
| +menuconfig GCC_PLUGINS |
| + bool "GCC plugins" |
| depends on HAVE_GCC_PLUGINS |
| depends on PLUGIN_HOSTCC != "" |
| default y |
| @@ -25,8 +25,7 @@ config GCC_PLUGINS |
| |
| See Documentation/gcc-plugins.txt for details. |
| |
| -menu "GCC plugins" |
| - depends on GCC_PLUGINS |
| +if GCC_PLUGINS |
| |
| config GCC_PLUGIN_CYC_COMPLEXITY |
| bool "Compute the cyclomatic complexity of a function" if EXPERT |
| @@ -113,4 +112,4 @@ config GCC_PLUGIN_ARM_SSP_PER_TASK |
| bool |
| depends on GCC_PLUGINS && ARM |
| |
| -endmenu |
| +endif |
| -- |
| 2.7.4 |
| |