xref: /linux/lib/vdso/Makefile (revision c532de5a67a70f8533d495f8f2aaa9a0491c3ad0)
1# SPDX-License-Identifier: GPL-2.0
2
3GENERIC_VDSO_MK_PATH := $(abspath $(lastword $(MAKEFILE_LIST)))
4GENERIC_VDSO_DIR := $(dir $(GENERIC_VDSO_MK_PATH))
5
6c-gettimeofday-$(CONFIG_GENERIC_GETTIMEOFDAY) := $(addprefix $(GENERIC_VDSO_DIR), gettimeofday.c)
7c-getrandom-$(CONFIG_VDSO_GETRANDOM) := $(addprefix $(GENERIC_VDSO_DIR), getrandom.c)
8
9# This cmd checks that the vdso library does not contain dynamic relocations.
10# It has to be called after the linking of the vdso library and requires it
11# as a parameter.
12#
13# As a workaround for some GNU ld ports which produce unneeded R_*_NONE
14# dynamic relocations, ignore R_*_NONE.
15quiet_cmd_vdso_check = VDSOCHK $@
16      cmd_vdso_check = if $(READELF) -rW $@ | grep -v _NONE | grep -q " R_\w*_"; \
17		       then (echo >&2 "$@: dynamic relocations are not supported"; \
18			     rm -f $@; /bin/false); fi
19