commit:     15b84985370820af47247eef7ca3fdb7676ab987
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Thu Mar  8 19:50:51 2018 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Thu Mar  8 21:49:45 2018 +0000
URL:        https://gitweb.gentoo.org/proj/portage.git/commit/?id=15b84985

ebuild-helpers: Fix overriding 'insinto' directory

Closes: https://bugs.gentoo.org/649946
Reviewed-by: Zac Medico <zmedico <AT> gentoo.org>

 bin/ebuild-helpers/doconfd  | 9 +++++++--
 bin/ebuild-helpers/doenvd   | 9 +++++++--
 bin/ebuild-helpers/doheader | 6 +++++-
 3 files changed, 19 insertions(+), 5 deletions(-)

diff --git a/bin/ebuild-helpers/doconfd b/bin/ebuild-helpers/doconfd
index 38cf58234..15ad980f3 100755
--- a/bin/ebuild-helpers/doconfd
+++ b/bin/ebuild-helpers/doconfd
@@ -2,10 +2,15 @@
 # Copyright 1999-2018 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 
+source "${PORTAGE_BIN_PATH}"/isolated-functions.sh || exit 1
+
 if [[ $# -lt 1 ]] ; then
-       source "${PORTAGE_BIN_PATH}"/isolated-functions.sh || exit 1
        __helpers_die "${0##*/}: at least one argument needed"
        exit 1
 fi
 
-_E_INSDESTTREE_='/etc/conf.d/' exec doins "$@"
+export _E_INSDESTTREE_='/etc/conf.d/'
+if ___eapi_has_DESTTREE_INSDESTTREE; then
+       export INSDESTTREE=${_E_INSDESTTREE_}
+fi
+exec doins "$@"

diff --git a/bin/ebuild-helpers/doenvd b/bin/ebuild-helpers/doenvd
index a15cec7f2..f14b95104 100755
--- a/bin/ebuild-helpers/doenvd
+++ b/bin/ebuild-helpers/doenvd
@@ -2,10 +2,15 @@
 # Copyright 1999-2018 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 
+source "${PORTAGE_BIN_PATH}"/isolated-functions.sh || exit 1
+
 if [[ $# -lt 1 ]] ; then
-       source "${PORTAGE_BIN_PATH}"/isolated-functions.sh || exit 1
        __helpers_die "${0##*/}: at least one argument needed"
        exit 1
 fi
 
-_E_INSDESTTREE_='/etc/env.d/' exec doins "$@"
+export _E_INSDESTTREE_='/etc/env.d/'
+if ___eapi_has_DESTTREE_INSDESTTREE; then
+       export INSDESTTREE=${_E_INSDESTTREE_}
+fi
+exec doins "$@"

diff --git a/bin/ebuild-helpers/doheader b/bin/ebuild-helpers/doheader
index 03bf23b1c..aedc2322a 100755
--- a/bin/ebuild-helpers/doheader
+++ b/bin/ebuild-helpers/doheader
@@ -13,4 +13,8 @@ if [[ $# -lt 1 ]] || [[ $1 == -r && $# -lt 2 ]] ; then
        exit 1
 fi
 
-_E_INSDESTTREE_='/usr/include/' exec doins "$@"
+export _E_INSDESTTREE_='/usr/include/'
+if ___eapi_has_DESTTREE_INSDESTTREE; then
+       export INSDESTTREE=${_E_INSDESTTREE_}
+fi
+exec doins "$@"

Reply via email to