1*00b26474SVincenzo Frascino# SPDX-License-Identifier: GPL-2.0 2*00b26474SVincenzo Frascino 3*00b26474SVincenzo FrascinoGENERIC_VDSO_MK_PATH := $(abspath $(lastword $(MAKEFILE_LIST))) 4*00b26474SVincenzo FrascinoGENERIC_VDSO_DIR := $(dir $(GENERIC_VDSO_MK_PATH)) 5*00b26474SVincenzo Frascino 6*00b26474SVincenzo Frascinoc-gettimeofday-$(CONFIG_GENERIC_GETTIMEOFDAY) := $(addprefix $(GENERIC_VDSO_DIR), gettimeofday.c) 7*00b26474SVincenzo Frascino 8*00b26474SVincenzo Frascino# This cmd checks that the vdso library does not contain absolute relocation 9*00b26474SVincenzo Frascino# It has to be called after the linking of the vdso library and requires it 10*00b26474SVincenzo Frascino# as a parameter. 11*00b26474SVincenzo Frascino# 12*00b26474SVincenzo Frascino# $(ARCH_REL_TYPE_ABS) is defined in the arch specific makefile and corresponds 13*00b26474SVincenzo Frascino# to the absolute relocation types printed by "objdump -R" and accepted by the 14*00b26474SVincenzo Frascino# dynamic linker. 15*00b26474SVincenzo Frascinoifndef ARCH_REL_TYPE_ABS 16*00b26474SVincenzo Frascino$(error ARCH_REL_TYPE_ABS is not set) 17*00b26474SVincenzo Frascinoendif 18*00b26474SVincenzo Frascino 19*00b26474SVincenzo Frascinoquiet_cmd_vdso_check = VDSOCHK $@ 20*00b26474SVincenzo Frascino cmd_vdso_check = if $(OBJDUMP) -R $@ | egrep -h "$(ARCH_REL_TYPE_ABS)"; \ 21*00b26474SVincenzo Frascino then (echo >&2 "$@: dynamic relocations are not supported"; \ 22*00b26474SVincenzo Frascino rm -f $@; /bin/false); fi 23