gcc-plugins: Explicitly document purpose and deprecation schedule
authorKees Cook <keescook@chromium.org>
Wed, 20 Oct 2021 17:35:53 +0000 (10:35 -0700)
committerKees Cook <keescook@chromium.org>
Thu, 21 Oct 2021 15:41:38 +0000 (08:41 -0700)
commit8bd51a2ba3c3bb81a693fff17e983d02d914c14c
treee92bba2923437c4ee9590f821c470dedb4f2b2b2
parent6eb4bd92c1cedcaadd65868b7ade396b422be4be
gcc-plugins: Explicitly document purpose and deprecation schedule

GCC plugins should only exist when some compiler feature needs to be
proven but does not exist in either GCC nor Clang. For example, if a
desired feature is already in Clang, it should be added to GCC upstream.
Document this explicitly.

Additionally, mark the plugins with matching upstream GCC features as
removable past their respective GCC versions.

Cc: Masahiro Yamada <masahiroy@kernel.org>
Cc: Michal Marek <michal.lkml@markovi.net>
Cc: Nick Desaulniers <ndesaulniers@google.com>
Cc: Jonathan Corbet <corbet@lwn.net>
Cc: James Morris <jmorris@namei.org>
Cc: "Serge E. Hallyn" <serge@hallyn.com>
Cc: Nathan Chancellor <nathan@kernel.org>
Cc: linux-hardening@vger.kernel.org
Cc: linux-kbuild@vger.kernel.org
Cc: linux-doc@vger.kernel.org
Cc: linux-security-module@vger.kernel.org
Cc: llvm@lists.linux.dev
Signed-off-by: Kees Cook <keescook@chromium.org>
Reviewed-by: Nathan Chancellor <nathan@kernel.org>
Reviewed-by: Miguel Ojeda <ojeda@kernel.org>
Acked-by: Nick Desaulniers <ndesaulniers@google.com>
Acked-by: Ard Biesheuvel <ardb@kernel.org>
Link: https://lore.kernel.org/r/20211020173554.38122-2-keescook@chromium.org
Documentation/kbuild/gcc-plugins.rst
scripts/gcc-plugins/Kconfig
security/Kconfig.hardening