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
|
# Final link of vmlinux with optional arch pass after final link
|
||||||
cmd_link_vmlinux = \
|
cmd_link_vmlinux = \
|
||||||
$< "$(LD)" "$(KBUILD_LDFLAGS)" "$(LDFLAGS_vmlinux)"; \
|
$< "$(LD)" "$(KBUILD_LDFLAGS)" "$(LDFLAGS_vmlinux)" "$@"; \
|
||||||
$(if $(ARCH_POSTLINK), $(MAKE) -f $(ARCH_POSTLINK) $@, true)
|
$(if $(ARCH_POSTLINK), $(MAKE) -f $(ARCH_POSTLINK) $@, true)
|
||||||
|
|
||||||
targets += vmlinux
|
targets += vmlinux
|
||||||
|
|
|
@ -31,6 +31,7 @@ set -e
|
||||||
LD="$1"
|
LD="$1"
|
||||||
KBUILD_LDFLAGS="$2"
|
KBUILD_LDFLAGS="$2"
|
||||||
LDFLAGS_vmlinux="$3"
|
LDFLAGS_vmlinux="$3"
|
||||||
|
VMLINUX="$4"
|
||||||
|
|
||||||
is_enabled() {
|
is_enabled() {
|
||||||
grep -q "^$1=y" include/config/auto.conf
|
grep -q "^$1=y" include/config/auto.conf
|
||||||
|
@ -283,23 +284,23 @@ if is_enabled CONFIG_VMLINUX_MAP; then
|
||||||
generate_map=1
|
generate_map=1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
vmlinux_link vmlinux
|
vmlinux_link "${VMLINUX}"
|
||||||
|
|
||||||
# fill in BTF IDs
|
# fill in BTF IDs
|
||||||
if is_enabled CONFIG_DEBUG_INFO_BTF; then
|
if is_enabled CONFIG_DEBUG_INFO_BTF; then
|
||||||
info BTFIDS vmlinux
|
info BTFIDS "${VMLINUX}"
|
||||||
RESOLVE_BTFIDS_ARGS=""
|
RESOLVE_BTFIDS_ARGS=""
|
||||||
if is_enabled CONFIG_WERROR; then
|
if is_enabled CONFIG_WERROR; then
|
||||||
RESOLVE_BTFIDS_ARGS=" --fatal_warnings "
|
RESOLVE_BTFIDS_ARGS=" --fatal_warnings "
|
||||||
fi
|
fi
|
||||||
${RESOLVE_BTFIDS} ${RESOLVE_BTFIDS_ARGS} vmlinux
|
${RESOLVE_BTFIDS} ${RESOLVE_BTFIDS_ARGS} "${VMLINUX}"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
mksysmap vmlinux System.map
|
mksysmap "${VMLINUX}" System.map
|
||||||
|
|
||||||
if is_enabled CONFIG_BUILDTIME_TABLE_SORT; then
|
if is_enabled CONFIG_BUILDTIME_TABLE_SORT; then
|
||||||
info SORTTAB vmlinux
|
info SORTTAB "${VMLINUX}"
|
||||||
if ! sorttable vmlinux; then
|
if ! sorttable "${VMLINUX}"; then
|
||||||
echo >&2 Failed to sort kernel tables
|
echo >&2 Failed to sort kernel tables
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
@ -315,4 +316,4 @@ if is_enabled CONFIG_KALLSYMS; then
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# For fixdep
|
# For fixdep
|
||||||
echo "vmlinux: $0" > .vmlinux.d
|
echo "${VMLINUX}: $0" > ".${VMLINUX}.d"
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue