#!/bin/sh
# This file is part of the YAZ toolkit.
# Copyright (C) 1995-2008 Index Data

yazprefix=/usr
yaz_echo_cflags=no
yaz_echo_libs=no
yaz_echo_help=no
yaz_echo_source=no
yaz_echo_lalibs=no
yaz_echo_comp=no
yaz_src_root=/tmp/tgz/yaz-3.0.38
yaz_build_root=/tmp/tgz/yaz-3.0.38
PTHREAD_LIBS="-lpthread"
PTHREAD_CFLAGS="-pthread -DYAZ_POSIX_THREADS=1"
ICU_LIBS="-lpthread -lm -L/usr/lib -licui18n -licuuc -licudata -lpthread -lm"
ICU_CPPFLAGS="-D_REENTRANT -I/usr/include -D YAZ_HAVE_ICU=1"
SSL_LIBS="-lgnutls  "
LIBS="-lexslt -lxslt -lz -lm -lgcrypt -lgpg-error -lxml2   "
YAZVERSION=3.0.38

usage()
{
    cat <<EOF
Usage: yaz-config [OPTIONS] [LIBRARIES]
Options:
	[--prefix[=DIR]]
	[--version]
	[--libs]
	[--lalibs]
	[--cflags]
	[--comp]
Libraries:
	threads icu server
EOF
	exit $1
}

while test $# -gt 0; do
    case "$1" in
	-*=*) optarg=`echo "$1" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
	*) optarg= ;;
    esac
    
    case $1 in
	--prefix=*)
	    yazprefix=$optarg
	    ;;
	--prefix)
	    echo $yazprefix
	    exit 0
	    ;;
	--version)
	    echo $YAZVERSION
	    exit 0
	    ;;
	--cflags)
	    yaz_echo_cflags=yes
	    ;;
	--libs)
	    yaz_echo_libs=yes
	    ;;
	--lalibs)
	    yaz_echo_lalibs=yes
	    ;;
	--comp)
	    yaz_echo_comp=yes
	    ;;
	threads)
	    lib_thread=yes
	    ;;
	icu)
	    if test "$ICU_CPPFLAGS"; then
		lib_icu=yes
	    fi
	    ;;
	server)
	    lib_thread=yes
	    lib_server=yes
	    ;;
	static)
	    lib_static=yes
	    ;;
	-*)
	    yaz_echo_help=yes
	    ;;
    esac
    shift
done

lyaz="-lyaz"
if test "$lib_server" = "yes"; then
    lyaz="-lyaz_server $lyaz"
fi

if test "$lib_icu" = "yes"; then
    lyaz="-lyaz_icu $lyaz"
fi

YAZINC=" -DYAZ_HAVE_XML2=1 -DYAZ_HAVE_XSLT=1 -DYAZ_HAVE_EXSLT=1 -I/usr/include/libxml2  "

if test "$yaz_echo_source" = "yes"; then
    YAZBIN=${yaz_build_root}/bin

    if test "$lib_static" = "yes"; then
        YAZLIB="${yaz_build_root}/src/.libs/libyaz.a"
        if test "$lib_server" = "yes"; then
    	    YAZLIB="${yaz_build_root}/src/.libs/libyaz_server.a $YAZLIB"
        fi
    else
        YAZLIB="-L${yaz_build_root}/src/.libs $lyaz"
    fi
    YAZLIB="$YAZLIB ${SSL_LIBS} $LIBS"

    YAZLALIB="${yaz_build_root}/src/libyaz.la"
    if test "$lib_server" = "yes"; then
	YAZLALIB="${yaz_build_root}/src/libyaz_server.la $YAZLALIB"
    fi
    if test "$lib_icu" = "yes"; then
	YAZLALIB="${yaz_build_root}/src/libyaz_icu.la $YAZLALIB"
    fi
    YAZLALIB="$YAZLALIB $LIBS"

    YAZINC="-I${yaz_src_root}/include $YAZINC"
    YAZCOMP=${yaz_src_root}/util/yaz-asncomp
else
    YAZBIN=${yazprefix}/bin
    YAZCOMP=${yazprefix}/bin/yaz-asncomp

    if test "$yazprefix" != "/usr"; then
	YAZLIB="-L$yazprefix/lib"
    fi
    YAZLIB="$YAZLIB $lyaz $LIBS"
    YAZLALIB=$YAZLIB
    if test "$yazprefix" != "/usr"; then
	YAZINC="-I$yazprefix/include $YAZINC"
    fi
fi

if test "$lib_thread" = "yes"; then
    YAZINC="$PTHREAD_CFLAGS $YAZINC"
    YAZLIB="$YAZLIB $PTHREAD_LIBS"
    YAZLALIB="$YAZLALIB $PTHREAD_LIBS"
fi

if test "$lib_icu" = "yes"; then
    YAZINC="$YAZINC $ICU_CPPFLAGS"
    YAZLIB="$YAZLIB $ICU_LIBS"
    YAZLALIB="$YAZLALIB $ICU_LIBS"
fi

if test "$yaz_echo_help" = "yes"; then
    usage 1 1>&2
fi
if test "$yaz_echo_cflags" = "yes"; then
    echo $YAZINC
fi
if test "$yaz_echo_libs" = "yes"; then
    echo $YAZLIB
fi
if test "$yaz_echo_lalibs" = "yes"; then
    echo $YAZLALIB
fi
if test "$yaz_echo_comp" = "yes"; then
    echo $YAZCOMP
fi
# Local Variables:
# mode:shell-script
# sh-indentation: 2
# sh-basic-offset: 4
# End:
