88 lines
1.6 KiB
Bash
Executable File
88 lines
1.6 KiB
Bash
Executable File
#!/bin/sh
|
|
#
|
|
# Registers or unregisters SGML/XML catalog entries, through
|
|
# the xmlcatmgr application.
|
|
#
|
|
# Arguments: $1 = action [run/targets]
|
|
# $2 = target [post-install/pre-remove]
|
|
# $3 = pkgname
|
|
# $4 = version
|
|
#
|
|
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 "$1" 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 "$2" in
|
|
post-install)
|
|
register_entries
|
|
;;
|
|
pre-remove)
|
|
unregister_entries
|
|
;;
|
|
*)
|
|
exit 1
|
|
;;
|
|
esac
|
|
;;
|
|
*)
|
|
exit 1
|
|
;;
|
|
esac
|
|
|
|
exit 0
|