#! /bin/sh

# Get a variable's value from a makefile:
#
# $ makefile-getvar Makefile VARIABLE VARIABLE ...
#
# If multiple variables are specified, they will be printed one per line.
#
# SPDX-FileCopyrightText: Copyright 2024 Arm Limited and/or its affiliates <open-source-office@arm.com>
# SPDX-License-Identifier: GPL-2.0-only

set -eu

if [ $# -lt 2 ]; then
	echo "Get a variable's value from a Makefile:"
	echo "$ makefile-getvar Makefile VARIABLE VARIABLE ..."
	exit 0
fi

MAKEFILE=$1
shift

if [ ! -f "$MAKEFILE" ]; then
	echo "$MAKEFILE is not a file"
	exit 1
fi

for VARIABLE in $*; do
	make -f - $VARIABLE.var <<EOF
include $MAKEFILE

%.var:
	@echo \$(\$*)
EOF
done
