Add new dodoc implementation for EAPI 3. Thanks to to Tiziano Müller
authorZac Medico <zmedico@gentoo.org>
Tue, 21 Apr 2009 07:14:28 +0000 (07:14 -0000)
committerZac Medico <zmedico@gentoo.org>
Tue, 21 Apr 2009 07:14:28 +0000 (07:14 -0000)
<dev-zero@g.o> for this patch.

svn path=/main/trunk/; revision=13382

bin/ebuild-helpers/3/dodoc [new file with mode: 0644]

diff --git a/bin/ebuild-helpers/3/dodoc b/bin/ebuild-helpers/3/dodoc
new file mode 100644 (file)
index 0000000..f8aeaf7
--- /dev/null
@@ -0,0 +1,50 @@
+#!/bin/bash
+# Copyright 1999-2009 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+source "${PORTAGE_BIN_PATH:-/usr/lib/portage/bin}"/isolated-functions.sh
+
+if [ $# -lt 1 ] ; then
+       vecho "${0##*/}: at least one argument needed" 1>&2
+       exit 1
+fi
+
+dir="${D}usr/share/doc/${PF}/${_E_DOCDESTTREE_}"
+if [ ! -d "${dir}" ] ; then
+       install -d "${dir}"
+fi
+
+ret=0
+
+DOINSRECUR="n"
+
+if [[ "$1" == "-r" ]] ; then
+       DOINSRECUR="y"
+       shift
+fi
+
+for x in "$@" ; do
+
+       if [ -d "${x}" ] ; then
+               if [[ ${DOINSRECUR} == "n" ]] ; then
+                       continue
+               fi
+
+               find "${x}" -mindepth 1 -maxdepth 1 -exec \
+                       env \
+                               _E_DOCDESTTREE_="$(basename "${x}")" \
+                               ${0} -r {} \;
+
+       elif [ -s "${x}" ] ; then
+               install -m0644 "${x}" "${dir}"
+               ecompress --queue "${dir}/${x##*/}"
+
+       elif [ ! -e "${x}" ] ; then
+               echo "!!! ${0##*/}: $x does not exist" 1>&2
+               ((++ret))
+       fi
+
+done
+
+exit ${ret}