ulm         14/05/24 08:48:40

  Modified:             elisp-common.eclass ChangeLog
  Log:
  elisp-site-regen: Die on errors.

Revision  Changes    Path
1.89                 eclass/elisp-common.eclass

file : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/elisp-common.eclass?rev=1.89&view=markup
plain: 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/elisp-common.eclass?rev=1.89&content-type=text/plain
diff : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/elisp-common.eclass?r1=1.88&r2=1.89

Index: elisp-common.eclass
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/elisp-common.eclass,v
retrieving revision 1.88
retrieving revision 1.89
diff -u -r1.88 -r1.89
--- elisp-common.eclass 24 May 2014 08:47:29 -0000      1.88
+++ elisp-common.eclass 24 May 2014 08:48:40 -0000      1.89
@@ -1,6 +1,6 @@
 # Copyright 1999-2014 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/elisp-common.eclass,v 1.88 
2014/05/24 08:47:29 ulm Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/elisp-common.eclass,v 1.89 
2014/05/24 08:48:40 ulm Exp $
 #
 # @ECLASS: elisp-common.eclass
 # @MAINTAINER:
@@ -345,31 +345,27 @@
 
 elisp-site-regen() {
        local sitelisp=${ROOT}${EPREFIX}${SITELISP}
-       local sf i null="" page=$'\f'
+       local sf i ret=0 null="" page=$'\f'
        local -a sflist
 
-       if [[ ! -d ${sitelisp} ]]; then
-               eerror "elisp-site-regen: Directory ${sitelisp} does not exist"
-               return 1
-       fi
-
-       if [[ ! -d ${T} ]]; then
-               eerror "elisp-site-regen: Temporary directory ${T} does not 
exist"
-               return 1
-       fi
-
        if [[ ${EBUILD_PHASE} = *rm && ! -e ${sitelisp}/site-gentoo.el ]]; then
                ewarn "Refusing to create site-gentoo.el in ${EBUILD_PHASE} 
phase."
                return 0
        fi
 
+       [[ -d ${sitelisp} ]] \
+               || die "elisp-site-regen: Directory ${sitelisp} does not exist"
+
+       [[ -d ${T} ]] \
+               || die "elisp-site-regen: Temporary directory ${T} does not 
exist"
+
        ebegin "Regenerating site-gentoo.el for GNU Emacs (${EBUILD_PHASE})"
 
        for sf in "${sitelisp}"/site-gentoo.d/[0-9][0-9]*.el; do
                [[ -r ${sf} ]] && sflist+=("${sf}")
        done
 
-       cat <<-EOF >"${T}"/site-gentoo.el
+       cat <<-EOF >"${T}"/site-gentoo.el || ret=$?
        ;;; site-gentoo.el --- site initialisation for Gentoo-installed packages
 
        ;;; Commentary:
@@ -379,8 +375,8 @@
        ;;; Code:
        EOF
        # Use sed instead of cat here, since files may miss a trailing newline.
-       sed '$q' "${sflist[@]}" </dev/null >>"${T}"/site-gentoo.el
-       cat <<-EOF >>"${T}"/site-gentoo.el
+       sed '$q' "${sflist[@]}" </dev/null >>"${T}"/site-gentoo.el || ret=$?
+       cat <<-EOF >>"${T}"/site-gentoo.el || ret=$?
 
        ${page}
        (provide 'site-gentoo)
@@ -393,7 +389,10 @@
        ;;; site-gentoo.el ends here
        EOF
 
-       if cmp -s "${sitelisp}"/site-gentoo.el "${T}"/site-gentoo.el; then
+       if [[ ${ret} -ne 0 ]]; then
+               eend ${ret} "elisp-site-regen: Writing site-gentoo.el failed."
+               die
+       elif cmp -s "${sitelisp}"/site-gentoo.el "${T}"/site-gentoo.el; then
                # This prevents outputting unnecessary text when there
                # was actually no change.
                # A case is a remerge where we have doubled output.
@@ -402,7 +401,7 @@
                einfo "... no changes."
        else
                mv "${T}"/site-gentoo.el "${sitelisp}"/site-gentoo.el
-               eend
+               eend $? "elisp-site-regen: Replacing site-gentoo.el failed" || 
die
                case ${#sflist[@]} in
                        0) [[ ${PN} = emacs-common-gentoo ]] \
                                || ewarn "... Huh? No site initialisation files 
found." ;;



1.1273               eclass/ChangeLog

file : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1273&view=markup
plain: 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?rev=1.1273&content-type=text/plain
diff : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/eclass/ChangeLog?r1=1.1272&r2=1.1273

Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v
retrieving revision 1.1272
retrieving revision 1.1273
diff -u -r1.1272 -r1.1273
--- ChangeLog   24 May 2014 08:47:29 -0000      1.1272
+++ ChangeLog   24 May 2014 08:48:40 -0000      1.1273
@@ -1,10 +1,10 @@
 # ChangeLog for eclass directory
 # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1272 2014/05/24 
08:47:29 ulm Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/ChangeLog,v 1.1273 2014/05/24 
08:48:40 ulm Exp $
 
   24 May 2014; Ulrich Müller <u...@gentoo.org> elisp-common.eclass:
   elisp-site-regen: Look for site-init files only in site-gentoo.d
-  subdirectory.
+  subdirectory. Die on errors.
 
   23 May 2014; Michał Górny <mgo...@gentoo.org> multilib-build.eclass:
   Change ABI-flag separator from ":" to "." to avoid issues with Makefile rules




Reply via email to