xref: /linux/scripts/Makefile.vdsoinst (revision fc2f5f10f9bc5e58d38e9fda7dae107ac04a799f)
156769ba4SMasahiro Yamada# SPDX-License-Identifier: GPL-2.0-only
256769ba4SMasahiro Yamada# ==========================================================================
356769ba4SMasahiro Yamada# Install unstripped copies of vDSO
456769ba4SMasahiro Yamada# ==========================================================================
556769ba4SMasahiro Yamada
656769ba4SMasahiro YamadaPHONY := __default
756769ba4SMasahiro Yamada__default:
856769ba4SMasahiro Yamada	@:
956769ba4SMasahiro Yamada
1056769ba4SMasahiro Yamadainclude $(srctree)/scripts/Kbuild.include
1156769ba4SMasahiro Yamada
1256769ba4SMasahiro Yamadainstall-dir := $(MODLIB)/vdso
1356769ba4SMasahiro Yamada
1456769ba4SMasahiro Yamadadefine gen_install_rules
1556769ba4SMasahiro Yamada
1656769ba4SMasahiro Yamadasrc := $$(firstword $$(subst :,$(space),$(1)))
1756769ba4SMasahiro Yamadadest := $(install-dir)/$$(or $$(word 2,$$(subst :,$(space),$(1))),$$(patsubst %.dbg,%,$$(notdir $(1))))
1856769ba4SMasahiro Yamada
1956769ba4SMasahiro Yamada__default: $$(dest)
2056769ba4SMasahiro Yamada$$(dest): $$(src) FORCE
2156769ba4SMasahiro Yamada	$$(call cmd,install)
2256769ba4SMasahiro Yamada
2356769ba4SMasahiro Yamada# Some architectures create .build-id symlinks
24*fc2f5f10SJens Remusifneq ($(filter arm s390 sparc x86, $(SRCARCH)),)
25c1a86271SMasahiro Yamadalink := $(install-dir)/.build-id/$$(shell $(READELF) -n $$(src) | sed -n 's@^.*Build ID: \(..\)\(.*\)@\1/\2@p').debug
2656769ba4SMasahiro Yamada
2756769ba4SMasahiro Yamada__default: $$(link)
2856769ba4SMasahiro Yamada$$(link): $$(dest) FORCE
2956769ba4SMasahiro Yamada	$$(call cmd,symlink)
3056769ba4SMasahiro Yamadaendif
3156769ba4SMasahiro Yamada
3256769ba4SMasahiro Yamadaendef
3356769ba4SMasahiro Yamada
3456769ba4SMasahiro Yamada$(foreach x, $(sort $(INSTALL_FILES)), $(eval $(call gen_install_rules,$(x))))
3556769ba4SMasahiro Yamada
3656769ba4SMasahiro Yamadaquiet_cmd_install = INSTALL $@
3756769ba4SMasahiro Yamada      cmd_install = mkdir -p $(dir $@); cp $< $@
3856769ba4SMasahiro Yamada
3956769ba4SMasahiro Yamadaquiet_cmd_symlink = SYMLINK $@
4056769ba4SMasahiro Yamada      cmd_symlink = mkdir -p $(dir $@); ln -sf --relative $< $@
4156769ba4SMasahiro Yamada
4256769ba4SMasahiro YamadaPHONY += FORCE
4356769ba4SMasahiro YamadaFORCE:
4456769ba4SMasahiro Yamada
4556769ba4SMasahiro Yamada.PHONY: $(PHONY)
46