#!/bin/sh

cd `dirname $0`

USAGE=0
BUILD=
CCID_HEADERS=../ccid
IDMAN_STDIO_HEADERS=../standardio
IDMAN_STDIO_LIBS=
TARGET=libIDManPcsc.so
LIBPATH=/usr/local/IDMan/client/lib
GDB_OPTION=-O

for p in $*; do
	v=${p#*=}
	case "$p" in
		--help)
			USAGE=1
		;;
		--with-ccid-headers=*)
			CCID_HEADERS="$v"
		;;
		--with-idman-std-headers=*)
			IDMAN_STDIO_HEADERS="$v"
		;;
		--with-idman-std-libs=*)
			IDMAN_STDIO_LIBS="$v"
		;;
		--build=*)
			BUILD="$v"
		;;
		--name=*)
			TARGET="$v"
		;;
		--library-path=*)
			LIBPATH="$v"
		;;
		--gdb)
			GDB_OPTION="-g -O0"
		;;
	esac
done

if [ ${USAGE} != 0 ]; then
	echo -e "usage $0"
	echo -e "\t--help\t\t\tThis help."
	echo -e "\t--build=arch\t\tSet build architacture (gcc prefix), default empty."
	echo -e "\t--name=target-name\tSet PCSC library name, default 'libIDManPcsc.so'."
	echo -e "  --with-ccid-headers=dir\t\tSet manual CCID headers directory."
	echo -e "\t\t\tdefault '../ccid'"
	echo -e "\t--with-idman-std-headers=dir\tSet manual IDMan_StandardIo headers directory."
	echo -e "\t\t\t\tdefault '../standardio'"
	echo -e "\t--with-idman-std-libs=dir\tSet manual IDMan_StandardIo library directory, default empty."
	echo -e "\t--library-path=library-path\tSet library-path for IDMan, default '/usr/local/IDMan/client/lib'."
	echo -e "\t--gdb\t\tSet Option for GDB debugger, default empty."
	exit 1
fi

if [ -z "$CCID_HEADERS" ]; then
	CFLAGS="$CFLAGS"
else
	CFLAGS="$CFLAGS -I${CCID_HEADERS}"
fi

if [ -z "$IDMAN_STDIO_HEADERS" ]; then
	CFLAGS="$CFLAGS"
else
	CFLAGS="$CFLAGS -I${IDMAN_STDIO_HEADERS}"
fi

if [ -z "$IDMAN_STDIO_LIBS" ]; then
	LDFLAGS="$LDFLAGS"
else
	LDFLAGS="$LDFLAGS -L${IDMAN_STDIO_LIBS} -lpcsclite"
fi

echo "BUILD=${BUILD}" > Makefile.inc
echo "CFLAGS=${CFLAGS}" >> Makefile.inc
echo "LDFLAGS=${LDFLAGS}" >> Makefile.inc
echo "TARGET=${TARGET}" >> Makefile.inc
echo "IDMAN_STDIO_HEADERS=${IDMAN_STDIO_HEADERS}" >> Makefile.inc
echo "LIBPATH=${LIBPATH}" >> Makefile.inc
echo "GDBOPT=${GDB_OPTION}" >> Makefile.inc

exit 0
