summaryrefslogtreecommitdiffstats
path: root/Makefile
diff options
context:
space:
mode:
authorNicholas Piggin <npiggin@gmail.com>2016-08-24 08:29:21 -0400
committerMichal Marek <mmarek@suse.com>2016-09-09 04:47:00 -0400
commitfbe6e37dab974dd0fc3660c001895f7bfd771c9a (patch)
treeb50892eb57f9e567e6f9293d1c1c6a7b94f3255f /Makefile
parentb67067f1176df6ee727450546b58704e4b588563 (diff)
kbuild: add arch specific post-link Makefile
Allow architectures to create arch/xxx/Makefile.postlink with targets for vmlinux, modules.ko, and clean, which will be invoked after final linking of vmlinux and modules. powerpc will use this to check vmlinux linker relocations for sanity, and may use it to fix up alternate instruction patch branch addresses. Signed-off-by: Nicholas Piggin <npiggin@gmail.com> Signed-off-by: Michal Marek <mmarek@suse.com>
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile10
1 files changed, 7 insertions, 3 deletions
diff --git a/Makefile b/Makefile
index 6d40f3a3a8cc..83dae63df91a 100644
--- a/Makefile
+++ b/Makefile
@@ -957,9 +957,12 @@ endif
957include/generated/autoksyms.h: FORCE 957include/generated/autoksyms.h: FORCE
958 $(Q)$(CONFIG_SHELL) $(srctree)/scripts/adjust_autoksyms.sh true 958 $(Q)$(CONFIG_SHELL) $(srctree)/scripts/adjust_autoksyms.sh true
959 959
960# Final link of vmlinux 960ARCH_POSTLINK := $(wildcard $(srctree)/arch/$(SRCARCH)/Makefile.postlink)
961 cmd_link-vmlinux = $(CONFIG_SHELL) $< $(LD) $(LDFLAGS) $(LDFLAGS_vmlinux) 961
962quiet_cmd_link-vmlinux = LINK $@ 962# Final link of vmlinux with optional arch pass after final link
963 cmd_link-vmlinux = \
964 $(CONFIG_SHELL) $< $(LD) $(LDFLAGS) $(LDFLAGS_vmlinux) ; \
965 $(if $(ARCH_POSTLINK), $(MAKE) -f $(ARCH_POSTLINK) $@, true)
963 966
964vmlinux: scripts/link-vmlinux.sh vmlinux_prereq $(vmlinux-deps) FORCE 967vmlinux: scripts/link-vmlinux.sh vmlinux_prereq $(vmlinux-deps) FORCE
965 +$(call if_changed,link-vmlinux) 968 +$(call if_changed,link-vmlinux)
@@ -1286,6 +1289,7 @@ $(clean-dirs):
1286 1289
1287vmlinuxclean: 1290vmlinuxclean:
1288 $(Q)$(CONFIG_SHELL) $(srctree)/scripts/link-vmlinux.sh clean 1291 $(Q)$(CONFIG_SHELL) $(srctree)/scripts/link-vmlinux.sh clean
1292 $(Q)$(if $(ARCH_POSTLINK), $(MAKE) -f $(ARCH_POSTLINK) clean)
1289 1293
1290clean: archclean vmlinuxclean 1294clean: archclean vmlinuxclean
1291 1295