#!/bin/sh

XINPUT=yes
XCONFIG=$1/qmake.conf
VERBOSE=$2
shift 2
IN_LIBDIRS=""
IN_INCDIRS=""
PARAMS=$@
for PARAM in $PARAMS; do
    PREFIX=`echo $PARAM | sed 's/^\(..\).*/\1/'`
    case $PREFIX in
    -L)
	CLIBDIR=`echo $PARAM | sed -e 's/^-L//'`
	IN_LIBDIRS="$IN_LIBDIRS $CLIBDIR"
	;;
    -I)
        CINCDIR=`echo $PARAM | sed -e 's/^-I//'`
        IN_INCDIRS="$IN_INCDIRS $CINCDIR"
        ;;
    *) ;;
    esac 
done

# debuggery
[ "$VERBOSE" = "yes" ] && echo "XInput auto-detection... ($*)"

# check for the XInput library
XDIRS=`sed -n -e '/^QMAKE_LIBDIR_X11[	]*=/ { s/[^=]*=[	 ]*//; s/-L/ /g; p; }' $XCONFIG`
LIBDIRS="$IN_LIBDIRS $XDIRS /usr/shlib /usr/lib /lib"
F=
for LIBDIR in $LIBDIRS; do
    FOUND_LIB=`ls $LIBDIR/libXi.* 2>/dev/null`
    if [ ! -z "$FOUND_LIB" ]; then
	F=yes
	[ "$VERBOSE" = "yes" ] && echo "  Found XInput lib in $LIBDIR"
	break
     fi
done
if [ -z "$F" ]; then
    XINPUT=no
    [ "$VERBOSE" = "yes" ] && echo "  Could not find XInput lib anywhere in $LIBDIRS"
fi

# check for XInput.h and wacom.h
if [ "$XINPUT" = "yes" ]; then
    INCS="X11/extensions/XInput.h wacom.h"
    XDIRS=`sed -n -e '/^QMAKE_INCDIR_X11[	]*=/ { s/[^=]*=[	 ]*//; s/-I/ /g; p; }' $XCONFIG`
    INCDIRS="$IN_INCDIRS $XDIRS /usr/include /include"

    for I in $INCS; do
	F=
	for INCDIR in $INCDIRS; do
	    if [ -f $INCDIR/$I ]; then
		F=yes
		[ "$VERBOSE" = "yes" ] && echo "  Found $I in $INCDIR"
		break
	    fi
	done
	if [ -z "$F" ]; then
	    XINPUT=no
	    [ "$VERBOSE" = "yes" ] && echo "  Could not find $I anywhere in $INCDIRS"
	fi
    done
fi

# done
if [ "$XINPUT" != "yes" ]; then
    [ "$VERBOSE" = "yes" ] && echo "XInput disabled."
    exit 0
else
    [ "$VERBOSE" = "yes" ] && echo "XInput enabled."
    exit 1
fi
