diff options
author | Masahiro Yamada <masahiroy@kernel.org> | 2020-07-29 12:15:36 +0900 |
---|---|---|
committer | Masahiro Yamada <masahiroy@kernel.org> | 2020-08-10 01:32:59 +0900 |
commit | 42640b134bf44e3bac34808e8c39660c7ae42855 (patch) | |
tree | 7219011c52ef2eb6a0da98f279806ecdae2167d6 /scripts/Makefile.build | |
parent | 16a122c743b327f714606eff2cd8ff31c206bafc (diff) | |
download | linux-next-42640b134bf44e3bac34808e8c39660c7ae42855.tar.gz |
kbuild: move host .so build rules to scripts/gcc-plugins/Makefile
The host shared library rules are currently implemented in
scripts/Makefile.host, but actually GCC-plugin is the only user of
them. (The VDSO .so files are built for the target by different
build rules) Hence, they do not need to be treewide available.
Move all the relevant build rules to scripts/gcc-plugins/Makefile.
I also optimized the build steps so *.so is directly built from .c
because every upstream plugin is compiled from a single source file.
I am still keeping the multi-file plugin support, which Kees Cook
mentioned might be needed by out-of-tree plugins.
(https://lkml.org/lkml/2019/1/11/1107)
If the plugin, foo.so, is compiled from two files foo.c and foo2.c,
then you can do like follows:
foo-objs := foo.o foo2.o
Single-file plugins do not need the *-objs notation.
Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Acked-by: Kees Cook <keescook@chromium.org>
Diffstat (limited to 'scripts/Makefile.build')
-rw-r--r-- | scripts/Makefile.build | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/scripts/Makefile.build b/scripts/Makefile.build index 246426fa1282..d54adf0dcf39 100644 --- a/scripts/Makefile.build +++ b/scripts/Makefile.build @@ -45,8 +45,8 @@ include $(kbuild-file) include scripts/Makefile.lib -# Do not include host rules unless needed -ifneq ($(hostprogs)$(hostcxxlibs-y)$(hostcxxlibs-m),) +# Do not include hostprogs rules unless needed +ifneq ($(hostprogs),) include scripts/Makefile.host endif |