Merge tag 'locking-core-2023-05-05' of git://git.kernel.org/pub/scm/linux/kernel...
[platform/kernel/linux-rpi.git] / arch / riscv / Makefile.postlink
1 # SPDX-License-Identifier: GPL-2.0
2 # ===========================================================================
3 # Post-link riscv pass
4 # ===========================================================================
5 #
6 # Check that vmlinux relocations look sane
7
8 PHONY := __archpost
9 __archpost:
10
11 -include include/config/auto.conf
12 include $(srctree)/scripts/Kbuild.include
13
14 quiet_cmd_relocs_check = CHKREL  $@
15 cmd_relocs_check =                                                      \
16         $(CONFIG_SHELL) $(srctree)/arch/riscv/tools/relocs_check.sh "$(OBJDUMP)" "$(NM)" "$@"
17
18 ifdef CONFIG_RELOCATABLE
19 quiet_cmd_cp_vmlinux_relocs = CPREL   vmlinux.relocs
20 cmd_cp_vmlinux_relocs = cp vmlinux vmlinux.relocs
21
22 quiet_cmd_relocs_strip = STRIPREL $@
23 cmd_relocs_strip = $(OBJCOPY)   --remove-section='.rel.*'       \
24                                 --remove-section='.rel__*'      \
25                                 --remove-section='.rela.*'      \
26                                 --remove-section='.rela__*' $@
27 endif
28
29 # `@true` prevents complaint when there is nothing to be done
30
31 vmlinux: FORCE
32         @true
33 ifdef CONFIG_RELOCATABLE
34         $(call if_changed,relocs_check)
35         $(call if_changed,cp_vmlinux_relocs)
36         $(call if_changed,relocs_strip)
37 endif
38
39 %.ko: FORCE
40         @true
41
42 clean:
43         @true
44
45 PHONY += FORCE clean
46
47 FORCE:
48
49 .PHONY: $(PHONY)