#!/usr/bin/env bash
name='docbook-xml'
release='1'
version='4.5'
url='https://example.org'
description='Package description missing'
email='akarsu@protonmail.com'
maintainer='akarsu'
license=('MIT')
source=('https://docbook.org/xml/4.1.2/docbkx412.zip'
        "docbook-xml.sysconf")
depends=(libxml2)
makedepends=()
md5sums=('900d7609fb7e6d78901b357e4acfbc17'
         'SKIP')
group=(app.text)
uses=()
arch=('x86_64')

#cd $name-$version

_vers=(4.{2..5})

for _ver in ${_vers[@]}; do
  source+=("https://docbook.org/xml/$_ver/docbook-xml-$_ver.zip")
  md5sums+=('SKIP')
done
package(){
  local ver xml

  mkdir -p "$DESTDIR/etc/xml"
  xmlcatalog --noout --create "$DESTDIR/etc/xml/docbook-xml"

  mkdir docbook-xml-4.1.2
  bsdtar -C docbook-xml-4.1.2 -xf docbkx412.zip
  for ver in ${_vers[@]}; do
    mkdir docbook-xml-$ver
    bsdtar -C docbook-xml-$ver -xf docbook-xml-$ver.zip
  done

  for ver in 4.1.2 ${_vers[@]}; do
    pushd docbook-xml-$ver
    mkdir -p "$DESTDIR/usr/share/xml/docbook/xml-dtd-$ver"
    cp -dr docbook.cat *.dtd ent/ *.mod \
        "$DESTDIR/usr/share/xml/docbook/xml-dtd-$ver"
    popd

    xml=
    case $ver in
      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"
        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"
        ;;&
      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"
        ;;&
      *)
        xmlcatalog --noout --add "rewriteSystem" \
          "http://www.oasis-open.org/docbook/xml/$ver" \
          "/usr/share/xml/docbook/xml-dtd-$ver" \
          "$DESTDIR/etc/xml/docbook-xml"
        xmlcatalog --noout --add "rewriteURI" \
          "http://www.oasis-open.org/docbook/xml/$ver" \
          "/usr/share/xml/docbook/xml-dtd-$ver" \
          "$DESTDIR/etc/xml/docbook-xml"
        ;;&
    esac
  done
  mkdir -p "$DESTDIR/etc/sysconf.d"
  install docbook-xml.sysconf "$DESTDIR/etc/sysconf.d/docbook-xml"
}

