diff options
Diffstat (limited to 'bin/prepinfo')
-rwxr-xr-x | bin/prepinfo | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/bin/prepinfo b/bin/prepinfo new file mode 100755 index 000000000..65bfba32c --- /dev/null +++ b/bin/prepinfo @@ -0,0 +1,45 @@ +#!/bin/bash +# Copyright 1999-2004 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-src/portage/bin/prepinfo,v 1.6.2.1 2005/05/29 12:40:08 jstubbs Exp $ + +if [ -z "$1" ] ; then + z="${D}usr/share/info" +else + if [ -d "${D}$1/share/info" ] ; then + z="${D}$1/share/info" + else + z="${D}$1/info" + fi +fi + +[ ! -d "${z}" ] && exit 0 + +rm -f "${z}"/{dir,dir.info,dir.info.gz} + +for x in `find "${z}"/ -mindepth 1 -maxdepth 1 \( -type f -or -type l \) 2>/dev/null` ; do + if [ -L "${x}" ] ; then + # Symlink ... + mylink="${x}" + linkto="`readlink "${x}"`" + + if [ "${linkto##*.}" != "gz" ] ; then + linkto="${linkto}.gz" + fi + if [ "${mylink##*.}" != "gz" ] ; then + mylink="${mylink}.gz" + fi + + echo "fixing GNU info symlink: ${mylink##*/}" + ln -snf "${linkto}" "${mylink}" + if [ "${x}" != "${mylink}" ] ; then + echo "removing old symlink: ${x##*/}" + rm -f "${x}" + fi + else + if [ "${x##*.}" != "gz" ] ; then + echo "gzipping GNU info page: ${x##*/}" + gzip -f -9 "${x}" + fi + fi +done |