#!/bin/sh

prefix=@prefix@
exec_prefix=@exec_prefix@
exec_prefix_set=no

usage()
{
	cat <<EOF
Usage: glib-config [OPTIONS] [LIBRARIES]
Options:
	[--prefix[=DIR]]
	[--exec-prefix[=DIR]]
	[--version]
	[--libs]
	[--cflags]
Libraries:
	glib
	gmodule
	gthread
EOF
	exit $1
}

if test $# -eq 0; then
	usage 1 1>&2
fi

lib_glib=yes

while test $# -gt 0; do
  case "$1" in
  -*=*) optarg=`echo "$1" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
  *) optarg= ;;
  esac

  case $1 in
    --prefix=*)
      prefix=$optarg
      if test $exec_prefix_set = no ; then
        exec_prefix=$optarg
      fi
      ;;
    --prefix)
      echo_prefix=yes
      ;;
    --exec-prefix=*)
      exec_prefix=$optarg
      exec_prefix_set=yes
      ;;
    --exec-prefix)
      echo_exec_prefix=yes
      ;;
    --version)
      echo @GLIB_VERSION@
      exit 0
      ;;
    --cflags)
      if test "@includedir@" != /usr/include ; then
        includes="-I@includedir@"
      fi
      echo_cflags=yes
      ;;
    --libs)
      echo_libs=yes
      ;;
    glib)
      lib_glib=yes
      ;;
    gmodule)
      lib_gmodule=yes
      ;;
    gthread)
      lib_gthread=yes
      ;;
    *)
      usage 1 1>&2
      ;;
  esac
  shift
done

if test "$echo_prefix" = "yes"; then
	echo $prefix
fi
if test "$echo_exec_prefix" = "yes"; then
	echo $exec_prefix
fi
if test "$echo_cflags" = "yes"; then
	cflags=""
	if test "$lib_gthread" = "yes"; then
		cflags="$cflags @G_THREAD_CFLAGS@"
	fi
	echo -I@libdir@/glib/include $includes $cflags
fi
if test "$echo_libs" = "yes"; then
	libsp=""
	libsa=""
	if test "$lib_glib" = "yes"; then
		libsp="$libsp -lglib"
	fi
	if test "$lib_gthread" = "yes"; then
		libsp="-lgthread $libsp"
		libsa="$libsa @G_THREAD_LIBS@"
	fi
	if test "$lib_gmodule" = "yes"; then
		libsp="@G_MODULE_LDFLAGS@ -lgmodule $libsp"
		libsa="$libsa @G_MODULE_LIBS@"
	fi
	echo -L@libdir@ $libsp $libsa
fi
