From b2d82b0523af1f6a75c100b1744daf2b1ca360b2 Mon Sep 17 00:00:00 2001 From: Jeremy Olexa Date: Tue, 27 Mar 2012 15:20:15 +0000 Subject: [PATCH] prefix: portage some mods from prefix-portage to trunk --- bin/ebuild-helpers/dosym | 5 ++++- bin/ebuild-helpers/fowners | 5 +++++ bin/ebuild-helpers/prepallman | 3 +++ 3 files changed, 12 insertions(+), 1 deletions(-) diff --git a/bin/ebuild-helpers/dosym b/bin/ebuild-helpers/dosym index 5e41ec4..4286eef 100755 --- a/bin/ebuild-helpers/dosym +++ b/bin/ebuild-helpers/dosym @@ -20,8 +20,11 @@ fi destdir=${2%/*} [[ ! -d ${ED}${destdir} ]] && dodir "${destdir}" +# when absolute, prefix with offset for Gentoo Prefix +target="${1}" +[[ ${target:0:1} == "/" ]] && target="${EPREFIX}${target}" +ln -snf "${target}" "${ED}${2}" -ln -snf "$1" "${ED}$2" ret=$? [[ $ret -ne 0 ]] && helpers_die "${0##*/} failed" exit $ret diff --git a/bin/ebuild-helpers/fowners b/bin/ebuild-helpers/fowners index a5a28f2..84a6f6c 100755 --- a/bin/ebuild-helpers/fowners +++ b/bin/ebuild-helpers/fowners @@ -7,6 +7,11 @@ source "${PORTAGE_BIN_PATH:-/usr/lib/portage/bin}"/isolated-functions.sh [[ " ${FEATURES} " == *" force-prefix "* ]] || \ case "$EAPI" in 0|1|2) ED=${D} ;; esac +if has prefix ${USE} && [[ $EUID != 0 ]] ; then + ewarn "fowners ignored in Prefix with non-privileged user" + exit 0 +fi + # we can't prefix all arguments because # chown takes random options slash="/" diff --git a/bin/ebuild-helpers/prepallman b/bin/ebuild-helpers/prepallman index dee1c72..eeebc90 100755 --- a/bin/ebuild-helpers/prepallman +++ b/bin/ebuild-helpers/prepallman @@ -12,6 +12,9 @@ has "${EAPI}" 0 1 2 3 || exit 0 ret=0 +# ED needs not to exist, wheras D does +[[ -d ${ED} ]] || exit ${ret} + find "${ED}" -type d -name man > "${T}"/prepallman.filelist while read -r mandir ; do mandir=${mandir#${ED}} -- 1.7.3.4