#!/bin/sh -e # # Registers or unregisters SGML/XML catalog entries, through # the xmlcatmgr application. # # Arguments: $ACTION = [run/targets] # $TARGET = [post-install/pre-remove] # $PKGNAME # $VERSION # $UPDATE = [yes/no] # ACTION="$1" TARGET="$2" PKGNAME="$3" VERSION="$4" UPDATE="$5" sgml_catalog=usr/share/sgml/catalog xml_catalog=usr/share/xml/catalog register_entries() { if [ -n "${sgml_entries}" ]; then echo -n "Registering SGML catalog entries... " set -- ${sgml_entries} while [ $# -gt 0 ]; do xmlcatmgr -sc ${sgml_catalog} add "$1" "$2" "$3" shift; shift; shift; done echo "done." fi if [ -n "${xml_entries}" ]; then echo -n "Registering XML catalog entries... " set -- ${xml_entries} while [ $# -gt 0 ]; do xmlcatmgr -c ${xml_catalog} add "$1" "$2" "$3" shift; shift; shift; done echo "done." fi } unregister_entries() { if [ -n "${sgml_entries}" ]; then echo -n "Unregistering SGML catalog entries... " set -- ${sgml_entries} while [ $# -gt 0 ]; do xmlcatmgr -sc ${sgml_catalog} remove "$1" "$2" \ 2>/dev/null shift; shift; shift done echo "done." fi if [ -n "${xml_entries}" ]; then echo -n "Unregistering XML catalog entries... " set -- ${xml_entries} while [ $# -gt 0 ]; do xmlcatmgr -c ${xml_catalog} remove "$1" "$2" \ 2>/dev/null shift; shift; shift done echo "done." fi } case "$ACTION" in targets) echo "post-install pre-remove" ;; run) [ ! -x $xmlcatmgr ] && exit 0 [ -n "${sgml_entries}" -a ! -f "${sgml_catalog}" ] && exit 0 [ -n "${xml_entries}" -a ! -f "${xml_catalog}" ] && exit 0 case "$TARGET" in post-install) register_entries ;; pre-remove) unregister_entries ;; *) exit 1 ;; esac ;; *) exit 1 ;; esac exit 0