commit: b21e386a064e1ed49981d9527f968ddc5e1eeb86
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Fri Aug 10 23:46:23 2018 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sat Aug 18 23:28:04 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b21e386a
epatch.eclass: drop 'estack.eclass' usage
Avoid use of eshopts_push / eshopts_pop functions
as they don't preserve expand_aliases shell option
and get detected by QA warning as:
* QA Notice: Global shell options changed and were
not restored while calling 'src_prepare'
Ssee bug #662586 for details.
Tested as:
$ EPATCH_USER_EXCLUDE="*" ebuild gcc-8.2.0.ebuild clean prepare
Bug: https://bugs.gentoo.org/662586
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
eclass/epatch.eclass | 11 +++++------
1 file changed, 5 insertions(+), 6 deletions(-)
diff --git a/eclass/epatch.eclass b/eclass/epatch.eclass
index da936413677..1ea657a3b6f 100644
--- a/eclass/epatch.eclass
+++ b/eclass/epatch.eclass
@@ -19,8 +19,6 @@ case ${EAPI:-0} in
die "${ECLASS}: banned in EAPI=${EAPI}; use eapply* instead";;
esac
-inherit estack
-
# @VARIABLE: EPATCH_SOURCE
# @DESCRIPTION:
# Default directory to search for patches.
@@ -211,13 +209,14 @@ epatch() {
# Let people filter things dynamically
if [[ -n ${EPATCH_EXCLUDE}${EPATCH_USER_EXCLUDE} ]] ; then
# let people use globs in the exclude
- eshopts_push -o noglob
+ local prev_noglob=$(shopt -p -o noglob)
+ set -o noglob
local ex
for ex in ${EPATCH_EXCLUDE} ; do
if [[ ${patchname} == ${ex} ]] ; then
einfo " Skipping ${patchname} due to
EPATCH_EXCLUDE ..."
- eshopts_pop
+ ${prev_noglob}
continue 2
fi
done
@@ -225,12 +224,12 @@ epatch() {
for ex in ${EPATCH_USER_EXCLUDE} ; do
if [[ ${patchname} == ${ex} ]] ; then
einfo " Skipping ${patchname} due to
EPATCH_USER_EXCLUDE ..."
- eshopts_pop
+ ${prev_noglob}
continue 2
fi
done
- eshopts_pop
+ ${prev_noglob}
fi
if [[ ${SINGLE_PATCH} == "yes" ]] ; then