diff options
author | Zac Medico <zmedico@gentoo.org> | 2011-04-11 18:09:20 -0700 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2011-04-11 18:09:20 -0700 |
commit | de9a536f470919651e83ece51923594e8605781b (patch) | |
tree | da16bc361a3dbb4858ddea66c92f2cd29a332d83 | |
parent | 2e334d77e3d1836ab6ba5dfc1700e90f9599d4d3 (diff) | |
download | portage-de9a536f470919651e83ece51923594e8605781b.tar.gz portage-de9a536f470919651e83ece51923594e8605781b.tar.bz2 portage-de9a536f470919651e83ece51923594e8605781b.zip |
doins: tweak $DISTDIR symlink handling
Only match stuff inside $PORTAGE_ACTUAL_DISTDIR/ so that we don't
stray from PMS.
-rwxr-xr-x | bin/ebuild-helpers/doins | 5 | ||||
-rw-r--r-- | pym/portage/package/ebuild/doebuild.py | 2 |
2 files changed, 4 insertions, 3 deletions
diff --git a/bin/ebuild-helpers/doins b/bin/ebuild-helpers/doins index 3daa9a01a..bcef3118f 100755 --- a/bin/ebuild-helpers/doins +++ b/bin/ebuild-helpers/doins @@ -59,9 +59,10 @@ _doins() { # not be reproduced inside $D. In order to ensure # that things like dodoc "$DISTDIR"/foo.pdf work # as expected, we dereference symlinked files that - # are referenced by absolute paths. + # refer to absolute paths inside + # $PORTAGE_ACTUAL_DISTDIR/. if [ $PRESERVE_SYMLINKS = y ] && \ - ! [[ -f "$mysrc" && $(readlink "$mysrc") == /* ]] ; then + ! [[ $(readlink "$mysrc") == "$PORTAGE_ACTUAL_DISTDIR"/* ]] ; then rm -rf "$D$INSDESTTREE/$mydir/${mysrc##*/}" || return $? cp -P "$mysrc" "$D$INSDESTTREE/$mydir/${mysrc##*/}" return $? diff --git a/pym/portage/package/ebuild/doebuild.py b/pym/portage/package/ebuild/doebuild.py index 3d0317160..f353166d7 100644 --- a/pym/portage/package/ebuild/doebuild.py +++ b/pym/portage/package/ebuild/doebuild.py @@ -786,7 +786,7 @@ def doebuild(myebuild, mydo, myroot, mysettings, debug=0, listonly=0, # remove PORTAGE_ACTUAL_DISTDIR once cvs/svn is supported via SRC_URI if tree == 'porttree' and \ ((mydo != "setup" and "noauto" not in features) \ - or mydo == "unpack"): + or mydo in ("install", "unpack")): _prepare_fake_distdir(mysettings, alist) #initial dep checks complete; time to process main commands |