#! /bin/sh
# prerm script for foo
#
# see: dh_installdeb(1)

set -e

# summary of how this script can be called:
#        * <prerm> `remove'
#        * <old-prerm> `upgrade' <new-version>
#        * <new-prerm> `failed-upgrade' <old-version>
#        * <conflictor's-prerm> `remove' `in-favour' <package> <new-version>
#        * <deconfigured's-prerm> `deconfigure' `in-favour'
#          <package-being-installed> <version> `removing'
#          <conflicting-package> <version>
# for details, see /usr/share/doc/packaging-manual/

case "$1" in
    remove|upgrade|deconfigure)
	# Adjust the current ICU link in /usr/lib/icu

	if [ -d /usr/lib/icu ]
	then

	icucurrent=`2>/dev/null ls -dp /usr/lib/icu/* | sed -n -e '/\/@VERSION@\//d' -e 's,.*/\([^/]*\)/$,\1,p' | head -1`
	cd /usr/lib/icu
	rm -f current
	if test x"$icucurrent" != x
	then
	    ln -s "$icucurrent" current
	fi

	fi
#       install-info --quiet --remove /usr/info/foo.info.gz
        ;;
    failed-upgrade)
        ;;
    *)
        echo "prerm called with unknown argument \`$1'" >&2
        exit 0
    ;;
esac

# dh_installdeb will replace this with shell code automatically
# generated by other debhelper scripts.

#DEBHELPER#

exit 0


