#!/bin/sh

# xmms-config
#
# Tool for retrieving the library/include paths XMMS was compiled with.
#
# Useful for folks compiling their own XMMS plugins outside the main
# source tree.
#
# Written 15 December 1999 by Ben Gertzfield <che@debian.org>
# Based *HEAVILY* on gtk-config from the GTK+ library package.
#
# This work is released under the GNU GPL, version 2 or later.

prefix="/usr/local"
exec_prefix="${prefix}"
exec_prefix_set=no
data_dir="${prefix}/share/xmms"

version="1.2.10"
include_dir="${prefix}/include"
xmms_include_dir="${prefix}/include/xmms"
lib_dir="${exec_prefix}/lib"

if ( (gtk-config --version) > /dev/null 2>&1)  then
   gtk_libs=`gtk-config --libs`
   gtk_cflags=`gtk-config --cflags`
else
   gtk_libs="-L/usr/local/lib -L/usr/X11R6/lib -lgtk -lgdk -Wl,-E -lgmodule -lgthread -lglib -lpthread -lintl -liconv -lXi -lXext -lX11 -lm"
   gtk_cflags="-I/usr/local/include/gtk-1.2 -I/usr/local/include/glib-1.2 -D_REENTRANT -D_THREAD_SAFE -I/usr/X11R6/include"
fi

plugin_dir="${exec_prefix}/lib/xmms"
visualization_plugin_dir="${exec_prefix}/lib/xmms/Visualization"
input_plugin_dir="${exec_prefix}/lib/xmms/Input"
output_plugin_dir="${exec_prefix}/lib/xmms/Output"
effect_plugin_dir="${exec_prefix}/lib/xmms/Effect"
general_plugin_dir="${exec_prefix}/lib/xmms/General"

usage()
{
    cat <<EOF
Usage: xmms-config [OPTIONS]
Options:
    [--prefix[=DIR]]
    [--exec-prefix[=DIR]]
    [--version]
    [--libs]
    [--cflags]
    [--data-dir]
    [--plugin-dir]
    [--visualization-plugin-dir]
    [--input-plugin-dir]
    [--output-plugin-dir]
    [--effect-plugin-dir]
    [--general-plugin-dir]

EOF
    exit $1
}

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


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 $version
	    ;;

	--cflags)
	    echo_cflags=yes
	    ;;

	--libs)
	    echo_libs=yes
	    ;;

	--data-dir)
	    echo_data_dir=yes
	    ;;

	--plugin-dir)
	    echo_plugin_dir=yes
	    ;;

	--visualization-plugin-dir)
	    echo_visualization_plugin_dir=yes
	    ;;

	--input-plugin-dir)
	    echo_input_plugin_dir=yes
	    ;;

	--output-plugin-dir)
	    echo_output_plugin_dir=yes
	    ;;

	--general-plugin-dir)
	    echo_general_plugin_dir=yes
	    ;;

	--effect-plugin-dir)
	    echo_effect_plugin_dir=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 "$include_dir" != "/usr/include"; then
    cflags="-I$include_dir -I$xmms_include_dir $gtk_cflags"
else
    cflags="-I$xmms_include_dir $gtk_cflags"
fi

if test "$lib_dir" != "/usr/lib"; then
    libs="-L$lib_dir $gtk_libs -lxmms"
else
    libs="$gtk_libs -lxmms"
fi

if test "$echo_cflags" = "yes"; then
    echo $cflags
fi

if test "$echo_libs" = "yes"; then
    echo $libs
fi

if test "$echo_data_dir" = "yes"; then
    echo $data_dir
fi

if test "$echo_plugin_dir" = "yes"; then
    echo $plugin_dir
fi

if test "$echo_visualization_plugin_dir" = "yes"; then
    echo $visualization_plugin_dir
fi

if test "$echo_input_plugin_dir" = "yes"; then
    echo $input_plugin_dir
fi

if test "$echo_output_plugin_dir" = "yes"; then
    echo $output_plugin_dir
fi

if test "$echo_general_plugin_dir" = "yes"; then
    echo $general_plugin_dir
fi

if test "$echo_effect_plugin_dir" = "yes"; then
    echo $effect_plugin_dir
fi
