commit:     45e18362449d6630cc3036b9595b39c73ee5b9fa
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Fri Nov 27 14:44:48 2015 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Tue Dec  1 22:07:17 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=45e18362

systemd.eclass: Allow systemd_update_catalog only during pkg_post*

 eclass/systemd.eclass | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/eclass/systemd.eclass b/eclass/systemd.eclass
index c0c21a1..ae933aa 100644
--- a/eclass/systemd.eclass
+++ b/eclass/systemd.eclass
@@ -353,7 +353,7 @@ systemd_with_utildir() {
 # @FUNCTION: systemd_update_catalog
 # @DESCRIPTION:
 # Update the journald catalog. This needs to be called after installing
-# or removing catalog files.
+# or removing catalog files. This must be called in pkg_post* phases.
 #
 # If systemd is not installed, no operation will be done. The catalog
 # will be (re)built once systemd is installed.
@@ -362,6 +362,9 @@ systemd_with_utildir() {
 systemd_update_catalog() {
        debug-print-function ${FUNCNAME} "${@}"
 
+       [[ ${EBUILD_PHASE} == post* ]] \
+               || die "${FUNCNAME} disallowed during 
${EBUILD_PHASE_FUNC:-${EBUILD_PHASE}}"
+
        # Make sure to work on the correct system.
 
        local journalctl=${EPREFIX}/usr/bin/journalctl

Reply via email to