kbuild: link-vmlinux.sh: Make output file name configurable
In order to introduce an intermediate, non-stripped vmlinux build that can be used by other build steps as an input, pass the output file name to link-vmlinux.sh via its command line. Signed-off-by: Ard Biesheuvel <ardb@kernel.org> Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
This commit is contained in:
parent
ba4d705046
commit
e22bbb8e97
2 changed files with 9 additions and 8 deletions
|
@ -69,7 +69,7 @@ ARCH_POSTLINK := $(wildcard $(srctree)/arch/$(SRCARCH)/Makefile.postlink)
|
|||
|
||||
# Final link of vmlinux with optional arch pass after final link
|
||||
cmd_link_vmlinux = \
|
||||
$< "$(LD)" "$(KBUILD_LDFLAGS)" "$(LDFLAGS_vmlinux)"; \
|
||||
$< "$(LD)" "$(KBUILD_LDFLAGS)" "$(LDFLAGS_vmlinux)" "$@"; \
|
||||
$(if $(ARCH_POSTLINK), $(MAKE) -f $(ARCH_POSTLINK) $@, true)
|
||||
|
||||
targets += vmlinux
|
||||
|
|
|
@ -31,6 +31,7 @@ set -e
|
|||
LD="$1"
|
||||
KBUILD_LDFLAGS="$2"
|
||||
LDFLAGS_vmlinux="$3"
|
||||
VMLINUX="$4"
|
||||
|
||||
is_enabled() {
|
||||
grep -q "^$1=y" include/config/auto.conf
|
||||
|
@ -283,23 +284,23 @@ if is_enabled CONFIG_VMLINUX_MAP; then
|
|||
generate_map=1
|
||||
fi
|
||||
|
||||
vmlinux_link vmlinux
|
||||
vmlinux_link "${VMLINUX}"
|
||||
|
||||
# fill in BTF IDs
|
||||
if is_enabled CONFIG_DEBUG_INFO_BTF; then
|
||||
info BTFIDS vmlinux
|
||||
info BTFIDS "${VMLINUX}"
|
||||
RESOLVE_BTFIDS_ARGS=""
|
||||
if is_enabled CONFIG_WERROR; then
|
||||
RESOLVE_BTFIDS_ARGS=" --fatal_warnings "
|
||||
fi
|
||||
${RESOLVE_BTFIDS} ${RESOLVE_BTFIDS_ARGS} vmlinux
|
||||
${RESOLVE_BTFIDS} ${RESOLVE_BTFIDS_ARGS} "${VMLINUX}"
|
||||
fi
|
||||
|
||||
mksysmap vmlinux System.map
|
||||
mksysmap "${VMLINUX}" System.map
|
||||
|
||||
if is_enabled CONFIG_BUILDTIME_TABLE_SORT; then
|
||||
info SORTTAB vmlinux
|
||||
if ! sorttable vmlinux; then
|
||||
info SORTTAB "${VMLINUX}"
|
||||
if ! sorttable "${VMLINUX}"; then
|
||||
echo >&2 Failed to sort kernel tables
|
||||
exit 1
|
||||
fi
|
||||
|
@ -315,4 +316,4 @@ if is_enabled CONFIG_KALLSYMS; then
|
|||
fi
|
||||
|
||||
# For fixdep
|
||||
echo "vmlinux: $0" > .vmlinux.d
|
||||
echo "${VMLINUX}: $0" > ".${VMLINUX}.d"
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue