summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2009-04-30 07:22:59 +0000
committerZac Medico <zmedico@gentoo.org>2009-04-30 07:22:59 +0000
commit3962f9289164449e496c7ca9dd4ffe4b70aae1c5 (patch)
treed6bbe8ba595bc03c95e46a94efe1be743b8f5735
parentIn ebuild_main(), unset ebuild_helpers_path when finished with it, since (diff)
downloadportage-multirepo-3962f9289164449e496c7ca9dd4ffe4b70aae1c5.tar.gz
portage-multirepo-3962f9289164449e496c7ca9dd4ffe4b70aae1c5.tar.bz2
portage-multirepo-3962f9289164449e496c7ca9dd4ffe4b70aae1c5.zip
Add new dodoc implementation for EAPI 3. Thanks to to Tiziano Müller
<dev-zero@g.o> for this patch. (trunk r13382) svn path=/main/branches/2.1.6/; revision=13534
-rw-r--r--bin/ebuild-helpers/3/dodoc50
1 files changed, 50 insertions, 0 deletions
diff --git a/bin/ebuild-helpers/3/dodoc b/bin/ebuild-helpers/3/dodoc
new file mode 100644
index 00000000..f8aeaf76
--- /dev/null
+++ b/bin/ebuild-helpers/3/dodoc
@@ -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}