#!/bin/bash
# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2

source "${PORTAGE_BIN_PATH:-/usr/lib/portage/bin}"/isolated-functions.sh

[[ " ${FEATURES} " == *" force-prefix "* ]] || \
	case "$EAPI" in 0|1|2) ED=${D} ;; esac

if [[ -z $1 ]] ; then
	infodir="/usr/share/info"
else
	if [[ -d ${ED}$1/share/info ]] ; then
		infodir="$1/share/info"
	else
		infodir="$1/info"
	fi
fi

if [[ ! -d ${ED}${infodir} ]] ; then
	if [[ -n $1 ]] ; then
		vecho "${0##*/}: '${infodir}' does not exist!"
		exit 1
	else
		exit 0
	fi
fi

find "${ED}${infodir}" -type d -print0 | while read -r -d $'\0' x ; do
	for f in "${x}"/.keepinfodir*; do
		[[ -e ${f} ]] && continue 2
	done
	rm -f "${x}"/dir{,.info}{,.gz,.bz2}
done

has "${EAPI}" 0 1 2 3 || exit 0
exec ecompressdir --queue "${infodir}"
