summaryrefslogtreecommitdiffstats
path: root/bin/ebuild-helpers/newins
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2009-10-17 21:20:34 +0000
committerZac Medico <zmedico@gentoo.org>2009-10-17 21:20:34 +0000
commit630489db115d06de12dfcfb0d9f81a11dfbc6b08 (patch)
treec9955fad4dfb086dd87f6797256a569e6328d57a /bin/ebuild-helpers/newins
parent55cd5a52e0101676a46d2e8fbff4eff11ae2b73c (diff)
downloadportage-630489db115d06de12dfcfb0d9f81a11dfbc6b08.tar.gz
portage-630489db115d06de12dfcfb0d9f81a11dfbc6b08.tar.bz2
portage-630489db115d06de12dfcfb0d9f81a11dfbc6b08.zip
Bug #273636 - Add doins and newins support for symlink preservation in
EAPI 3. Thanks to Jonathan Callen <abcd@g.o> for the initial patch (I added EAPI conditionals in order to share code between all EAPIs). svn path=/main/trunk/; revision=14625
Diffstat (limited to 'bin/ebuild-helpers/newins')
-rwxr-xr-xbin/ebuild-helpers/newins11
1 files changed, 9 insertions, 2 deletions
diff --git a/bin/ebuild-helpers/newins b/bin/ebuild-helpers/newins
index f235835a2..d15006d02 100755
--- a/bin/ebuild-helpers/newins
+++ b/bin/ebuild-helpers/newins
@@ -1,5 +1,5 @@
#!/bin/bash
-# Copyright 1999-2006 Gentoo Foundation
+# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
@@ -14,7 +14,14 @@ if [ ! -e "$1" ] ; then
fi
rm -rf "${T}/${2}" || exit $?
-cp -f "${1}" "${T}/${2}" || exit $?
+case "$EAPI" in
+ 0|1|2)
+ cp "$1" "$T/$2" || exit $?
+ ;;
+ *)
+ cp -P "$1" "$T/$2" || exit $?
+ ;;
+esac
doins "${T}/${2}"
ret=$?
rm -rf "${T}/${2}"