Files
2026-03-21 12:43:00 -05:00

95 lines
3.4 KiB
Bash

#!/bin/sh
set -eu
versions="4.1.2 4.2 4.3 4.4 4.5"
# Extract each version zip into a named directory
for ver in $versions; do
mkdir -p "docbook-xml-$ver"
bsdunzip -d "docbook-xml-$ver" "docbook-xml-$ver.zip"
done
# Create the package-local XML catalog
mkdir -p "$DESTDIR/etc/xml"
XML_CATALOG_FILES=""
export XML_CATALOG_FILES
xmlcatalog --noout --create "$DESTDIR/etc/xml/docbook-xml"
for ver in $versions; do
(
cd "docbook-xml-$ver"
mkdir -p "$DESTDIR/usr/share/xml/docbook/xml-dtd-$ver"
cp -af docbook.cat ./*.dtd ./*.mod "$DESTDIR/usr/share/xml/docbook/xml-dtd-$ver/"
# ent/ is not present in all versions
if [ -d ent ]; then
cp -af ent/ "$DESTDIR/usr/share/xml/docbook/xml-dtd-$ver/"
fi
xml=""
[ "$ver" = "4.1.2" ] && xml=" XML"
xmlcatalog --noout --add "public" \
"-//OASIS//DTD DocBook XML V$ver//EN" \
"http://www.oasis-open.org/docbook/xml/$ver/docbookx.dtd" \
"$DESTDIR/etc/xml/docbook-xml"
xmlcatalog --noout --add "public" \
"-//OASIS//DTD DocBook$xml CALS Table Model V$ver//EN" \
"http://www.oasis-open.org/docbook/xml/$ver/calstblx.dtd" \
"$DESTDIR/etc/xml/docbook-xml"
xmlcatalog --noout --add "public" \
"-//OASIS//DTD XML Exchange Table Model 19990315//EN" \
"http://www.oasis-open.org/docbook/xml/$ver/soextblx.dtd" \
"$DESTDIR/etc/xml/docbook-xml"
case "$ver" in
4.[45])
xmlcatalog --noout --add "public" \
"-//OASIS//ELEMENTS DocBook XML HTML Tables V$ver//EN" \
"http://www.oasis-open.org/docbook/xml/$ver/htmltblx.mod" \
"$DESTDIR/etc/xml/docbook-xml"
;;
esac
xmlcatalog --noout --add "public" \
"-//OASIS//ELEMENTS DocBook$xml Information Pool V$ver//EN" \
"http://www.oasis-open.org/docbook/xml/$ver/dbpoolx.mod" \
"$DESTDIR/etc/xml/docbook-xml"
xmlcatalog --noout --add "public" \
"-//OASIS//ELEMENTS DocBook$xml Document Hierarchy V$ver//EN" \
"http://www.oasis-open.org/docbook/xml/$ver/dbhierx.mod" \
"$DESTDIR/etc/xml/docbook-xml"
xmlcatalog --noout --add "public" \
"-//OASIS//ENTITIES DocBook$xml Additional General Entities V$ver//EN" \
"http://www.oasis-open.org/docbook/xml/$ver/dbgenent.mod" \
"$DESTDIR/etc/xml/docbook-xml"
xmlcatalog --noout --add "public" \
"-//OASIS//ENTITIES DocBook$xml Notations V$ver//EN" \
"http://www.oasis-open.org/docbook/xml/$ver/dbnotnx.mod" \
"$DESTDIR/etc/xml/docbook-xml"
xmlcatalog --noout --add "public" \
"-//OASIS//ENTITIES DocBook$xml Character Entities V$ver//EN" \
"http://www.oasis-open.org/docbook/xml/$ver/dbcentx.mod" \
"$DESTDIR/etc/xml/docbook-xml"
xmlcatalog --noout --add "rewriteSystem" \
"http://www.oasis-open.org/docbook/xml/$ver" \
"file:///usr/share/xml/docbook/xml-dtd-$ver" \
"$DESTDIR/etc/xml/docbook-xml"
xmlcatalog --noout --add "rewriteURI" \
"http://www.oasis-open.org/docbook/xml/$ver" \
"file:///usr/share/xml/docbook/xml-dtd-$ver" \
"$DESTDIR/etc/xml/docbook-xml"
)
done
chmod 755 "$DESTDIR"/usr/share/xml/docbook/xml-dtd-*/ent 2>/dev/null || true
unset XML_CATALOG_FILES