Commit a6c36632 authored by Michal Marek's avatar Michal Marek
Browse files

kbuild: Do not unnecessarily regenerate modules.builtin



Only regenerate it if the configuration has changed. Also, do this after
the modules build to fix errors with some weird Makefiles that are
generated during build.

Reported-by: default avatarEric Miao <eric.y.miao@gmail.com>
Signed-off-by: default avatarMichal Marek <mmarek@suse.cz>
parent bae4cecc
Loading
Loading
Loading
Loading
+7 −5
Original line number Diff line number Diff line
@@ -882,9 +882,6 @@ $(sort $(vmlinux-init) $(vmlinux-main)) $(vmlinux-lds): $(vmlinux-dirs) ;
PHONY += $(vmlinux-dirs)
$(vmlinux-dirs): prepare scripts
	$(Q)$(MAKE) $(build)=$@
ifdef CONFIG_MODULES
	$(Q)$(MAKE) $(modbuiltin)=$@
endif

# Build the kernel release string
#
@@ -1089,7 +1086,7 @@ ifdef CONFIG_MODULES

# By default, build modules as well

all: modules
all: modules modules.builtin

#	Build modules
#
@@ -1100,11 +1097,16 @@ all: modules
PHONY += modules
modules: $(vmlinux-dirs) $(if $(KBUILD_BUILTIN),vmlinux)
	$(Q)$(AWK) '!x[$$0]++' $(vmlinux-dirs:%=$(objtree)/%/modules.order) > $(objtree)/modules.order
	$(Q)$(AWK) '!x[$$0]++' $(vmlinux-dirs:%=$(objtree)/%/modules.builtin) > $(objtree)/modules.builtin
	@$(kecho) '  Building modules, stage 2.';
	$(Q)$(MAKE) -f $(srctree)/scripts/Makefile.modpost
	$(Q)$(MAKE) -f $(srctree)/scripts/Makefile.fwinst obj=firmware __fw_modbuild

modules.builtin: $(vmlinux-dirs:%=%/modules.builtin)
	$(Q)$(AWK) '!x[$$0]++' $^ > $(objtree)/modules.builtin

%/modules.builtin: include/config/auto.conf | modules
	$(Q)$(MAKE) $(modbuiltin)=$*


# Target to prepare building external modules
PHONY += modules_prepare