#!/bin/sh

option() {
	TEMP="`echo X"$2" | sed -e 's/^X--[^=]*=//'`"
	eval $1=\"$TEMP\"
}

usage() {
	if [ ! -z "$1" ]; then
		echo "$0: bad option '$1'"
	fi
	echo "usage: $0 options.."
	echo ""
	echo "  --kernel=DIR    use kernel source tree at DIR"
	exit 1
}

# prompt question-string default-result result-variable
prompt() {
	eval $3=\"$2\"
	/bin/echo -n "$1 [$2]: "
	read tmp
	if [ -n "$tmp" ]; then
		eval $3=\"$tmp\"
	fi
}

if [ -r config.out ]; then
	. ./config.out
fi

KSRC_DEFAULT=$KSRC
KSRC=

while [ $# -gt 0 ]; do
	case "$1" in
	--kernel=*)
		option KSRC $1
		;;
	*)
		usage "$1"
	esac
	shift
done

echo ""
echo "  -- Linux x86 Performance-Monitoring Counters Configuration Script --"
echo ""

while [ -z "$KSRC" -o ! -f "$KSRC/include/asm/perfctr.h" ]; do
	prompt "Linux source directory" "$KSRC_DEFAULT" KSRC
done

cat > config.out << EOF
KSRC=$KSRC
EOF

echo ""
echo "Configuration successful."
echo ""
exit 0
