#!/usr/bin/env bash
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

source "${PORTAGE_BIN_PATH:?}"/isolated-functions.sh || exit

if ! ___eapi_has_domo; then
	die "'${0##*/}' has been banned for EAPI '${EAPI}'"
	exit 1
fi

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 ! ___eapi_has_DESTTREE_INSDESTTREE; then
	[[ -n ${DESTTREE} ]] &&
		die "${0##*/}: \${DESTTREE} has been banned for EAPI '${EAPI}'; use 'into' instead"
else
	# backwards compatibility
	__E_DESTTREE=${DESTTREE}
fi

# newer EAPIs force /usr consistently with other /usr/share helpers
if ! ___eapi_domo_respects_into; then
	__E_DESTTREE=/usr
fi

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

ret=0

for x in "$@" ; do
	if [ -e "${x}" ] ; then
		mytiny="${x##*/}"
		mydir="${ED%/}/${__E_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}
