| # 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 |
| |
| dest := $(install-dir)/$$(patsubst %.dbg,%,$$(notdir $(1))) |
| |
| __default: $$(dest) |
| $$(dest): $(1) 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 $(1) | 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) |