diff options
author | Andreas Sturmlechner <asturm@gentoo.org> | 2020-08-14 20:55:12 +0200 |
---|---|---|
committer | Andreas Sturmlechner <asturm@gentoo.org> | 2020-08-14 22:06:19 +0200 |
commit | aaf73c7977ac8e68d7f9b161d5b8672afca9f92c (patch) | |
tree | 2fff4ee9ce1abc51c13255b2c085618f86da881e /eclass | |
parent | perl-app.eclass: Add last state before Gentoo ebuild repo removal (diff) | |
download | kde-sunset-aaf73c7977ac8e68d7f9b161d5b8672afca9f92c.tar.gz kde-sunset-aaf73c7977ac8e68d7f9b161d5b8672afca9f92c.tar.bz2 kde-sunset-aaf73c7977ac8e68d7f9b161d5b8672afca9f92c.zip |
sgml-catalog.eclass: Add last state before Gentoo ebuild repo removal
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
Diffstat (limited to 'eclass')
-rw-r--r-- | eclass/sgml-catalog.eclass | 106 |
1 files changed, 106 insertions, 0 deletions
diff --git a/eclass/sgml-catalog.eclass b/eclass/sgml-catalog.eclass new file mode 100644 index 00000000..17940767 --- /dev/null +++ b/eclass/sgml-catalog.eclass @@ -0,0 +1,106 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# @DEAD +# All consumers are gone. Removal in 14 days + +# @ECLASS: sgml-catalog.eclass +# @MAINTAINER: +# kde-sunset overlay maintainers +# @AUTHOR: +# Author Matthew Turk <satai@gentoo.org> +# @BLURB: Functions for installing SGML catalogs + +case ${EAPI:-0} in + 0|1|2|3|4|5) inherit base ;; + *) ;; +esac + +DEPEND=">=app-text/sgml-common-0.6.3-r2" + +# @ECLASS-VARIABLE: SGML_TOINSTALL +# @DESCRIPTION: +# An array of catalogs, arranged in pairs. +# Each pair consists of a centralized catalog followed by an ordinary catalog. +SGML_TOINSTALL=() + +# @FUNCTION: sgml-catalog_cat_include +# @USAGE: <centralized catalog> <ordinary catalog> +# @DESCRIPTION: +# Appends a catalog pair to the SGML_TOINSTALL array. +sgml-catalog_cat_include() { + debug-print function $FUNCNAME $* + SGML_TOINSTALL+=("$1" "$2") +} + +# @FUNCTION: sgml-catalog_cat_doinstall +# @USAGE: <centralized catalog> <ordinary catalog> +# @DESCRIPTION: +# Adds an ordinary catalog to a centralized catalog. +sgml-catalog_cat_doinstall() { + debug-print function $FUNCNAME $* + has "${EAPI:-0}" 0 1 2 && ! use prefix && EPREFIX= + "${EPREFIX}"/usr/bin/install-catalog --add "${EPREFIX}$1" "${EPREFIX}$2" &>/dev/null +} + +# @FUNCTION: sgml-catalog_cat_doremove +# @USAGE: <centralized catalog> <ordinary catalog> +# @DESCRIPTION: +# Removes an ordinary catalog from a centralized catalog. +sgml-catalog_cat_doremove() { + debug-print function $FUNCNAME $* + has "${EAPI:-0}" 0 1 2 && ! use prefix && EPREFIX= + "${EPREFIX}"/usr/bin/install-catalog --remove "${EPREFIX}$1" "${EPREFIX}$2" &>/dev/null +} + +sgml-catalog_pkg_postinst() { + debug-print function $FUNCNAME $* + has "${EAPI:-0}" 0 1 2 && ! use prefix && EPREFIX= + + set -- "${SGML_TOINSTALL[@]}" + + while (( $# )); do + if [[ ! -e "${EPREFIX}$2" ]]; then + ewarn "${EPREFIX}$2 doesn't appear to exist, although it ought to!" + shift 2 + continue + fi + einfo "Now adding ${EPREFIX}$2 to ${EPREFIX}$1 and ${EPREFIX}/etc/sgml/catalog" + sgml-catalog_cat_doinstall "$1" "$2" + shift 2 + done + sgml-catalog_cleanup +} + +sgml-catalog_pkg_prerm() { + sgml-catalog_cleanup +} + +sgml-catalog_pkg_postrm() { + debug-print function $FUNCNAME $* + has "${EAPI:-0}" 0 1 2 && ! use prefix && EPREFIX= + + set -- "${SGML_TOINSTALL[@]}" + + while (( $# )); do + einfo "Now removing ${EPREFIX}$2 from ${EPREFIX}$1 and ${EPREFIX}/etc/sgml/catalog" + sgml-catalog_cat_doremove "$1" "$2" + shift 2 + done +} + +sgml-catalog_cleanup() { + has "${EAPI:-0}" 0 1 2 && ! use prefix && EPREFIX= + if [ -e "${EPREFIX}/usr/bin/gensgmlenv" ] + then + einfo Regenerating SGML environment variables ... + gensgmlenv + grep -v export "${EPREFIX}/etc/sgml/sgml.env" > "${EPREFIX}/etc/env.d/93sgmltools-lite" + fi +} + +sgml-catalog_src_compile() { + return +} + +EXPORT_FUNCTIONS pkg_postrm pkg_postinst src_compile pkg_prerm |