summaryrefslogtreecommitdiffstats
path: root/bin/ebuild-helpers/dodoc
blob: 2b0533febbd1fbbda2e8e3c4efb04c0c1df69057 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#!/bin/bash
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2

case "${EAPI}" in
	0|1|2|3)
		;;
	*)
		exec \
		env \
		__PORTAGE_HELPER="dodoc" \
		doins "$@"
		;;
esac

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

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

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

dir="${ED}usr/share/doc/${PF}/${_E_DOCDESTTREE_}"
if [ ! -d "${dir}" ] ; then
	install -d "${dir}"
fi

ret=0
for x in "$@" ; do
	if [ -d "${x}" ] ; then
		eqawarn "QA Notice: dodoc argument '${x}' is a directory"
	elif [ -s "${x}" ] ; then
		install -m0644 "${x}" "${dir}" || { ((ret|=1)); continue; }
		ecompress --queue "${dir}/${x##*/}"
	elif [ ! -e "${x}" ] ; then
		echo "!!! ${0##*/}: $x does not exist" 1>&2
		((ret|=1))
	fi
done

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