2019-06-21 09:52:29 +00:00
|
|
|
# SPDX-License-Identifier: GPL-2.0
|
|
|
|
|
|
|
|
GENERIC_VDSO_MK_PATH := $(abspath $(lastword $(MAKEFILE_LIST)))
|
|
|
|
GENERIC_VDSO_DIR := $(dir $(GENERIC_VDSO_MK_PATH))
|
|
|
|
|
|
|
|
c-gettimeofday-$(CONFIG_GENERIC_GETTIMEOFDAY) := $(addprefix $(GENERIC_VDSO_DIR), gettimeofday.c)
|
2024-08-22 07:13:12 +00:00
|
|
|
c-getrandom-$(CONFIG_VDSO_GETRANDOM) := $(addprefix $(GENERIC_VDSO_DIR), getrandom.c)
|
2019-06-21 09:52:29 +00:00
|
|
|
|
2023-03-10 19:07:50 +00:00
|
|
|
# This cmd checks that the vdso library does not contain dynamic relocations.
|
2019-06-21 09:52:29 +00:00
|
|
|
# It has to be called after the linking of the vdso library and requires it
|
|
|
|
# as a parameter.
|
|
|
|
#
|
2023-03-10 19:07:50 +00:00
|
|
|
# As a workaround for some GNU ld ports which produce unneeded R_*_NONE
|
|
|
|
# dynamic relocations, ignore R_*_NONE.
|
2019-06-21 09:52:29 +00:00
|
|
|
quiet_cmd_vdso_check = VDSOCHK $@
|
2023-03-10 19:07:50 +00:00
|
|
|
cmd_vdso_check = if $(READELF) -rW $@ | grep -v _NONE | grep -q " R_\w*_"; \
|
2019-06-21 09:52:29 +00:00
|
|
|
then (echo >&2 "$@: dynamic relocations are not supported"; \
|
|
|
|
rm -f $@; /bin/false); fi
|