From 60df1aee2aecb53efb4218b4dfdf7d6c80a5a3de Mon Sep 17 00:00:00 2001 From: Masahiro Yamada Date: Thu, 29 Nov 2018 12:13:24 +0900 Subject: kbuild: move modpost out of 'scripts' target I am eagar to build under the scripts/ directory only with $(HOSTCC), but scripts/mod/ highly depends on the $(CC) and target arch headers. That it why the 'scripts' target must depend on 'asm-generic', 'gcc-plugins', and $(autoksyms_h). Move it to the 'prepare0' stage. I know this is a cheesy workaround, but better than the current situation. Signed-off-by: Masahiro Yamada --- scripts/Makefile | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'scripts/Makefile') diff --git a/scripts/Makefile b/scripts/Makefile index ece52ff20171..b48259d30280 100644 --- a/scripts/Makefile +++ b/scripts/Makefile @@ -37,9 +37,8 @@ build_unifdef: $(obj)/unifdef @: subdir-$(CONFIG_MODVERSIONS) += genksyms -subdir-y += mod subdir-$(CONFIG_SECURITY_SELINUX) += selinux subdir-$(CONFIG_GDB_SCRIPTS) += gdb # Let clean descend into subdirs -subdir- += basic dtc kconfig package gcc-plugins +subdir- += basic dtc kconfig mod package gcc-plugins -- cgit v1.2.3-71-gd317 From ce2fd53a10c7d17934c005029382f8310e565504 Mon Sep 17 00:00:00 2001 From: Masahiro Yamada Date: Thu, 29 Nov 2018 12:56:31 +0900 Subject: kbuild: descend into scripts/gcc-plugins/ via scripts/Makefile Now that 'archprepare' depends on 'scripts', Kbuild can descend into scripts/gcc-plugins in a more standard way. Signed-off-by: Masahiro Yamada Reviewed-by: Kees Cook --- Makefile | 2 +- scripts/Makefile | 3 ++- scripts/Makefile.gcc-plugins | 8 -------- 3 files changed, 3 insertions(+), 10 deletions(-) (limited to 'scripts/Makefile') diff --git a/Makefile b/Makefile index 06b6424d519a..861d9d48c7df 100644 --- a/Makefile +++ b/Makefile @@ -1110,7 +1110,7 @@ prepare1: prepare2 $(version_h) $(autoksyms_h) include/generated/utsrelease.h macroprepare: prepare1 archmacros -archprepare: archheaders archscripts macroprepare scripts gcc-plugins +archprepare: archheaders archscripts macroprepare scripts prepare0: archprepare $(Q)$(MAKE) $(build)=scripts/mod diff --git a/scripts/Makefile b/scripts/Makefile index b48259d30280..feb1f71381d7 100644 --- a/scripts/Makefile +++ b/scripts/Makefile @@ -36,9 +36,10 @@ PHONY += build_unifdef build_unifdef: $(obj)/unifdef @: +subdir-$(CONFIG_GCC_PLUGINS) += gcc-plugins subdir-$(CONFIG_MODVERSIONS) += genksyms subdir-$(CONFIG_SECURITY_SELINUX) += selinux subdir-$(CONFIG_GDB_SCRIPTS) += gdb # Let clean descend into subdirs -subdir- += basic dtc kconfig mod package gcc-plugins +subdir- += basic dtc kconfig mod package diff --git a/scripts/Makefile.gcc-plugins b/scripts/Makefile.gcc-plugins index 46c5c6809806..c36f19959619 100644 --- a/scripts/Makefile.gcc-plugins +++ b/scripts/Makefile.gcc-plugins @@ -49,11 +49,3 @@ KBUILD_CFLAGS += $(GCC_PLUGINS_CFLAGS) # All enabled GCC plugins are collected here for building below. GCC_PLUGIN := $(gcc-plugin-y) export GCC_PLUGIN - -# Actually do the build, if requested. -PHONY += gcc-plugins -gcc-plugins: scripts_basic -ifdef CONFIG_GCC_PLUGINS - $(Q)$(MAKE) $(build)=scripts/gcc-plugins -endif - @: -- cgit v1.2.3-71-gd317 From 1e5ff84ffe0b09f866761c441003c27ca7e1c6b3 Mon Sep 17 00:00:00 2001 From: Masahiro Yamada Date: Tue, 19 Feb 2019 18:33:04 +0900 Subject: scripts/gdb: do not descend into scripts/gdb from scripts Currently, Kbuild descends from scripts/Makefile to scripts/gdb/Makefile just for creating symbolic links, but it does not need to do it so early. Merge the two descending paths to simplify the code. Signed-off-by: Masahiro Yamada Reviewed-by: Kieran Bingham --- Makefile | 2 +- scripts/Makefile | 3 +-- scripts/gdb/linux/Makefile | 9 +++------ 3 files changed, 5 insertions(+), 9 deletions(-) (limited to 'scripts/Makefile') diff --git a/Makefile b/Makefile index 15a9987a200d..d05da1b9982b 100644 --- a/Makefile +++ b/Makefile @@ -1524,7 +1524,7 @@ $(DOC_TARGETS): scripts_basic FORCE PHONY += scripts_gdb scripts_gdb: prepare - $(Q)$(MAKE) $(build)=scripts/gdb/linux build_constants_py + $(Q)$(MAKE) $(build)=scripts/gdb ifdef CONFIG_GDB_SCRIPTS all: scripts_gdb diff --git a/scripts/Makefile b/scripts/Makefile index feb1f71381d7..9d442ee050bd 100644 --- a/scripts/Makefile +++ b/scripts/Makefile @@ -39,7 +39,6 @@ build_unifdef: $(obj)/unifdef subdir-$(CONFIG_GCC_PLUGINS) += gcc-plugins subdir-$(CONFIG_MODVERSIONS) += genksyms subdir-$(CONFIG_SECURITY_SELINUX) += selinux -subdir-$(CONFIG_GDB_SCRIPTS) += gdb # Let clean descend into subdirs -subdir- += basic dtc kconfig mod package +subdir- += basic dtc gdb kconfig mod package diff --git a/scripts/gdb/linux/Makefile b/scripts/gdb/linux/Makefile index aba23be985e4..754580609360 100644 --- a/scripts/gdb/linux/Makefile +++ b/scripts/gdb/linux/Makefile @@ -14,11 +14,8 @@ quiet_cmd_gen_constants_py = GEN $@ $(CPP) -E -x c -P $(c_flags) $< > $@ ;\ sed -i '1,//d;' $@ -targets += constants.py -$(obj)/constants.py: $(SRCTREE)/$(obj)/constants.py.in FORCE +extra-y += constants.py +$(obj)/constants.py: $(src)/constants.py.in FORCE $(call if_changed_dep,gen_constants_py) -build_constants_py: $(obj)/constants.py - @: - -clean-files := *.pyc *.pyo $(if $(KBUILD_SRC),*.py) $(obj)/constants.py +clean-files := *.pyc *.pyo $(if $(KBUILD_SRC),*.py) -- cgit v1.2.3-71-gd317