rpms/docbook-dtds/devel docbook-dtds.spec,1.30,1.31

Štěpán Kasal kasal at fedoraproject.org
Fri Apr 10 09:42:02 UTC 2009


Author: kasal

Update of /cvs/extras/rpms/docbook-dtds/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv21448

Modified Files:
	docbook-dtds.spec 
Log Message:
- remove perl dependency (#462997)
- make %%install and the scriptlets more compact


Index: docbook-dtds.spec
===================================================================
RCS file: /cvs/extras/rpms/docbook-dtds/devel/docbook-dtds.spec,v
retrieving revision 1.30
retrieving revision 1.31
diff -u -r1.30 -r1.31
--- docbook-dtds.spec	24 Feb 2009 12:16:59 -0000	1.30
+++ docbook-dtds.spec	10 Apr 2009 09:41:32 -0000	1.31
@@ -1,8 +1,9 @@
 %define openjadever 1.3.2
+%define version_list "{3,4}.{0,1}-sgml 4.1.2-xml 4.{2,3,4,5}-{sgml,xml}"
 
 Name: docbook-dtds
 Version: 1.0
-Release: 45%{?dist}
+Release: 46%{?dist}
 Group: Applications/Text
 
 Summary: SGML and XML document type definitions for DocBook
@@ -32,7 +33,6 @@
 Provides: docbook-dtd45-sgml = %{version}-%{release}
 Provides: docbook-dtd45-xml = %{version}-%{release}
 
-Requires: grep perl
 Requires(post): libxml2 >= 2.4.8
 Requires(postun): libxml2 >= 2.4.8
 # If upgrading, the old package's postun scriptlet may use install-catalog
@@ -82,85 +82,73 @@
 
 %prep
 %setup -c -T
+eval mkdir %{version_list}
 # DocBook V3.0
-mkdir 3.0-sgml
 cd 3.0-sgml
 unzip %{SOURCE0}
 patch -b docbook.cat %{PATCH0}
 cd ..
 
 # DocBook V3.1
-mkdir 3.1-sgml
 cd 3.1-sgml
 unzip %{SOURCE1}
 patch -b docbook.cat %{PATCH1}
 cd ..
 
 # DocBook V4.0
-mkdir 4.0-sgml
 cd 4.0-sgml
 unzip %{SOURCE2}
 patch -b docbook.cat %{PATCH2}
 cd ..
 
 # DocBook V4.1
-mkdir 4.1-sgml
 cd 4.1-sgml
 unzip %{SOURCE3}
 patch -b docbook.cat %{PATCH3}
 cd ..
 
 # DocBook XML V4.1.2
-mkdir 4.1.2-xml
 cd 4.1.2-xml
 unzip %{SOURCE4}
 cd ..
 
 # DocBook V4.2
-mkdir 4.2-sgml
 cd 4.2-sgml
 unzip %{SOURCE5}
 patch -b docbook.cat %{PATCH4}
 cd ..
 
 # DocBook XML V4.2
-mkdir 4.2-xml
 cd 4.2-xml
 unzip %{SOURCE6}
 cd ..
 
 # DocBook V4.3
-mkdir 4.3-sgml
 cd 4.3-sgml
 unzip %{SOURCE7}
 cd ..
 
 # DocBook XML V4.3
-mkdir 4.3-xml
 cd 4.3-xml
 unzip %{SOURCE8}
 cd ..
 
 # DocBook V4.4
-mkdir 4.4-sgml
 cd 4.4-sgml
 unzip %{SOURCE9}
 cd ..
 
 # DocBook XML V4.4
-mkdir 4.4-xml
 cd 4.4-xml
 unzip %{SOURCE10}
 cd ..
 
 # DocBook v4.5
-mkdir 4.5-sgml
 cd 4.5-sgml
 unzip %{SOURCE11}
 cd ..
 
 # DocBook XML v4.5
-mkdir 4.5-xml
 cd 4.5-xml
 unzip %{SOURCE12}
 cd ..
@@ -196,158 +184,30 @@
 %install
 rm -rf $RPM_BUILD_ROOT
 
-# DocBook V3.0
-cd 3.0-sgml
-DESTDIR=$RPM_BUILD_ROOT/usr/share/sgml/docbook/sgml-dtd-3.0-%{version}-%{release}
-mkdir -p $DESTDIR
-install *.dcl $DESTDIR
-install docbook.cat $DESTDIR/catalog
-install *.dtd $DESTDIR
-install *.mod $DESTDIR
-cd ..
-
-# DocBook V3.1
-cd 3.1-sgml
-DESTDIR=$RPM_BUILD_ROOT/usr/share/sgml/docbook/sgml-dtd-3.1-%{version}-%{release}
-mkdir -p $DESTDIR
-install *.dcl $DESTDIR
-install docbook.cat $DESTDIR/catalog
-install *.dtd $DESTDIR
-install *.mod $DESTDIR
-cd ..
-
-# DocBook V4.0
-cd 4.0-sgml
-DESTDIR=$RPM_BUILD_ROOT/usr/share/sgml/docbook/sgml-dtd-4.0-%{version}-%{release}
-mkdir -p $DESTDIR
-install *.dcl $DESTDIR
-install docbook.cat $DESTDIR/catalog
-install *.dtd $DESTDIR
-install *.mod $DESTDIR
-cd ..
-
-# DocBook V4.1
-cd 4.1-sgml
-DESTDIR=$RPM_BUILD_ROOT/usr/share/sgml/docbook/sgml-dtd-4.1-%{version}-%{release}
-mkdir -p $DESTDIR
-install *.dcl $DESTDIR
-install docbook.cat $DESTDIR/catalog
-install *.dtd $DESTDIR
-install *.mod $DESTDIR
-cd ..
-
-# DocBook XML V4.1.2
-cd 4.1.2-xml
-DESTDIR=$RPM_BUILD_ROOT/usr/share/sgml/docbook/xml-dtd-4.1.2-%{version}-%{release}
-mkdir -p $DESTDIR/ent
-install docbook.cat $DESTDIR/catalog
-install *.dtd $DESTDIR
-install *.mod $DESTDIR
-install ent/* $DESTDIR/ent
-cd ..
-
-# DocBook V4.2
-cd 4.2-sgml
-DESTDIR=$RPM_BUILD_ROOT/usr/share/sgml/docbook/sgml-dtd-4.2-%{version}-%{release}
-mkdir -p $DESTDIR
-install *.dcl $DESTDIR
-install docbook.cat $DESTDIR/catalog
-install *.dtd $DESTDIR
-install *.mod $DESTDIR
-cd ..
-
-# DocBook XML V4.2
-cd 4.2-xml
-DESTDIR=$RPM_BUILD_ROOT/usr/share/sgml/docbook/xml-dtd-4.2-%{version}-%{release}
-mkdir -p $DESTDIR/ent
-install docbook.cat $DESTDIR/catalog
-install *.dtd $DESTDIR
-install *.mod $DESTDIR
-install ent/* $DESTDIR/ent
-cd ..
-
-# DocBook V4.3
-cd 4.3-sgml
-DESTDIR=$RPM_BUILD_ROOT/usr/share/sgml/docbook/sgml-dtd-4.3-%{version}-%{release}
-mkdir -p $DESTDIR
-install *.dcl $DESTDIR
-install docbook.cat $DESTDIR/catalog
-install *.dtd $DESTDIR
-install *.mod $DESTDIR
-cd ..
-
-# DocBook XML V4.3
-cd 4.3-xml
-DESTDIR=$RPM_BUILD_ROOT/usr/share/sgml/docbook/xml-dtd-4.3-%{version}-%{release}
-mkdir -p $DESTDIR/ent
-install docbook.cat $DESTDIR/catalog
-install *.dtd $DESTDIR
-install *.mod $DESTDIR
-install ent/* $DESTDIR/ent
-cd ..
-
-# DocBook V4.4
-cd 4.4-sgml
-DESTDIR=$RPM_BUILD_ROOT/usr/share/sgml/docbook/sgml-dtd-4.4-%{version}-%{release}
-mkdir -p $DESTDIR
-install *.dcl $DESTDIR
-install docbook.cat $DESTDIR/catalog
-install *.dtd $DESTDIR
-install *.mod $DESTDIR
-cd ..
-
-# DocBook XML V4.4
-cd 4.4-xml
-DESTDIR=$RPM_BUILD_ROOT/usr/share/sgml/docbook/xml-dtd-4.4-%{version}-%{release}
-mkdir -p $DESTDIR/ent
-install docbook.cat $DESTDIR/catalog
-install *.dtd $DESTDIR
-install *.mod $DESTDIR
-install ent/* $DESTDIR/ent
-cd ..
-
-# DocBook V4.5
-cd 4.5-sgml
-DESTDIR=$RPM_BUILD_ROOT/usr/share/sgml/docbook/sgml-dtd-4.5-%{version}-%{release}
-mkdir -p $DESTDIR
-install *.dcl $DESTDIR
-install docbook.cat $DESTDIR/catalog
-install *.dtd $DESTDIR
-install *.mod $DESTDIR
-cd ..
-
-# DocBook XML V4.5
-cd 4.5-xml
-DESTDIR=$RPM_BUILD_ROOT/usr/share/sgml/docbook/xml-dtd-4.5-%{version}-%{release}
-mkdir -p $DESTDIR/ent
-install docbook.cat $DESTDIR/catalog
-install *.dtd $DESTDIR
-install *.mod $DESTDIR
-install ent/* $DESTDIR/ent
-cd ..
-
-
 # Symlinks
 mkdir -p $RPM_BUILD_ROOT/etc/sgml
-ln -s sgml-docbook-4.5-%{version}-%{release}.cat \
-  $RPM_BUILD_ROOT/etc/sgml/sgml-docbook.cat
-ln -s xml-docbook-4.5-%{version}-%{release}.cat \
-  $RPM_BUILD_ROOT/etc/sgml/xml-docbook.cat
-
-# Files for %ghost
-touch $RPM_BUILD_ROOT/etc/sgml/sgml-docbook-3.0-%{version}-%{release}.cat
-touch $RPM_BUILD_ROOT/etc/sgml/sgml-docbook-3.1-%{version}-%{release}.cat
-touch $RPM_BUILD_ROOT/etc/sgml/sgml-docbook-4.0-%{version}-%{release}.cat
-touch $RPM_BUILD_ROOT/etc/sgml/sgml-docbook-4.1-%{version}-%{release}.cat
-touch $RPM_BUILD_ROOT/etc/sgml/sgml-docbook-4.2-%{version}-%{release}.cat
-touch $RPM_BUILD_ROOT/etc/sgml/sgml-docbook-4.3-%{version}-%{release}.cat
-touch $RPM_BUILD_ROOT/etc/sgml/sgml-docbook-4.4-%{version}-%{release}.cat
-touch $RPM_BUILD_ROOT/etc/sgml/sgml-docbook-4.5-%{version}-%{release}.cat
-touch $RPM_BUILD_ROOT/etc/sgml/xml-docbook-4.1.2-%{version}-%{release}.cat
-touch $RPM_BUILD_ROOT/etc/sgml/xml-docbook-4.2-%{version}-%{release}.cat
-touch $RPM_BUILD_ROOT/etc/sgml/xml-docbook-4.3-%{version}-%{release}.cat
-touch $RPM_BUILD_ROOT/etc/sgml/xml-docbook-4.4-%{version}-%{release}.cat
-touch $RPM_BUILD_ROOT/etc/sgml/xml-docbook-4.5-%{version}-%{release}.cat
+for fmt in sgml xml; do
+  ln -s $fmt-docbook-4.5-%{version}-%{release}.cat \
+     $RPM_BUILD_ROOT/etc/sgml/$fmt-docbook.cat
+done
+
+eval set %{version_list}
+for dir
+do
+  cd $dir
+  fmt=${dir#*-} vvr=${dir%%-*}-%{version}-%{release}
+  DESTDIR=$RPM_BUILD_ROOT/usr/share/sgml/docbook/$fmt-dtd-$vvr
+  case $fmt in
+    sgml)   mkdir -p $DESTDIR ; install *.dcl $DESTDIR ;;
+    xml)    mkdir -p $DESTDIR/ent ; install ent/* $DESTDIR/ent ;;
+  esac
+  install *.dtd *.mod $DESTDIR
+  install docbook.cat $DESTDIR/catalog
+  cd ..
+  # File for %%ghost
+  touch $RPM_BUILD_ROOT/etc/sgml/$fmt-docbook-$vvr.cat
+done
+
 
 %clean
 rm -rf $RPM_BUILD_ROOT
@@ -357,1238 +217,195 @@
 %defattr (0644,root,root,0755)
 #in upstream tarballs there is a lot of files with 0755 permissions
 #but they don't need to be, 0644 is enough for every file in tarball
-%doc --parents 3.1-sgml/ChangeLog
-%doc --parents 4.1-sgml/ChangeLog
-%doc --parents */*.txt
+%doc --parents 3.1-sgml/ChangeLog 4.1-sgml/ChangeLog */*.txt
 %config(noreplace) /etc/sgml/sgml-docbook.cat
 %config(noreplace) /etc/sgml/xml-docbook.cat
-/usr/share/sgml/docbook/sgml-dtd-3.0-%{version}-%{release}
-/usr/share/sgml/docbook/sgml-dtd-3.1-%{version}-%{release}
-/usr/share/sgml/docbook/sgml-dtd-4.0-%{version}-%{release}
-/usr/share/sgml/docbook/sgml-dtd-4.1-%{version}-%{release}
-/usr/share/sgml/docbook/sgml-dtd-4.2-%{version}-%{release}
-/usr/share/sgml/docbook/sgml-dtd-4.3-%{version}-%{release}
-/usr/share/sgml/docbook/sgml-dtd-4.4-%{version}-%{release}
-/usr/share/sgml/docbook/sgml-dtd-4.5-%{version}-%{release}
-/usr/share/sgml/docbook/xml-dtd-4.1.2-%{version}-%{release}
-/usr/share/sgml/docbook/xml-dtd-4.2-%{version}-%{release}
-/usr/share/sgml/docbook/xml-dtd-4.3-%{version}-%{release}
-/usr/share/sgml/docbook/xml-dtd-4.4-%{version}-%{release}
-/usr/share/sgml/docbook/xml-dtd-4.5-%{version}-%{release}
-%ghost %config(noreplace) /etc/sgml/sgml-docbook-3.0-%{version}-%{release}.cat
-%ghost %config(noreplace) /etc/sgml/sgml-docbook-3.1-%{version}-%{release}.cat
-%ghost %config(noreplace) /etc/sgml/sgml-docbook-4.0-%{version}-%{release}.cat
-%ghost %config(noreplace) /etc/sgml/sgml-docbook-4.1-%{version}-%{release}.cat
-%ghost %config(noreplace) /etc/sgml/sgml-docbook-4.2-%{version}-%{release}.cat
-%ghost %config(noreplace) /etc/sgml/sgml-docbook-4.3-%{version}-%{release}.cat
-%ghost %config(noreplace) /etc/sgml/sgml-docbook-4.4-%{version}-%{release}.cat
-%ghost %config(noreplace) /etc/sgml/sgml-docbook-4.5-%{version}-%{release}.cat
-%ghost %config(noreplace) /etc/sgml/xml-docbook-4.1.2-%{version}-%{release}.cat
-%ghost %config(noreplace) /etc/sgml/xml-docbook-4.2-%{version}-%{release}.cat
-%ghost %config(noreplace) /etc/sgml/xml-docbook-4.3-%{version}-%{release}.cat
-%ghost %config(noreplace) /etc/sgml/xml-docbook-4.4-%{version}-%{release}.cat
-%ghost %config(noreplace) /etc/sgml/xml-docbook-4.5-%{version}-%{release}.cat
+/usr/share/sgml/docbook/*ml-dtd-*-%{version}-%{release}
+%ghost %config(noreplace) /etc/sgml/*ml-docbook-*-%{version}-%{release}.cat
+
 
 %post
+catcmd='/usr/bin/xmlcatalog --noout'
+xmlcatalog=/usr/share/sgml/docbook/xmlcatalog
+
 ## Clean up pre-docbook-dtds mess caused by broken trigger.
 for v in 3.0 3.1 4.0 4.1 4.2
 do
   if [ -f /etc/sgml/sgml-docbook-$v.cat ]
   then
-    /usr/bin/xmlcatalog --sgml --noout --del \
-      /etc/sgml/sgml-docbook-$v.cat \
+    $catcmd --sgml --del /etc/sgml/sgml-docbook-$v.cat \
       /usr/share/sgml/openjade-1.3.1/catalog 2>/dev/null
   fi
 done
 
-##
-## SGML catalog
-##
-
-# Update the centralized catalog corresponding to this version of the DTD
-# DocBook V3.0
-/usr/bin/xmlcatalog --sgml --noout --add \
-  /etc/sgml/sgml-docbook-3.0-%{version}-%{release}.cat \
-  /usr/share/sgml/sgml-iso-entities-8879.1986/catalog
-/usr/bin/xmlcatalog --sgml --noout --add \
-  /etc/sgml/sgml-docbook-3.0-%{version}-%{release}.cat \
-  /usr/share/sgml/docbook/sgml-dtd-3.0-%{version}-%{release}/catalog
-
-# DocBook V3.1
-/usr/bin/xmlcatalog --sgml --noout --add \
-  /etc/sgml/sgml-docbook-3.1-%{version}-%{release}.cat \
-  /usr/share/sgml/sgml-iso-entities-8879.1986/catalog
-/usr/bin/xmlcatalog --sgml --noout --add \
-  /etc/sgml/sgml-docbook-3.1-%{version}-%{release}.cat \
-  /usr/share/sgml/docbook/sgml-dtd-3.1-%{version}-%{release}/catalog
-
-# DocBook V4.0
-/usr/bin/xmlcatalog --sgml --noout --add \
-  /etc/sgml/sgml-docbook-4.0-%{version}-%{release}.cat \
-  /usr/share/sgml/sgml-iso-entities-8879.1986/catalog
-/usr/bin/xmlcatalog --sgml --noout --add \
-  /etc/sgml/sgml-docbook-4.0-%{version}-%{release}.cat \
-  /usr/share/sgml/docbook/sgml-dtd-4.0-%{version}-%{release}/catalog
-
-# DocBook V4.1
-/usr/bin/xmlcatalog --sgml --noout --add \
-  /etc/sgml/sgml-docbook-4.1-%{version}-%{release}.cat \
-  /usr/share/sgml/sgml-iso-entities-8879.1986/catalog
-/usr/bin/xmlcatalog --sgml --noout --add \
-  /etc/sgml/sgml-docbook-4.1-%{version}-%{release}.cat \
-  /usr/share/sgml/docbook/sgml-dtd-4.1-%{version}-%{release}/catalog
-
-# DocBook XML V4.1.2
-/usr/bin/xmlcatalog --sgml --noout --add \
-  /etc/sgml/xml-docbook-4.1.2-%{version}-%{release}.cat \
-  /usr/share/sgml/sgml-iso-entities-8879.1986/catalog
-/usr/bin/xmlcatalog --sgml --noout --add \
-  /etc/sgml/xml-docbook-4.1.2-%{version}-%{release}.cat \
-  /usr/share/sgml/docbook/xml-dtd-4.1.2-%{version}-%{release}/catalog
-
-# DocBook V4.2
-/usr/bin/xmlcatalog --sgml --noout --add \
-  /etc/sgml/sgml-docbook-4.2-%{version}-%{release}.cat \
-  /usr/share/sgml/sgml-iso-entities-8879.1986/catalog
-/usr/bin/xmlcatalog --sgml --noout --add \
-  /etc/sgml/sgml-docbook-4.2-%{version}-%{release}.cat \
-  /usr/share/sgml/docbook/sgml-dtd-4.2-%{version}-%{release}/catalog
-
-# DocBook XML V4.2
-/usr/bin/xmlcatalog --sgml --noout --add \
-  /etc/sgml/xml-docbook-4.2-%{version}-%{release}.cat \
-  /usr/share/sgml/sgml-iso-entities-8879.1986/catalog
-/usr/bin/xmlcatalog --sgml --noout --add \
-  /etc/sgml/xml-docbook-4.2-%{version}-%{release}.cat \
-  /usr/share/sgml/docbook/xml-dtd-4.2-%{version}-%{release}/catalog
-
-# DocBook V4.3
-/usr/bin/xmlcatalog --sgml --noout --add \
-  /etc/sgml/sgml-docbook-4.3-%{version}-%{release}.cat \
-  /usr/share/sgml/sgml-iso-entities-8879.1986/catalog
-/usr/bin/xmlcatalog --sgml --noout --add \
-  /etc/sgml/sgml-docbook-4.3-%{version}-%{release}.cat \
-  /usr/share/sgml/docbook/sgml-dtd-4.3-%{version}-%{release}/catalog
-
-# DocBook XML V4.3
-/usr/bin/xmlcatalog --sgml --noout --add \
-  /etc/sgml/xml-docbook-4.3-%{version}-%{release}.cat \
-  /usr/share/sgml/sgml-iso-entities-8879.1986/catalog
-/usr/bin/xmlcatalog --sgml --noout --add \
-  /etc/sgml/xml-docbook-4.3-%{version}-%{release}.cat \
-  /usr/share/sgml/docbook/xml-dtd-4.3-%{version}-%{release}/catalog
-
-# DocBook V4.4
-/usr/bin/xmlcatalog --sgml --noout --add \
-  /etc/sgml/sgml-docbook-4.4-%{version}-%{release}.cat \
-  /usr/share/sgml/sgml-iso-entities-8879.1986/catalog
-/usr/bin/xmlcatalog --sgml --noout --add \
-  /etc/sgml/sgml-docbook-4.4-%{version}-%{release}.cat \
-  /usr/share/sgml/docbook/sgml-dtd-4.4-%{version}-%{release}/catalog
-
-# DocBook XML V4.4
-/usr/bin/xmlcatalog --sgml --noout --add \
-  /etc/sgml/xml-docbook-4.4-%{version}-%{release}.cat \
-  /usr/share/sgml/sgml-iso-entities-8879.1986/catalog
-/usr/bin/xmlcatalog --sgml --noout --add \
-  /etc/sgml/xml-docbook-4.4-%{version}-%{release}.cat \
-  /usr/share/sgml/docbook/xml-dtd-4.4-%{version}-%{release}/catalog
-
-# DocBook V4.5
-/usr/bin/xmlcatalog --sgml --noout --add \
-  /etc/sgml/sgml-docbook-4.5-%{version}-%{release}.cat \
-  /usr/share/sgml/sgml-iso-entities-8879.1986/catalog
-/usr/bin/xmlcatalog --sgml --noout --add \
-  /etc/sgml/sgml-docbook-4.5-%{version}-%{release}.cat \
-  /usr/share/sgml/docbook/sgml-dtd-4.5-%{version}-%{release}/catalog
-
-# DocBook XML V4.5
-/usr/bin/xmlcatalog --sgml --noout --add \
-  /etc/sgml/xml-docbook-4.5-%{version}-%{release}.cat \
-  /usr/share/sgml/sgml-iso-entities-8879.1986/catalog
-/usr/bin/xmlcatalog --sgml --noout --add \
-  /etc/sgml/xml-docbook-4.5-%{version}-%{release}.cat \
-  /usr/share/sgml/docbook/xml-dtd-4.5-%{version}-%{release}/catalog
-
-
-# The following lines are for the case in which the style sheets
+# The STYLESHEETS/catalog command is for the case in which the style sheets
 # were installed after another DTD but before this DTD
-STYLESHEETS=$(echo /usr/share/sgml/docbook/dsssl-stylesheets-*)
-STYLESHEETS=${STYLESHEETS##*/dsssl-stylesheets-}
-if [ "$STYLESHEETS" != "*" ]; then
-    # DocBook V3.0
-    /usr/bin/xmlcatalog --sgml --noout --add \
-    /etc/sgml/sgml-docbook-3.0-%{version}-%{release}.cat \
-    /usr/share/sgml/docbook/dsssl-stylesheets-$STYLESHEETS/catalog
-
-    # DocBook V3.1
-    /usr/bin/xmlcatalog --sgml --noout --add \
-    /etc/sgml/sgml-docbook-3.1-%{version}-%{release}.cat \
-    /usr/share/sgml/docbook/dsssl-stylesheets-$STYLESHEETS/catalog
-
-    # DocBook V4.0
-    /usr/bin/xmlcatalog --sgml --noout --add \
-    /etc/sgml/sgml-docbook-4.0-%{version}-%{release}.cat \
-    /usr/share/sgml/docbook/dsssl-stylesheets-$STYLESHEETS/catalog
-
-    # DocBook V4.1
-    /usr/bin/xmlcatalog --sgml --noout --add \
-    /etc/sgml/sgml-docbook-4.1-%{version}-%{release}.cat \
-    /usr/share/sgml/docbook/dsssl-stylesheets-$STYLESHEETS/catalog
-
-    # DocBook XML V4.1.2
-    /usr/bin/xmlcatalog --sgml --noout --add \
-    /etc/sgml/xml-docbook-4.1.2-%{version}-%{release}.cat \
-    /usr/share/sgml/docbook/dsssl-stylesheets-$STYLESHEETS/catalog
-
-    # DocBook V4.2
-    /usr/bin/xmlcatalog --sgml --noout --add \
-    /etc/sgml/sgml-docbook-4.2-%{version}-%{release}.cat \
-    /usr/share/sgml/docbook/dsssl-stylesheets-$STYLESHEETS/catalog
-
-    # DocBook XML V4.2
-    /usr/bin/xmlcatalog --sgml --noout --add \
-    /etc/sgml/xml-docbook-4.2-%{version}-%{release}.cat \
-    /usr/share/sgml/docbook/dsssl-stylesheets-$STYLESHEETS/catalog
-
-    # DocBook V4.3
-    /usr/bin/xmlcatalog --sgml --noout --add \
-    /etc/sgml/sgml-docbook-4.3-%{version}-%{release}.cat \
-    /usr/share/sgml/docbook/dsssl-stylesheets-$STYLESHEETS/catalog
-
-    # DocBook XML V4.3
-    /usr/bin/xmlcatalog --sgml --noout --add \
-    /etc/sgml/xml-docbook-4.3-%{version}-%{release}.cat \
-    /usr/share/sgml/docbook/dsssl-stylesheets-$STYLESHEETS/catalog
-
-    # DocBook V4.4
-    /usr/bin/xmlcatalog --sgml --noout --add \
-    /etc/sgml/sgml-docbook-4.4-%{version}-%{release}.cat \
-    /usr/share/sgml/docbook/dsssl-stylesheets-$STYLESHEETS/catalog
-
-    # DocBook XML V4.4
-    /usr/bin/xmlcatalog --sgml --noout --add \
-    /etc/sgml/xml-docbook-4.4-%{version}-%{release}.cat \
-    /usr/share/sgml/docbook/dsssl-stylesheets-$STYLESHEETS/catalog
-
-   # DocBook V4.5
-    /usr/bin/xmlcatalog --sgml --noout --add \
-    /etc/sgml/sgml-docbook-4.5-%{version}-%{release}.cat \
-    /usr/share/sgml/docbook/dsssl-stylesheets-$STYLESHEETS/catalog
-
-    # DocBook XML V4.5
-    /usr/bin/xmlcatalog --sgml --noout --add \
-    /etc/sgml/xml-docbook-4.5-%{version}-%{release}.cat \
-    /usr/share/sgml/docbook/dsssl-stylesheets-$STYLESHEETS/catalog
-
-fi
+for STYLESHEETS in /usr/share/sgml/docbook/dsssl-stylesheets-*; do : ; done
+case $STYLESHEETS in
+  *-"*") STYLESHEETS= ;;
+esac
+eval set %{version_list}
+for dir
+do
+  fmt=${dir#*-} ver=${dir%%-*} vvr=$ver-%{version}-%{release}
+  sgmldir=/usr/share/sgml/docbook/$fmt-dtd-$vvr
+  ## SGML catalog
+  # Update the centralized catalog corresponding to this version of the DTD
+  for cat_dir in /usr/share/sgml/sgml-iso-entities-8879.1986 $sgmldir $STYLESHEETS; do
+    $catcmd --sgml --add /etc/sgml/$fmt-docbook-$vvr.cat $cat_dir/catalog
+  done
+  ## XML catalog
+  if [ $fmt = xml -a -w $xmlcatalog ]; then
+    while read f desc; do
+      case $ver in 4.[45]) f=${f/-/} ;; esac
+      $catcmd --add public "$desc" $sgmldir/$f $xmlcatalog
+    done <<ENDENT
+      ent/iso-pub.ent	ISO 8879:1986//ENTITIES Publishing//EN
+      ent/iso-grk1.ent	ISO 8879:1986//ENTITIES Greek Letters//EN
+      dbpoolx.mod	-//OASIS//ELEMENTS DocBook XML Information Pool V$ver//EN
+      ent/iso-box.ent	ISO 8879:1986//ENTITIES Box and Line Drawing//EN
+      docbookx.dtd	-//OASIS//DTD DocBook XML V$ver//EN
+      ent/iso-grk3.ent	ISO 8879:1986//ENTITIES Greek Symbols//EN
+      ent/iso-amsn.ent	ISO 8879:1986//ENTITIES Added Math Symbols: Negated Relations//EN
+      ent/iso-num.ent	ISO 8879:1986//ENTITIES Numeric and Special Graphic//EN
+      dbcentx.mod	-//OASIS//ENTITIES DocBook XML Character Entities V$ver//EN
+      ent/iso-grk4.ent	ISO 8879:1986//ENTITIES Alternative Greek Symbols//EN
+      dbnotnx.mod	-//OASIS//ENTITIES DocBook XML Notations V$ver//EN
+      ent/iso-dia.ent	ISO 8879:1986//ENTITIES Diacritical Marks//EN
+      ent/iso-grk2.ent	ISO 8879:1986//ENTITIES Monotoniko Greek//EN
+      dbgenent.mod	-//OASIS//ENTITIES DocBook XML Additional General Entities V$ver//EN
+      dbhierx.mod	-//OASIS//ELEMENTS DocBook XML Document Hierarchy V$ver//EN
+      ent/iso-amsa.ent	ISO 8879:1986//ENTITIES Added Math Symbols: Arrow Relations//EN
+      ent/iso-amso.ent	ISO 8879:1986//ENTITIES Added Math Symbols: Ordinary//EN
+      ent/iso-cyr1.ent	ISO 8879:1986//ENTITIES Russian Cyrillic//EN
+      ent/iso-tech.ent	ISO 8879:1986//ENTITIES General Technical//EN
+      ent/iso-amsc.ent	ISO 8879:1986//ENTITIES Added Math Symbols: Delimiters//EN
+      soextblx.dtd	-//OASIS//DTD XML Exchange Table Model 19990315//EN
+      calstblx.dtd	-//OASIS//DTD DocBook XML CALS Table Model V$ver//EN
+      ent/iso-lat1.ent	ISO 8879:1986//ENTITIES Added Latin 1//EN
+      ent/iso-amsb.ent	ISO 8879:1986//ENTITIES Added Math Symbols: Binary Operators//EN
+      ent/iso-lat2.ent	ISO 8879:1986//ENTITIES Added Latin 2//EN
+      ent/iso-amsr.ent	ISO 8879:1986//ENTITIES Added Math Symbols: Relations//EN
+      ent/iso-cyr2.ent	ISO 8879:1986//ENTITIES Non-Russian Cyrillic//EN
+ENDENT
+    for f in System URI; do
+      $catcmd --add rewrite$f "http://www.oasis-open.org/docbook/xml/$ver" \
+	$sgmldir $xmlcatalog
+    done
+  fi
+done
 
+# Historic versions of this scriptlet contained the following comment:
+# <quote>
 # Fix up SGML super catalog so that there isn't an XML DTD before an
 # SGML one.  We need to do this (*sigh*) because xmlcatalog messes up
 # the order of the lines, and SGML tools don't like to see XML things
 # they aren't expecting.
-CAT_DIR=/usr/share/sgml/docbook/
-CATALOG=/etc/sgml/catalog
-SGML=$(cat -n ${CATALOG} | grep sgml-docbook | head -1 | (read n line;echo $n))
-XML=$(cat -n ${CATALOG} | grep xml-docbook | head -1 | (read n line; echo $n))
-# Do they need switching around?
-if [ -n "${XML}" ] && [ -n "${SGML}" ] && [ "${XML}" -lt "${SGML}" ]
-then
-  # Switch those two lines around.
-  XML=$((XML - 1))
-  SGML=$((SGML - 1))
-  perl -e "@_=<>;@_[$XML, $SGML]=@_[$SGML, $XML];print @_" \
-    ${CATALOG} > ${CATALOG}.rpmtmp
-  mv -f ${CATALOG}.rpmtmp ${CATALOG}
-fi
-
-##
-## XML catalog
-##
-
-CATALOG=/usr/share/sgml/docbook/xmlcatalog
-
-if [ -w $CATALOG ]
-then
-  # DocBook XML V4.1.2
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Publishing//EN" \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/ent/iso-pub.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Greek Letters//EN" \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/ent/iso-grk1.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "-//OASIS//ELEMENTS DocBook XML Information Pool V4.1.2//EN" \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/dbpoolx.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Box and Line Drawing//EN" \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/ent/iso-box.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "-//OASIS//DTD DocBook XML V4.1.2//EN" \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/docbookx.dtd" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Greek Symbols//EN" \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/ent/iso-grk3.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Added Math Symbols: Negated Relations//EN" \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/ent/iso-amsn.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Numeric and Special Graphic//EN" \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/ent/iso-num.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "-//OASIS//ENTITIES DocBook XML Character Entities V4.1.2//EN" \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/dbcentx.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Alternative Greek Symbols//EN" \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/ent/iso-grk4.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "-//OASIS//ENTITIES DocBook XML Notations V4.1.2//EN" \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/dbnotnx.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Diacritical Marks//EN" \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/ent/iso-dia.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Monotoniko Greek//EN" \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/ent/iso-grk2.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "-//OASIS//ENTITIES DocBook XML Additional General Entities V4.1.2//EN" \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/dbgenent.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "-//OASIS//ELEMENTS DocBook XML Document Hierarchy V4.1.2//EN" \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/dbhierx.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Added Math Symbols: Arrow Relations//EN" \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/ent/iso-amsa.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Added Math Symbols: Ordinary//EN" \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/ent/iso-amso.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Russian Cyrillic//EN" \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/ent/iso-cyr1.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES General Technical//EN" \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/ent/iso-tech.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Added Math Symbols: Delimiters//EN" \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/ent/iso-amsc.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "-//OASIS//DTD XML Exchange Table Model 19990315//EN" \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/soextblx.dtd" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "-//OASIS//DTD DocBook XML CALS Table Model V4.1.2//EN" \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/calstblx.dtd" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Added Latin 1//EN" \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/ent/iso-lat1.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Added Math Symbols: Binary Operators//EN" \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/ent/iso-amsb.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Added Latin 2//EN" \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/ent/iso-lat2.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Added Math Symbols: Relations//EN" \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/ent/iso-amsr.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Non-Russian Cyrillic//EN" \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/ent/iso-cyr2.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "rewriteSystem" \
-    "http://www.oasis-open.org/docbook/xml/4.1.2" \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "rewriteURI" \
-    "http://www.oasis-open.org/docbook/xml/4.1.2" \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}" $CATALOG
-
-  # DocBook XML V4.2
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Publishing//EN" \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/ent/iso-pub.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Greek Letters//EN" \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/ent/iso-grk1.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "-//OASIS//ELEMENTS DocBook XML Information Pool V4.2//EN" \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/dbpoolx.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Box and Line Drawing//EN" \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/ent/iso-box.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "-//OASIS//DTD DocBook XML V4.2//EN" \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/docbookx.dtd" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Greek Symbols//EN" \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/ent/iso-grk3.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Added Math Symbols: Negated Relations//EN" \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/ent/iso-amsn.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Numeric and Special Graphic//EN" \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/ent/iso-num.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "-//OASIS//ENTITIES DocBook XML Character Entities V4.2//EN" \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/dbcentx.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Alternative Greek Symbols//EN" \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/ent/iso-grk4.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "-//OASIS//ENTITIES DocBook XML Notations V4.2//EN" \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/dbnotnx.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Diacritical Marks//EN" \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/ent/iso-dia.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Monotoniko Greek//EN" \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/ent/iso-grk2.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "-//OASIS//ENTITIES DocBook XML Additional General Entities V4.2//EN" \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/dbgenent.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "-//OASIS//ELEMENTS DocBook XML Document Hierarchy V4.2//EN" \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/dbhierx.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Added Math Symbols: Arrow Relations//EN" \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/ent/iso-amsa.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Added Math Symbols: Ordinary//EN" \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/ent/iso-amso.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Russian Cyrillic//EN" \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/ent/iso-cyr1.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES General Technical//EN" \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/ent/iso-tech.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Added Math Symbols: Delimiters//EN" \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/ent/iso-amsc.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "-//OASIS//DTD XML Exchange Table Model 19990315//EN" \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/soextblx.dtd" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "-//OASIS//DTD DocBook XML CALS Table Model V4.2//EN" \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/calstblx.dtd" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Added Latin 1//EN" \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/ent/iso-lat1.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Added Math Symbols: Binary Operators//EN" \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/ent/iso-amsb.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Added Latin 2//EN" \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/ent/iso-lat2.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Added Math Symbols: Relations//EN" \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/ent/iso-amsr.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Non-Russian Cyrillic//EN" \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/ent/iso-cyr2.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "rewriteSystem" \
-    "http://www.oasis-open.org/docbook/xml/4.2" \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "rewriteURI" \
-    "http://www.oasis-open.org/docbook/xml/4.2" \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}" $CATALOG
-
-  # DocBook XML V4.3
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Publishing//EN" \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/ent/iso-pub.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Greek Letters//EN" \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/ent/iso-grk1.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "-//OASIS//ELEMENTS DocBook XML Information Pool V4.3//EN" \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/dbpoolx.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Box and Line Drawing//EN" \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/ent/iso-box.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "-//OASIS//DTD DocBook XML V4.3//EN" \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/docbookx.dtd" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Greek Symbols//EN" \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/ent/iso-grk3.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Added Math Symbols: Negated Relations//EN" \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/ent/iso-amsn.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Numeric and Special Graphic//EN" \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/ent/iso-num.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "-//OASIS//ENTITIES DocBook XML Character Entities V4.3//EN" \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/dbcentx.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Alternative Greek Symbols//EN" \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/ent/iso-grk4.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "-//OASIS//ENTITIES DocBook XML Notations V4.3//EN" \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/dbnotnx.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Diacritical Marks//EN" \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/ent/iso-dia.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Monotoniko Greek//EN" \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/ent/iso-grk2.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "-//OASIS//ENTITIES DocBook XML Additional General Entities V4.3//EN" \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/dbgenent.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "-//OASIS//ELEMENTS DocBook XML Document Hierarchy V4.3//EN" \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/dbhierx.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Added Math Symbols: Arrow Relations//EN" \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/ent/iso-amsa.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Added Math Symbols: Ordinary//EN" \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/ent/iso-amso.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Russian Cyrillic//EN" \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/ent/iso-cyr1.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES General Technical//EN" \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/ent/iso-tech.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Added Math Symbols: Delimiters//EN" \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/ent/iso-amsc.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "-//OASIS//DTD XML Exchange Table Model 19990315//EN" \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/soextblx.dtd" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "-//OASIS//DTD DocBook XML CALS Table Model V4.3//EN" \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/calstblx.dtd" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Added Latin 1//EN" \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/ent/iso-lat1.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Added Math Symbols: Binary Operators//EN" \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/ent/iso-amsb.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Added Latin 2//EN" \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/ent/iso-lat2.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Added Math Symbols: Relations//EN" \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/ent/iso-amsr.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Non-Russian Cyrillic//EN" \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/ent/iso-cyr2.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "rewriteSystem" \
-    "http://www.oasis-open.org/docbook/xml/4.3" \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "rewriteURI" \
-    "http://www.oasis-open.org/docbook/xml/4.3" \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}" $CATALOG
-
-  # DocBook XML V4.4
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Publishing//EN" \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/ent/isopub.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Greek Letters//EN" \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/ent/isogrk1.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "-//OASIS//ELEMENTS DocBook XML Information Pool V4.4//EN" \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/dbpoolx.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Box and Line Drawing//EN" \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/ent/isobox.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "-//OASIS//DTD DocBook XML V4.4//EN" \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/docbookx.dtd" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Greek Symbols//EN" \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/ent/isogrk3.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Added Math Symbols: Negated Relations//EN" \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/ent/isoamsn.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Numeric and Special Graphic//EN" \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/ent/isonum.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "-//OASIS//ENTITIES DocBook XML Character Entities V4.4//EN" \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/dbcentx.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Alternative Greek Symbols//EN" \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/ent/isogrk4.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "-//OASIS//ENTITIES DocBook XML Notations V4.4//EN" \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/dbnotnx.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Diacritical Marks//EN" \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/ent/isodia.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Monotoniko Greek//EN" \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/ent/isogrk2.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "-//OASIS//ENTITIES DocBook XML Additional General Entities V4.4//EN" \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/dbgenent.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "-//OASIS//ELEMENTS DocBook XML Document Hierarchy V4.4//EN" \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/dbhierx.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Added Math Symbols: Arrow Relations//EN" \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/ent/isoamsa.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Added Math Symbols: Ordinary//EN" \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/ent/isoamso.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Russian Cyrillic//EN" \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/ent/isocyr1.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES General Technical//EN" \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/ent/isotech.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Added Math Symbols: Delimiters//EN" \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/ent/isoamsc.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "-//OASIS//DTD XML Exchange Table Model 19990315//EN" \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/soextblx.dtd" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "-//OASIS//DTD DocBook XML CALS Table Model V4.4//EN" \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/calstblx.dtd" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Added Latin 1//EN" \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/ent/isolat1.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Added Math Symbols: Binary Operators//EN" \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/ent/isoamsb.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Added Latin 2//EN" \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/ent/isolat2.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Added Math Symbols: Relations//EN" \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/ent/isoamsr.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Non-Russian Cyrillic//EN" \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/ent/isocyr2.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "rewriteSystem" \
-    "http://www.oasis-open.org/docbook/xml/4.4" \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "rewriteURI" \
-    "http://www.oasis-open.org/docbook/xml/4.4" \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}" $CATALOG
-
-   # DocBook XML V4.5
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Publishing//EN" \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/ent/isopub.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Greek Letters//EN" \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/ent/isogrk1.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "-//OASIS//ELEMENTS DocBook XML Information Pool V4.5//EN" \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/dbpoolx.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Box and Line Drawing//EN" \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/ent/isobox.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "-//OASIS//DTD DocBook XML V4.5//EN" \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/docbookx.dtd" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Greek Symbols//EN" \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/ent/isogrk3.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Added Math Symbols: Negated Relations//EN" \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/ent/isoamsn.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Numeric and Special Graphic//EN" \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/ent/isonum.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "-//OASIS//ENTITIES DocBook XML Character Entities V4.5//EN" \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/dbcentx.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Alternative Greek Symbols//EN" \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/ent/isogrk4.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "-//OASIS//ENTITIES DocBook XML Notations V4.5//EN" \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/dbnotnx.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Diacritical Marks//EN" \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/ent/isodia.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Monotoniko Greek//EN" \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/ent/isogrk2.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "-//OASIS//ENTITIES DocBook XML Additional General Entities V4.5//EN" \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/dbgenent.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "-//OASIS//ELEMENTS DocBook XML Document Hierarchy V4.5//EN" \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/dbhierx.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Added Math Symbols: Arrow Relations//EN" \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/ent/isoamsa.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Added Math Symbols: Ordinary//EN" \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/ent/isoamso.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Russian Cyrillic//EN" \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/ent/isocyr1.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES General Technical//EN" \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/ent/isotech.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Added Math Symbols: Delimiters//EN" \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/ent/isoamsc.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "-//OASIS//DTD XML Exchange Table Model 19990315//EN" \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/soextblx.dtd" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "-//OASIS//DTD DocBook XML CALS Table Model V4.5//EN" \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/calstblx.dtd" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Added Latin 1//EN" \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/ent/isolat1.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Added Math Symbols: Binary Operators//EN" \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/ent/isoamsb.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Added Latin 2//EN" \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/ent/isolat2.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Added Math Symbols: Relations//EN" \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/ent/isoamsr.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "public" \
-    "ISO 8879:1986//ENTITIES Non-Russian Cyrillic//EN" \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/ent/isocyr2.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "rewriteSystem" \
-    "http://www.oasis-open.org/docbook/xml/4.5" \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}" $CATALOG
-  /usr/bin/xmlcatalog --noout --add "rewriteURI" \
-    "http://www.oasis-open.org/docbook/xml/4.5" \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}" $CATALOG
-
-fi
+# </quote>
+# But the code that followed just found the first XML DTD and the first
+# SGML DTD, swappinmg these two lines if the XML one preceded.
+# But that only ensures that there is an SGML DTD before all XML ones.
+# No one complained, so either this was enough, or the buggy SGML tools
+# are long dead, or their users do not use bugzilla.
+# Anyway, the following code, introduced in 1.0-46, does better: it ensures
+# that all XML DTDs are after all SGML ones, by moving them to the end.
+sed -ni '
+  /xml-docbook/ H
+  /xml-docbook/ !p
+  $ {
+          g
+          s/^\n//p
+  }
+  ' /etc/sgml/catalog
 
 # Finally, make sure everything in /etc/sgml is readable!
 /bin/chmod a+r /etc/sgml/*
 
-%triggerin -- openjade >= %{?openjadever}
-#openjade catalog registration
-  # DocBook V3.0
-  /usr/bin/xmlcatalog --sgml --noout --add \
-  /etc/sgml/sgml-docbook-3.0-%{version}-%{release}.cat \
-  /usr/share/sgml/openjade-%{openjadever}/catalog
-
-  # DocBook V3.1
-  /usr/bin/xmlcatalog --sgml --noout --add \
-  /etc/sgml/sgml-docbook-3.1-%{version}-%{release}.cat \
-  /usr/share/sgml/openjade-%{openjadever}/catalog
-
-  # DocBook V4.0
-  /usr/bin/xmlcatalog --sgml --noout --add \
-  /etc/sgml/sgml-docbook-4.0-%{version}-%{release}.cat \
-  /usr/share/sgml/openjade-%{openjadever}/catalog
-
-  # DocBook V4.1
-  /usr/bin/xmlcatalog --sgml --noout --add \
-  /etc/sgml/sgml-docbook-4.1-%{version}-%{release}.cat \
-  /usr/share/sgml/openjade-%{openjadever}/catalog
-
-  # DocBook V4.2
-  /usr/bin/xmlcatalog --sgml --noout --add \
-  /etc/sgml/sgml-docbook-4.2-%{version}-%{release}.cat \
-  /usr/share/sgml/openjade-%{openjadever}/catalog
-
-  # DocBook V4.3
-  /usr/bin/xmlcatalog --sgml --noout --add \
-  /etc/sgml/sgml-docbook-4.3-%{version}-%{release}.cat \
-  /usr/share/sgml/openjade-%{openjadever}/catalog
-
-  # DocBook V4.4
-  /usr/bin/xmlcatalog --sgml --noout --add \
-  /etc/sgml/sgml-docbook-4.4-%{version}-%{release}.cat \
-  /usr/share/sgml/openjade-%{openjadever}/catalog
-
-  # DocBook V4.5
-  /usr/bin/xmlcatalog --sgml --noout --add \
-  /etc/sgml/sgml-docbook-4.5-%{version}-%{release}.cat \
-  /usr/share/sgml/openjade-%{openjadever}/catalog
-
-  # DocBook XML V4.1.2
-  /usr/bin/xmlcatalog --sgml --noout --add \
-  /etc/sgml/xml-docbook-4.1.2-%{version}-%{release}.cat \
-  /usr/share/sgml/openjade-%{openjadever}/catalog
-
-  # DocBook XML V4.2
-  /usr/bin/xmlcatalog --sgml --noout --add \
-  /etc/sgml/xml-docbook-4.2-%{version}-%{release}.cat \
-  /usr/share/sgml/openjade-%{openjadever}/catalog
-
-  # DocBook XML V4.3
-  /usr/bin/xmlcatalog --sgml --noout --add \
-  /etc/sgml/xml-docbook-4.3-%{version}-%{release}.cat \
-  /usr/share/sgml/openjade-%{openjadever}/catalog
-
-  # DocBook XML V4.4
-  /usr/bin/xmlcatalog --sgml --noout --add \
-  /etc/sgml/xml-docbook-4.4-%{version}-%{release}.cat \
-  /usr/share/sgml/openjade-%{openjadever}/catalog
-
-  # DocBook XML V4.5
-  /usr/bin/xmlcatalog --sgml --noout --add \
-  /etc/sgml/xml-docbook-4.5-%{version}-%{release}.cat \
-  /usr/share/sgml/openjade-%{openjadever}/catalog
-#openjade registration trigger end
-
-%triggerun -- openjade >= %{?openjadever}
-  [ $2 = 0 ] || exit 0
-  #openjade catalog unregistration
-  # DocBook V3.0
-  /usr/bin/xmlcatalog --sgml --noout --del \
-  /etc/sgml/sgml-docbook-3.0-%{version}-%{release}.cat \
-  /usr/share/sgml/openjade-%{openjadever}/catalog
-
-  # DocBook V3.1
-  /usr/bin/xmlcatalog --sgml --noout --del \
-  /etc/sgml/sgml-docbook-3.1-%{version}-%{release}.cat \
-  /usr/share/sgml/openjade-%{openjadever}/catalog
-
-  # DocBook V4.0
-  /usr/bin/xmlcatalog --sgml --noout --del \
-  /etc/sgml/sgml-docbook-4.0-%{version}-%{release}.cat \
-  /usr/share/sgml/openjade-%{openjadever}/catalog
-
-  # DocBook V4.1
-  /usr/bin/xmlcatalog --sgml --noout --del \
-  /etc/sgml/sgml-docbook-4.1-%{version}-%{release}.cat \
-  /usr/share/sgml/openjade-%{openjadever}/catalog
-
-  # DocBook XML V4.1.2
-  /usr/bin/xmlcatalog --sgml --noout --del \
-  /etc/sgml/xml-docbook-4.1.2-%{version}-%{release}.cat \
-  /usr/share/sgml/openjade-%{openjadever}/catalog
-
-  # DocBook V4.2
-  /usr/bin/xmlcatalog --sgml --noout --del \
-  /etc/sgml/sgml-docbook-4.2-%{version}-%{release}.cat \
-  /usr/share/sgml/openjade-%{openjadever}/catalog
-
-  # DocBook XML V4.2
-  /usr/bin/xmlcatalog --sgml --noout --del \
-  /etc/sgml/xml-docbook-4.2-%{version}-%{release}.cat \
-  /usr/share/sgml/openjade-%{openjadever}/catalog
-
-  # DocBook V4.3
-  /usr/bin/xmlcatalog --sgml --noout --del \
-  /etc/sgml/sgml-docbook-4.3-%{version}-%{release}.cat \
-  /usr/share/sgml/openjade-%{openjadever}/catalog
-
-  # DocBook XML V4.3
-  /usr/bin/xmlcatalog --sgml --noout --del \
-  /etc/sgml/xml-docbook-4.3-%{version}-%{release}.cat \
-  /usr/share/sgml/openjade-%{openjadever}/catalog
-
-  # DocBook V4.4
-  /usr/bin/xmlcatalog --sgml --noout --del \
-  /etc/sgml/sgml-docbook-4.4-%{version}-%{release}.cat \
-  /usr/share/sgml/openjade-%{openjadever}/catalog
-
-  # DocBook XML V4.4
-  /usr/bin/xmlcatalog --sgml --noout --del \
-  /etc/sgml/xml-docbook-4.4-%{version}-%{release}.cat \
-  /usr/share/sgml/openjade-%{openjadever}/catalog
-
-  # DocBook V4.5
-  /usr/bin/xmlcatalog --sgml --noout --del \
-  /etc/sgml/sgml-docbook-4.5-%{version}-%{release}.cat \
-  /usr/share/sgml/openjade-%{openjadever}/catalog
-
-  # DocBook XML V4.5
-  /usr/bin/xmlcatalog --sgml --noout --del \
-  /etc/sgml/xml-docbook-4.5-%{version}-%{release}.cat \
-  /usr/share/sgml/openjade-%{openjadever}/catalog
-#openjade unregistration trigger end
-
-
 %postun
-##
-## SGML catalog
-##
-
-# Update the centralized catalog corresponding to this version of the DTD
-# DocBook V3.0
-/usr/bin/xmlcatalog --sgml --noout --del /etc/sgml/catalog \
-  /etc/sgml/sgml-docbook-3.0-%{version}-%{release}.cat
-rm -f /etc/sgml/sgml-docbook-3.0-%{version}-%{release}.cat
-
-# DocBook V3.1
-/usr/bin/xmlcatalog --sgml --noout --del /etc/sgml/catalog \
-  /etc/sgml/sgml-docbook-3.1-%{version}-%{release}.cat
-rm -f /etc/sgml/sgml-docbook-3.1-%{version}-%{release}.cat
-
-# DocBook V4.0
-/usr/bin/xmlcatalog --sgml --noout --del /etc/sgml/catalog \
-  /etc/sgml/sgml-docbook-4.0-%{version}-%{release}.cat
-rm -f /etc/sgml/sgml-docbook-4.0-%{version}-%{release}.cat
-
-# DocBook V4.1
-/usr/bin/xmlcatalog --sgml --noout --del /etc/sgml/catalog \
-  /etc/sgml/sgml-docbook-4.1-%{version}-%{release}.cat
-rm -f /etc/sgml/sgml-docbook-4.1-%{version}-%{release}.cat
-
-# DocBook XML V4.1.2
-/usr/bin/xmlcatalog --sgml --noout --del /etc/sgml/catalog \
-  /etc/sgml/xml-docbook-4.1.2-%{version}-%{release}.cat
-rm -f /etc/sgml/xml-docbook-4.1.2-%{version}-%{release}.cat
-
-# DocBook V4.2
-/usr/bin/xmlcatalog --sgml --noout --del /etc/sgml/catalog \
-  /etc/sgml/sgml-docbook-4.2-%{version}-%{release}.cat
-rm -f /etc/sgml/sgml-docbook-4.2-%{version}-%{release}.cat
-
-# DocBook XML V4.2
-/usr/bin/xmlcatalog --sgml --noout --del /etc/sgml/catalog \
-  /etc/sgml/xml-docbook-4.2-%{version}-%{release}.cat
-rm -f /etc/sgml/xml-docbook-4.2-%{version}-%{release}.cat
-
-# DocBook V4.3
-/usr/bin/xmlcatalog --sgml --noout --del /etc/sgml/catalog \
-  /etc/sgml/sgml-docbook-4.3-%{version}-%{release}.cat
-rm -f /etc/sgml/sgml-docbook-4.3-%{version}-%{release}.cat
-
-# DocBook XML V4.3
-/usr/bin/xmlcatalog --sgml --noout --del /etc/sgml/catalog \
-  /etc/sgml/xml-docbook-4.3-%{version}-%{release}.cat
-rm -f /etc/sgml/xml-docbook-4.3-%{version}-%{release}.cat
-
-# DocBook V4.4
-/usr/bin/xmlcatalog --sgml --noout --del /etc/sgml/catalog \
-  /etc/sgml/sgml-docbook-4.4-%{version}-%{release}.cat
-rm -f /etc/sgml/sgml-docbook-4.4-%{version}-%{release}.cat
-
-# DocBook XML V4.4
-/usr/bin/xmlcatalog --sgml --noout --del /etc/sgml/catalog \
-  /etc/sgml/xml-docbook-4.4-%{version}-%{release}.cat
-rm -f /etc/sgml/xml-docbook-4.4-%{version}-%{release}.cat
-
-# DocBook V4.5
-/usr/bin/xmlcatalog --sgml --noout --del /etc/sgml/catalog \
-  /etc/sgml/sgml-docbook-4.5-%{version}-%{release}.cat
-rm -f /etc/sgml/sgml-docbook-4.5-%{version}-%{release}.cat
-
-# DocBook XML V4.5
-/usr/bin/xmlcatalog --sgml --noout --del /etc/sgml/catalog \
-  /etc/sgml/xml-docbook-4.5-%{version}-%{release}.cat
-rm -f /etc/sgml/xml-docbook-4.5-%{version}-%{release}.cat
-
+catcmd='/usr/bin/xmlcatalog --noout'
+xmlcatalog=/usr/share/sgml/docbook/xmlcatalog
+entities="
+ent/iso-pub.ent
+ent/iso-grk1.ent
+dbpoolx.mod
+ent/iso-box.ent
+docbookx.dtd
+ent/iso-grk3.ent
+ent/iso-amsn.ent
+ent/iso-num.ent
+dbcentx.mod
+ent/iso-grk4.ent
+dbnotnx.mod
+ent/iso-dia.ent
+ent/iso-grk2.ent
+dbgenent.mod
+dbhierx.mod
+ent/iso-amsa.ent
+ent/iso-amso.ent
+ent/iso-cyr1.ent
+ent/iso-tech.ent
+ent/iso-amsc.ent
+soextblx.dtd
+calstblx.dtd
+ent/iso-lat1.ent
+ent/iso-amsb.ent
+ent/iso-lat2.ent
+ent/iso-amsr.ent
+ent/iso-cyr2.ent
+"
+eval set %{version_list}
+for dir
+do
+  fmt=${dir#*-} ver=${dir%%-*} vvr=$ver-%{version}-%{release}
+  sgmldir=/usr/share/sgml/docbook/$fmt-dtd-$vvr
+  ## SGML catalog
+  # Update the centralized catalog corresponding to this version of the DTD
+  $catcmd --sgml --del /etc/sgml/catalog /etc/sgml/$fmt-docbook-$vvr.cat
+  rm -f /etc/sgml/$fmt-docbook-$vvr.cat
+  ## XML catalog
+  if [ $fmt = xml -a -w $xmlcatalog ]; then
+    for f in $entities; do
+      case $ver in 4.[45]) f=${f/-/} ;; esac
+      $catcmd --del $sgmldir/$f $xmlcatalog
+    done
+    $catcmd --del $sgmldir $xmlcatalog
+  fi
+done
 
-# Fix up SGML super catalog so that there isn't an XML DTD before an
-# SGML one.  We need to do this (*sigh*) because xmlcatalog messes up
-# the order of the lines, and SGML tools don't like to see XML things
-# they aren't expecting.
-CATALOG=/etc/sgml/catalog
-SGML=$(cat -n ${CATALOG} | grep sgml-docbook | head -1 | (read n line;echo $n))
-XML=$(cat -n ${CATALOG} | grep xml-docbook | head -1 | (read n line; echo $n))
-# Do they need switching around?
-if [ -n "${XML}" ] && [ -n "${SGML}" ] && [ "${XML}" -lt "${SGML}" ]
-then
-  # Switch those two lines around.
-  XML=$((XML - 1))
-  SGML=$((SGML - 1))
-  perl -e "@_=<>;@_[$XML, $SGML]=@_[$SGML, $XML];print @_" \
-    ${CATALOG} > ${CATALOG}.rpmtmp
-  mv -f ${CATALOG}.rpmtmp ${CATALOG}
-fi
+# See the comment attached to this command in the %%post scriptlet.
+sed -ni '
+  /xml-docbook/ H
+  /xml-docbook/ !p
+  $ {
+          g
+          s/^\n//p
+  }
+  ' /etc/sgml/catalog
+
+%triggerin -- openjade >= %{openjadever}
+eval set %{version_list}
+for dir
+do
+  fmt=${dir#*-} ver=${dir%%-*} vvr=$ver-%{version}-%{release}
+  /usr/bin/xmlcatalog --sgml --noout --add /etc/sgml/$fmt-docbook-$vvr.cat \
+    /usr/share/sgml/openjade-%{openjadever}/catalog
+done
 
-##
-## XML catalog
-##
-
-CAT_DIR=/usr/share/sgml/docbook/
-CATALOG=/usr/share/sgml/docbook/xmlcatalog
-
-if [ -w $CATALOG ]
-then
-  # DocBook XML V4.1.2
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/ent/iso-pub.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/ent/iso-grk1.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/dbpoolx.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/ent/iso-box.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/docbookx.dtd" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/ent/iso-grk3.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/ent/iso-amsn.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/ent/iso-num.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/dbcentx.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/ent/iso-grk4.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/dbnotnx.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/ent/iso-dia.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/ent/iso-grk2.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/dbgenent.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/dbhierx.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/ent/iso-amsa.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/ent/iso-amso.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/ent/iso-cyr1.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/ent/iso-tech.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/ent/iso-amsc.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/soextblx.dtd" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/calstblx.dtd" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/ent/iso-lat1.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/ent/iso-amsb.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/ent/iso-lat2.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/ent/iso-amsr.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}/ent/iso-cyr2.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.1.2-%{version}-%{release}" $CATALOG
-
-  # DocBook XML V4.2
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/ent/iso-pub.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/ent/iso-grk1.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/dbpoolx.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/ent/iso-box.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/docbookx.dtd" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/ent/iso-grk3.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/ent/iso-amsn.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/ent/iso-num.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/dbcentx.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/ent/iso-grk4.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/dbnotnx.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/ent/iso-dia.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/ent/iso-grk2.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/dbgenent.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/dbhierx.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/ent/iso-amsa.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/ent/iso-amso.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/ent/iso-cyr1.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/ent/iso-tech.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/ent/iso-amsc.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/soextblx.dtd" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/calstblx.dtd" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/ent/iso-lat1.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/ent/iso-amsb.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/ent/iso-lat2.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/ent/iso-amsr.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}/ent/iso-cyr2.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.2-%{version}-%{release}" $CATALOG
-
-  # DocBook XML V4.3
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/ent/iso-pub.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/ent/iso-grk1.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/dbpoolx.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/ent/iso-box.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/docbookx.dtd" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/ent/iso-grk3.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/ent/iso-amsn.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/ent/iso-num.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/dbcentx.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/ent/iso-grk4.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/dbnotnx.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/ent/iso-dia.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/ent/iso-grk2.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/dbgenent.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/dbhierx.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/ent/iso-amsa.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/ent/iso-amso.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/ent/iso-cyr1.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/ent/iso-tech.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/ent/iso-amsc.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/soextblx.dtd" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/calstblx.dtd" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/ent/iso-lat1.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/ent/iso-amsb.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/ent/iso-lat2.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/ent/iso-amsr.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}/ent/iso-cyr2.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.3-%{version}-%{release}" $CATALOG
-
-  # DocBook XML V4.4
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/ent/isopub.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/ent/isogrk1.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/dbpoolx.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/ent/isobox.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/docbookx.dtd" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/ent/isogrk3.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/ent/isoamsn.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/ent/isonum.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/dbcentx.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/ent/isogrk4.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/dbnotnx.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/ent/isodia.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/ent/isogrk2.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/dbgenent.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/dbhierx.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/ent/isoamsa.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/ent/isoamso.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/ent/isocyr1.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/ent/isotech.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/ent/isoamsc.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/soextblx.dtd" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/calstblx.dtd" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/ent/isolat1.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/ent/isoamsb.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/ent/isolat2.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/ent/isoamsr.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}/ent/isocyr2.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.4-%{version}-%{release}" $CATALOG
-
-  # DocBook XML V4.5
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/ent/isopub.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/ent/isogrk1.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/dbpoolx.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/ent/isobox.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/docbookx.dtd" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/ent/isogrk3.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/ent/isoamsn.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/ent/isonum.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/dbcentx.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/ent/isogrk4.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/dbnotnx.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/ent/isodia.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/ent/isogrk2.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/dbgenent.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/dbhierx.mod" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/ent/isoamsa.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/ent/isoamso.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/ent/isocyr1.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/ent/isotech.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/ent/isoamsc.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/soextblx.dtd" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/calstblx.dtd" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/ent/isolat1.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/ent/isoamsb.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/ent/isolat2.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/ent/isoamsr.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}/ent/isocyr2.ent" $CATALOG
-  /usr/bin/xmlcatalog --noout --del \
-    "${CAT_DIR}xml-dtd-4.5-%{version}-%{release}" $CATALOG
-fi
+%triggerun -- openjade >= %{openjadever}
+[ $2 = 0 ] || exit 0
+eval set %{version_list}
+for dir
+do
+  fmt=${dir#*-} ver=${dir%%-*} vvr=$ver-%{version}-%{release}
+  /usr/bin/xmlcatalog --sgml --noout --del /etc/sgml/$fmt-docbook-$vvr.cat \
+    /usr/share/sgml/openjade-%{openjadever}/catalog
+done
 
 %changelog
+* Wed Apr  8 2009 Stepan Kasal <skasal at redhat.com> - 1.0-46
+- remove perl dependency (#462997)
+- make %%install and the scriptlets more compact
+
 * Tue Feb 24 2009 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 1.0-45
 - Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
 




More information about the fedora-extras-commits mailing list