diff options
author | Zac Medico <zmedico@gentoo.org> | 2012-09-01 16:08:16 -0700 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2012-09-01 16:08:16 -0700 |
commit | 0c89363dfe8afd98e67b8916ae8233904026493f (patch) | |
tree | 652a5554133bf9cf380ed29e063c3cb4fa429270 /bin/ebuild-helpers/bsd/sed | |
parent | 0b657f683f8498de59cf254dfb016bf313930b1d (diff) | |
download | portage-0c89363dfe8afd98e67b8916ae8233904026493f.tar.gz portage-0c89363dfe8afd98e67b8916ae8233904026493f.tar.bz2 portage-0c89363dfe8afd98e67b8916ae8233904026493f.zip |
ebuild-helpers/sed: move to bsd subdirectory
This helps to prevent inappropriate use of the sed wrapper on GNU
systems, which commonly occurs when users install portage manually
during recovery situations.
Diffstat (limited to 'bin/ebuild-helpers/bsd/sed')
-rwxr-xr-x | bin/ebuild-helpers/bsd/sed | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/bin/ebuild-helpers/bsd/sed b/bin/ebuild-helpers/bsd/sed new file mode 100755 index 000000000..cc447696d --- /dev/null +++ b/bin/ebuild-helpers/bsd/sed @@ -0,0 +1,27 @@ +#!/bin/bash +# Copyright 2007-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +scriptpath=${BASH_SOURCE[0]} +scriptname=${scriptpath##*/} + +if [[ sed == ${scriptname} ]] && [[ -n ${ESED} ]]; then + exec ${ESED} "$@" +elif type -P g${scriptname} > /dev/null ; then + exec g${scriptname} "$@" +else + old_IFS="${IFS}" + IFS=":" + + for path in $PATH; do + if [[ -x ${path}/${scriptname} ]]; then + [[ ${path}/${scriptname} -ef ${scriptpath} ]] && continue + exec ${path}/${scriptname} "$@" + exit 0 + fi + done + + IFS="${old_IFS}" +fi + +exit 1 |