mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-22 18:41:06 +00:00
0e035cb818
[ Upstream commitfc2f5f10f9
] Citing Andy Lutomirski from commitdda1e95cee
("x86/vdso: Create .build-id links for unstripped vdso files"): "With this change, doing 'make vdso_install' and telling gdb: set debug-file-directory /lib/modules/KVER/vdso will enable vdso debugging with symbols. This is useful for testing, but kernel RPM builds will probably want to manually delete these symlinks or otherwise do something sensible when they strip the vdso/*.so files." Fixes:4bff8cb545
("s390: convert to GENERIC_VDSO") Signed-off-by: Jens Remus <jremus@linux.ibm.com> Signed-off-by: Alexander Gordeev <agordeev@linux.ibm.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
45 lines
1.2 KiB
Makefile
45 lines
1.2 KiB
Makefile
# SPDX-License-Identifier: GPL-2.0-only
|
|
# ==========================================================================
|
|
# Install unstripped copies of vDSO
|
|
# ==========================================================================
|
|
|
|
PHONY := __default
|
|
__default:
|
|
@:
|
|
|
|
include $(srctree)/scripts/Kbuild.include
|
|
|
|
install-dir := $(MODLIB)/vdso
|
|
|
|
define gen_install_rules
|
|
|
|
src := $$(firstword $$(subst :,$(space),$(1)))
|
|
dest := $(install-dir)/$$(or $$(word 2,$$(subst :,$(space),$(1))),$$(patsubst %.dbg,%,$$(notdir $(1))))
|
|
|
|
__default: $$(dest)
|
|
$$(dest): $$(src) FORCE
|
|
$$(call cmd,install)
|
|
|
|
# Some architectures create .build-id symlinks
|
|
ifneq ($(filter arm s390 sparc x86, $(SRCARCH)),)
|
|
link := $(install-dir)/.build-id/$$(shell $(READELF) -n $$(src) | sed -n 's@^.*Build ID: \(..\)\(.*\)@\1/\2@p').debug
|
|
|
|
__default: $$(link)
|
|
$$(link): $$(dest) FORCE
|
|
$$(call cmd,symlink)
|
|
endif
|
|
|
|
endef
|
|
|
|
$(foreach x, $(sort $(INSTALL_FILES)), $(eval $(call gen_install_rules,$(x))))
|
|
|
|
quiet_cmd_install = INSTALL $@
|
|
cmd_install = mkdir -p $(dir $@); cp $< $@
|
|
|
|
quiet_cmd_symlink = SYMLINK $@
|
|
cmd_symlink = mkdir -p $(dir $@); ln -sf --relative $< $@
|
|
|
|
PHONY += FORCE
|
|
FORCE:
|
|
|
|
.PHONY: $(PHONY)
|