7e15be0
#!/bin/sh
7e15be0
7e15be0
[ $# -lt 1 ] && echo "Usage: `basename $0` %{buildroot}%{ghclibdir} ..." && exit 1
7e15be0
7e15be0
set +x
7e15be0
7e15be0
PKGBASEDIR=$1
7e15be0
shift
7e15be0
PKGCONFDIR=$PKGBASEDIR/package.conf.d
7e15be0
GHC_VER=$(basename $PKGBASEDIR | sed -e s/ghc-//)
7e15be0
7e15be0
# for a ghc build use the new ghc-pkg
7e15be0
INPLACE_GHCPKG=$PKGBASEDIR/../../bin/ghc-pkg-$GHC_VER
7e15be0
7e15be0
if [ -x "$INPLACE_GHCPKG" ]; then
7e15be0
    case $GHC_VER in
7e15be0
        7.4.*)
7e15be0
            GHC_PKG="$PKGBASEDIR/ghc-pkg --global-conf=$PKGCONFDIR"
7e15be0
            ;;
7e15be0
        7.6.*)
7e15be0
            GHC_PKG="$PKGBASEDIR/ghc-pkg --global-package-db=$PKGCONFDIR"
7e15be0
            ;;
7e15be0
        # 7.8 and 7.10
7e15be0
        *)
5f6ff9c
            GHC_PKG="env LD_LIBRARY_PATH=$(dirname $PKGBASEDIR) $PKGBASEDIR/bin/ghc-pkg --global-package-db=$PKGCONFDIR"
7e15be0
            ;;
7e15be0
    esac
7e15be0
else
7e15be0
    GHC_PKG="/usr/bin/ghc-pkg-${GHC_VER} -f $PKGCONFDIR"
7e15be0
fi
7e15be0
5517c1f
$GHC_PKG -v0 --simple-output --global $* | uniq