#!/bin/sh

MYDIR=`dirname $0`

pushd "$MYDIR" >/dev/null
MYDIR=`pwd`
popd >/dev/null

function usage {
    cat >&2 <<EOF
$0: usage:
$0 <gq-topdir>
    <gq-topdir> names the top directory of the gq source distribution

This script modifies the gq source to take care of the languages that
come with it.
It MUST be called prior to configuring gq.
EOF
}

DIR=$1
if [ "$DIR" = "" ] ; then
    usage $0
    exit 1
fi

pushd "$DIR" >/dev/null
DIR=`pwd`
popd >/dev/null

# copy po files

if [ "$DIR" != "$MYDIR" ]; then
    echo -n "copying po files: "
    for A in "$MYDIR"/po/*.po; do
	PO=`basename $A .po`
	cp $A "$DIR/po" || (echo Error ; exit 2)
	echo -n "$PO "
    done
    echo
fi

# collect languages

echo -n "collecting languages: "

ALL_LINGUAS=""
for A in "$DIR"/po/*.po; do
    PO=`basename $A .po`
    echo -n "$PO "

    if [ "$ALL_LINGUAS" = "" ] ; then
	ALL_LINGUAS="$PO"
    else 
	ALL_LINGUAS="$ALL_LINGUAS $PO"
    fi
done
echo

# fix necessary files. This is brutal, but automake does not give me a
# better chance

echo -n "fixing files: "

for FILE in "$DIR/configure" "$DIR/configure.in" ; do
    echo -n "$FILE "

    if sed 's/ALL_LINGUAS=.*$/ALL_LINGUAS="'"$ALL_LINGUAS"'"/' < $FILE > $FILE.fixed
    then
	touch -r "$FILE" "$FILE.fixed"
	mv "$FILE.fixed" "$FILE"
    else
	echo >&2 Could not fix "$FILE"
    fi
done
chmod +x $DIR/configure

echo