From: Thomas Deutschmann <whissi@gentoo.org>
To: gentoo-dev@lists.gentoo.org
Subject: [gentoo-dev] [PATCH v2] eutils.eclass: Show death notice only when user patches were really applied
Date: Mon, 22 Aug 2016 19:29:03 +0200 [thread overview]
Message-ID: <20160822172903.103838-1-whissi@gentoo.org> (raw)
In-Reply-To: <20160821221448.61119-1-whissi@gentoo.org>
As part of the user requested feature from [Gentoo-Bug #543878]
eutils.eclass shows a warning regarding user applied patches in case of an
error [Link 1].
However this warning will always be shown even if no user patch were
applied at all (example: empty /etc/portage/<cat>/<pkg> directory).
This commit adds a new global variable "EPATCH_N_APPLIED_PATCHES" which
tracks the number of applied user patches. This allows us to only show the
notice when user patches were really applied.
Link: https://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/eclass/eutils.eclass?r1=1.443&r2=1.444
Gentoo-Bug: https://bugs.gentoo.org/543878
---
eclass/eutils.eclass | 12 +++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)
diff --git a/eclass/eutils.eclass b/eclass/eutils.eclass
index dbedffe..27b542c 100644
--- a/eclass/eutils.eclass
+++ b/eclass/eutils.eclass
@@ -292,6 +292,10 @@ EPATCH_OPTS=""
# -E - automatically remove empty files
# @CODE
EPATCH_COMMON_OPTS="-g0 -E --no-backup-if-mismatch"
+# @VARIABLE: EPATCH_N_APPLIED_PATCHES
+# @DESCRIPTION:
+# Counter variable which indicates how many patches were applied.
+EPATCH_N_APPLIED_PATCHES=0
# @VARIABLE: EPATCH_EXCLUDE
# @DESCRIPTION:
# List of patches not to apply. Note this is only file names,
@@ -595,6 +599,8 @@ epatch() {
: $(( count++ ))
done
+ (( EPATCH_N_APPLIED_PATCHES++ ))
+
# if we had to decompress the patch, delete the temp one
if [[ -n ${PIPE_CMD} ]] ; then
rm -f "${PATCH_TARGET}"
@@ -1736,13 +1742,17 @@ epatch_user() {
[[ -r ${EPATCH_SOURCE} ]] || EPATCH_SOURCE=${EPATCH_USER_SOURCE}/${CHOST}/${check}
[[ -r ${EPATCH_SOURCE} ]] || EPATCH_SOURCE=${EPATCH_USER_SOURCE}/${check}
if [[ -d ${EPATCH_SOURCE} ]] ; then
+ local old_n_applied_patches=${EPATCH_N_APPLIED_PATCHES}
EPATCH_SOURCE=${EPATCH_SOURCE} \
EPATCH_SUFFIX="patch" \
EPATCH_FORCE="yes" \
EPATCH_MULTI_MSG="Applying user patches from ${EPATCH_SOURCE} ..." \
epatch
echo "${EPATCH_SOURCE}" > "${applied}"
- has epatch_user_death_notice ${EBUILD_DEATH_HOOKS} || EBUILD_DEATH_HOOKS+=" epatch_user_death_notice"
+ if [[ ${old_n_applied_patches} -lt ${EPATCH_N_APPLIED_PATCHES} ]]; then
+ has epatch_user_death_notice ${EBUILD_DEATH_HOOKS} || \
+ EBUILD_DEATH_HOOKS+=" epatch_user_death_notice"
+ fi
return 0
fi
done
--
2.9.3
next prev parent reply other threads:[~2016-08-22 17:29 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-08-21 22:14 [gentoo-dev] [PATCH] eutils.eclass: Show death notice only when user patches were really applied Thomas Deutschmann
2016-08-22 7:30 ` Ulrich Mueller
2016-08-22 10:11 ` Thomas Deutschmann
2016-08-22 11:16 ` Ulrich Mueller
2016-08-22 11:48 ` Michał Górny
2016-08-22 17:29 ` Thomas Deutschmann [this message]
2016-08-23 17:25 ` [gentoo-dev] [PATCH v3] " Thomas Deutschmann
2016-08-23 17:25 ` Thomas Deutschmann
2016-08-31 16:46 ` Thomas Deutschmann
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20160822172903.103838-1-whissi@gentoo.org \
--to=whissi@gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox