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

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

mynum=${#}
if [ ${mynum} -lt 1 ] ; then
	__helpers_die "${0}: at least one argument needed"
	exit 1
fi

if ! ___eapi_has_prefix_variables; then
	ED=${D}
fi

if [ ! -d "${ED}${DESTTREE}/share/locale" ] ; then
	install -d "${ED}${DESTTREE}/share/locale/"
fi

ret=0

for x in "$@" ; do
	if [ -e "${x}" ] ; then
		mytiny="${x##*/}"
		mydir="${ED}${DESTTREE}/share/locale/${mytiny%.*}/LC_MESSAGES"
		if [ ! -d "${mydir}" ] ; then
			install -d "${mydir}"
		fi
		install -m0644 "${x}" "${mydir}/${MOPREFIX}.mo"
	else
		echo "!!! ${0##*/}: $x does not exist" 1>&2
		false
	fi
	((ret|=$?))
done

[[ $ret -ne 0 ]] && __helpers_die "${0##*/} failed"
exit $ret
