IGNOREPATH=/home:/var:/dev:/etc:/boot:/root:/tmp:/usr/local:/bin:/sbin:/mnt:/usr/src
STRIPLIB=y
STRIPBIN=y

VERSION=1.0.9
PROGNAME="sgml-tools $VERSION"
DESC="\
sgml-tools (Utilities for working with SGML)                           \n\
                                                                       \n\
SGML stands for Standard Generalized Markup Language.  This is a       \n\
system which allows you to produce LaTeX, HTML, GNU info, LyX, RTF,    \n\
and plain text (via groff) from a single source file in SGML.  It is   \n\
often used for technical software documentation, such as the Linux     \n\
HOWTO documents.  This package includes everything you need to use     \n\
SGML -- all the standard SGML tools, OpenJade, and tools for working   \n\
with DocBook documents (various DTDs)."

BUILD=1
MAINTAINER="Mark Post <mark.post@eds.com>"
SOURCE="Red Hat, for the most part"
PKGNAME=sgml-tools-$VERSION-s390-$BUILD
TAG=OPT

compile() {
   cd /usr/src/rpm/SOURCES/

   tar -zxvf $CWD/docbook-dtd30-sgml-1.0-10.tar.gz
   tar -zxvf $CWD/docbook-dtd31-sgml-1.0-10.tar.gz
   tar -zxvf $CWD/docbook-dtd40-sgml-1.0-11.tar.gz
   tar -zxvf $CWD/docbook-dtd41-sgml-1.0-10.tar.gz
   tar -zxvf $CWD/docbook-dtd41-xml-1.0-7.tar.gz
   tar -zxvf $CWD/docbook-dtd412-xml-1.0-1.tar.gz
   tar -zxvf $CWD/docbook-style-dsssl-1.59-10.tar.gz
   mv docbook-style-dsssl.spec docbook-style-dsssl-1.59.spec
   tar -zxvf $CWD/docbook-style-dsssl-1.64-3.tar.gz
   cp $CWD/updates/docbook-xsl-1.48.tar.bz2 ./
   cp $CWD/docbook-style-xsl-1.48.spec ./
   tar -zxvf $CWD/docbook-style-xsl-1.49-1.src.tar.gz
   tar -zxvf $CWD/docbook-utils-0.6-13.tar.gz
# Pat seems to be using the stuff from 0.6, and not 0.6.9
#  tar -zxvf $CWD/docbook-utils-0.6.9-2.tar.gz
   cp -p $CWD/updates/gtk-doc-1.0.tar.bz2 $CWD/updates/gtk-doc-1.1.tar.bz2 ./
   tar -yxvf gtk-doc-1.0.tar.bz2
   mv gtk-doc-1.0/gtk-doc.spec ./gtk-doc-1.0.spec
   tar -yxvf gtk-doc-1.1.tar.bz2
   rm -rf gtk-doc-1.0/
   mv gtk-doc-1.1/gtk-doc.spec ./gtk-doc-1.1.spec
   rm -rf gtk-doc-1.1/
   tar -zxvf $CWD/jadetex-3.6-4.tar.gz
   tar -zxvf $CWD/openjade-1.3.1-12.tar.gz
   tar -zxvf $CWD/sgml-common-0.5-7.tar.gz
   tar -zxvf $CWD/sgml-tools-1.0.9-12.tar.gz

   # These files will be needed later, but won't be part of the
   # RPM that gets created, so save them
   ( tar -zxvf sgml-tools-1.0.9.tar.gz \
               sgml-tools-1.0.9/BUGS sgml-tools-1.0.9/CHANGES \
               sgml-tools-1.0.9/CONTRIBUTORS sgml-tools-1.0.9/COPYING \
               sgml-tools-1.0.9/INSTALL sgml-tools-1.0.9/README \
               sgml-tools-1.0.9/TODO sgml-tools-1.0.9/VERSION \
               sgml-tools-1.0.9/sgml-tools.lsm
     cd sgml-tools-1.0.9
     tar -cvf $CWD/sgml-tools.doc.tar *
     cd ..
     rm -rf sgml-tools-1.0.9
   )
   cat $CWD/sgml-tools.spec.diff | patch -p5
   cat $CWD/openjade.spec.diff | patch -p0
   cat $CWD/gtk-doc-1.0.spec.diff | patch -p0
   cat $CWD/gtk-doc-1.1.spec.diff | patch -p0

   # The behavior of RPM changed with version 4.1, making this necessary.  I didn't
   # want to have to modify the .spec files for all the packages that broke.
   cat << EOF >~/.rpmmacros
#
# Should unpackaged files in a build root terminate a build?
#
# Note: The default value should be 0 for legacy compatibility.
%_unpackaged_files_terminate_build 0
EOF

   chown root.root *
   for spec in docbook-dtd30-sgml docbook-dtd31-sgml \
		docbook-dtd40-sgml docbook-dtd41-sgml \
		docbook-dtd41-xml docbook-dtd412-xml \
		docbook-style-dsssl-1.59 \
		docbook-style-dsssl docbook-style-xsl \
		docbook-style-xsl-1.48 \
		docbook-utils gtk-doc-1.0 gtk-doc-1.1 jadetex openjade \
		sgml-common sgml-tools
     do echo "* * * * *"
	echo "Now rebuilding $spec"
	echo "* * * * *";sleep 2
        rpmbuild -bb --nodeps --clean $spec".spec"
        rpmbuild --rmsource --nodeps $spec".spec"
        rm $spec".spec"
   done;

   rm gml-tools-1.0.9-12.bin.tar.gz \
      ~/.rpmmacros

   cd $TMP
   for rpm in docbook-dtd30-sgml-1.0-10 docbook-dtd31-sgml-1.0-10 \
		docbook-dtd40-sgml-1.0-11 docbook-dtd41-sgml-1.0-10 \
		docbook-dtd41-xml-1.0-7 docbook-dtd412-xml-1.0-1 \
		docbook-style-dsssl-1.59-10 docbook-style-dsssl-1.64-3 \
		docbook-style-xsl-1.48-1 \
		docbook-style-xsl-1.49-1 docbook-utils-0.6-13 \
		docbook-utils-pdf-0.6-13 gtk-doc-1.0-1 gtk-doc-1.1-1 \
		jadetex-3.6-4 sgml-common-0.5-7; do
     echo Converting $rpm".noarch.rpm"
     rpm2targz /usr/src/rpm/RPMS/noarch/$rpm".noarch.rpm"
     tar -zxf $rpm".noarch.tar.gz"
     rm $rpm".noarch.tar.gz"
   done
   for rpm in openjade-1.3.1-12 sgml-tools-1.0.9-12; do
     echo Converting $rpm".s390.rpm"
     rpm2targz /usr/src/rpm/RPMS/s390/$rpm".s390.rpm"
     tar -zxf $rpm".s390.tar.gz"
     rm $rpm".s390.tar.gz"
   done;

   echo Converting gnome-doc-tools-2-1.noarch.rpm
   rpm2targz $CWD/gnome-doc-tools-2-1.noarch.rpm
   tar -zxf gnome-doc-tools-2-1.noarch.tar.gz
   rm gnome-doc-tools-2-1.noarch.tar.gz

   ( cd $TMP/usr/share/
     mkdir -p xml/docbook/xml-dtd-4.1.2-9
     mv -v sgml/docbook/xsl-stylesheets-1.48-1 xml/docbook/
     cp -av sgml/docbook/xml-dtd-4.1.2/* xml/docbook/xml-dtd-4.1.2-9
   )

   ( cd $TMP/usr/share/sgml/docbook
     rm -f xsl-stylesheets ; ln -sf xsl-stylesheets-1.49-1 xsl-stylesheets
     rm -rf dsssl-stylesheets ; ln -sf dsssl-stylesheets-1.64 dsssl-stylesheets
   )

   zcat $CWD/buildDocBookCatalog.gz > buildDocBookCatalog

   # patch the build file so that it searches the directory in which
   # we are building all this stuff, and not the real system files.
   cat $CWD/buildDocBookCatalog.diff | patch -p0

   export TMP
   sh ./buildDocBookCatalog
   rm ./buildDocBookCatalog

   # Get a copy of the current install-catalog script
   cp -p $TMP/usr/bin/install-catalog ./
   sed -e 's%/etc%$PREFIX/etc%g' \
       -e 's%SGML_CENTRALIZED=$2%SGML_CENTRALIZED=$PREFIX$2%g' \
       -e 's%SGML_ORDINARY=$3%SGML_ORDINARY=$PREFIX$3%g' \
       $TMP/usr/bin/install-catalog > $TMP/install-catalog

   # Execute the post-installation tasks for the various RPM packages
#
#dtd30-sgml
#
   # Update the centralized catalog corresponding to this version of the DTD
   PREFIX=$TMP $TMP/install-catalog --add /etc/sgml/sgml-docbook-3.0.cat /usr/share/sgml/sgml-iso-entities-8879.1986/catalog > /dev/null
   PREFIX=$TMP $TMP/install-catalog --add /etc/sgml/sgml-docbook-3.0.cat /usr/share/sgml/docbook/sgml-dtd-3.0/catalog > /dev/null

   # The following lines are for the case in which the style sheets were
   # installed after another DTD but before this DTD
   STYLESHEETS=$(echo $TMP/usr/share/sgml/docbook/dsssl-stylesheets-*)
   STYLESHEETS=${STYLESHEETS##*/dsssl-stylesheets-}
   if [ "$STYLESHEETS" != "*" ]; then
       PREFIX=$TMP $TMP/install-catalog --add /etc/sgml/sgml-docbook-3.0.cat /usr/share/sgml/openjade-1.3.1/catalog > /dev/null
       PREFIX=$TMP $TMP/install-catalog --add /etc/sgml/sgml-docbook-3.0.cat /usr/share/sgml/docbook/dsssl-stylesheets-$STYLESHEETS/catalog > /dev/null
   fi

   # Update the link to the current version of the DTD
   ln -s -f /etc/sgml/sgml-docbook-3.0.cat $TMP/etc/sgml/sgml-docbook.cat

#
#
#dtd31-sgml
#
   # Update the centralized catalog corresponding to this version of the DTD
   PREFIX=$TMP $TMP/install-catalog --add /etc/sgml/sgml-docbook-3.1.cat /usr/share/sgml/sgml-iso-entities-8879.1986/catalog > /dev/null
   PREFIX=$TMP $TMP/install-catalog --add /etc/sgml/sgml-docbook-3.1.cat /usr/share/sgml/docbook/sgml-dtd-3.1/catalog > /dev/null

   # The following lines are for the case in which the style sheets were
   # installed after another DTD but before this DTD
   STYLESHEETS=$(echo $TMP/usr/share/sgml/docbook/dsssl-stylesheets-*)
   STYLESHEETS=${STYLESHEETS##*/dsssl-stylesheets-}
   if [ "$STYLESHEETS" != "*" ]; then
       PREFIX=$TMP $TMP/install-catalog --add /etc/sgml/sgml-docbook-3.1.cat /usr/share/sgml/openjade-1.3.1/catalog > /dev/null
       PREFIX=$TMP $TMP/install-catalog --add /etc/sgml/sgml-docbook-3.1.cat /usr/share/sgml/docbook/dsssl-stylesheets-$STYLESHEETS/catalog > /dev/null
   fi

   # Update the link to the current version of the DTD
   ln -s -f /etc/sgml/sgml-docbook-3.1.cat $TMP/etc/sgml/sgml-docbook.cat

#
#
#dtd40-sgml
#
   # Update the centralized catalog corresponding to this version of the DTD
   PREFIX=$TMP $TMP/install-catalog --add /etc/sgml/sgml-docbook-4.0.cat /usr/share/sgml/sgml-iso-entities-8879.1986/catalog > /dev/null
   PREFIX=$TMP $TMP/install-catalog --add /etc/sgml/sgml-docbook-4.0.cat /usr/share/sgml/docbook/sgml-dtd-4.0/catalog > /dev/null

   # The following lines are for the case in which the style sheets were
   # installed after another DTD but before this DTD
   STYLESHEETS=$(echo $TMP/usr/share/sgml/docbook/dsssl-stylesheets-*)
   STYLESHEETS=${STYLESHEETS##*/dsssl-stylesheets-}
   if [ "$STYLESHEETS" != "*" ]; then
       PREFIX=$TMP $TMP/install-catalog --add /etc/sgml/sgml-docbook-4.0.cat /usr/share/sgml/openjade-1.3.1/catalog > /dev/null
       PREFIX=$TMP $TMP/install-catalog --add /etc/sgml/sgml-docbook-4.0.cat /usr/share/sgml/docbook/dsssl-stylesheets-$STYLESHEETS/catalog > /dev/null
   fi

   # Update the link to the current version of the DTD
   ln -s -f /etc/sgml/sgml-docbook-4.0.cat $TMP/etc/sgml/sgml-docbook.cat

#
#
#dtd41-sgml
#
   # Update the centralized catalog corresponding to this version of the DTD
   PREFIX=$TMP $TMP/install-catalog --add /etc/sgml/sgml-docbook-4.1.cat /usr/share/sgml/sgml-iso-entities-8879.1986/catalog > /dev/null
   PREFIX=$TMP $TMP/install-catalog --add /etc/sgml/sgml-docbook-4.1.cat /usr/share/sgml/docbook/sgml-dtd-4.1/catalog > /dev/null

   # The following lines are for the case in which the style sheets
   # were installed after another DTD but before this DTD
   STYLESHEETS=$(echo $TMP/usr/share/sgml/docbook/dsssl-stylesheets-*)
   STYLESHEETS=${STYLESHEETS##*/dsssl-stylesheets-}
   if [ "$STYLESHEETS" != "*" ]; then
       PREFIX=$TMP $TMP/install-catalog --add /etc/sgml/sgml-docbook-4.1.cat /usr/share/sgml/openjade-1.3.1/catalog > /dev/null
       PREFIX=$TMP $TMP/install-catalog --add /etc/sgml/sgml-docbook-4.1.cat /usr/share/sgml/docbook/dsssl-stylesheets-$STYLESHEETS/catalog > /dev/null
   fi

   # Update the link to the current version of the DTD
   ln -s -f /etc/sgml/sgml-docbook-4.1.cat $TMP/etc/sgml/sgml-docbook.cat

#
#
#dtd41-xml
#
   # Update the centralized catalog corresponding to this version of the DTD
   PREFIX=$TMP $TMP/install-catalog --add /etc/sgml/xml-docbook-4.1.cat /usr/share/sgml/sgml-iso-entities-8879.1986/catalog > /dev/null
   PREFIX=$TMP $TMP/install-catalog --add /etc/sgml/xml-docbook-4.1.cat /usr/share/sgml/docbook/xml-dtd-4.1/catalog > /dev/null

   # The following lines are for the case in which the style sheets
   # were installed after another DTD but before this DTD
   STYLESHEETS=$(echo $TMP/usr/share/sgml/docbook/dsssl-stylesheets-*)
   STYLESHEETS=${STYLESHEETS##*/dsssl-stylesheets-}
   if [ "$STYLESHEETS" != "*" ]; then
       PREFIX=$TMP $TMP/install-catalog --add /etc/sgml/xml-docbook-4.1.cat /usr/share/sgml/openjade-1.3.1/catalog > /dev/null
       PREFIX=$TMP $TMP/install-catalog --add /etc/sgml/xml-docbook-4.1.cat /usr/share/sgml/docbook/dsssl-stylesheets-$STYLESHEETS/catalog > /dev/null
   fi

   # Update the link to the current version of the DTD
   ln -s -f /etc/sgml/xml-docbook-4.1.cat $TMP/etc/sgml/xml-docbook.cat

#
#
#dtd412-xml
#
   # Update the centralized catalog corresponding to this version of the DTD
   PREFIX=$TMP $TMP/install-catalog --add /etc/sgml/xml-docbook-4.1.2.cat /usr/share/sgml/sgml-iso-entities-8879.1986/catalog > /dev/null
   PREFIX=$TMP $TMP/install-catalog --add /etc/sgml/xml-docbook-4.1.2.cat /usr/share/sgml/docbook/xml-dtd-4.1.2/catalog > /dev/null

   # The following lines are for the case in which the style sheets
   # were installed after another DTD but before this DTD
   STYLESHEETS=$(echo $TMP/usr/share/sgml/docbook/dsssl-stylesheets-*)
   STYLESHEETS=${STYLESHEETS##*/dsssl-stylesheets-}
   if [ "$STYLESHEETS" != "*" ]; then
       PREFIX=$TMP $TMP/install-catalog --add /etc/sgml/xml-docbook-4.1.2.cat /usr/share/sgml/openjade-1.3.1/catalog > /dev/null
       PREFIX=$TMP $TMP/install-catalog --add /etc/sgml/xml-docbook-4.1.2.cat /usr/share/sgml/docbook/dsssl-stylesheets-$STYLESHEETS/catalog > /dev/null
   fi

   # Update the link to the current version of the DTD
   ln -s -f /etc/sgml/xml-docbook-4.1.2.cat $TMP/etc/sgml/xml-docbook.cat

#
#
# gnome-doc-tools
#
   PREFIX=$TMP $TMP/install-catalog --add /etc/sgml/png-support-3.1.cat /usr/share/sgml/sgml-iso-entities-8879.1986/catalog
   PREFIX=$TMP $TMP/install-catalog --add /etc/sgml/png-support-3.1.cat /usr/share/sgml/docbook/png-support-3.1/catalog

   ln -s -f /etc/sgml/png-support-3.1.cat $TMP/etc/sgml/png-support.cat

#
#
#style-dsssl
#
   for centralized in etc/sgml/*-docbook-*.cat
     do PREFIX=$TMP/ $TMP/install-catalog --add $centralized /usr/share/sgml/openjade-1.3.1/catalog > /dev/null
        PREFIX=$TMP/ $TMP/install-catalog --remove $centralized /usr/share/sgml/docbook/dsssl-stylesheets-*/catalog >/dev/null 2>/dev/null
        PREFIX=$TMP/ $TMP/install-catalog --add $centralized /usr/share/sgml/docbook/dsssl-stylesheets-1.64/catalog > /dev/null
     done

#
#
#style-xml
#
   CATALOG=$TMP/etc/xml/catalog
   /usr/bin/xmlcatalog --noout --add "rewriteSystem" \
    "http://docbook.sourceforge.net/release/xsl/1.48" \
    "file:///usr/share/sgml/docbook/xsl-stylesheets-1.48-1" $CATALOG
   /usr/bin/xmlcatalog --noout --add "rewriteURI" \
    "http://docbook.sourceforge.net/release/xsl/1.48" \
    "file:///usr/share/sgml/docbook/xsl-stylesheets-1.48-1" $CATALOG

   /usr/bin/xmlcatalog --noout --add "rewriteSystem" \
    "http://docbook.sourceforge.net/release/xsl/1.49" \
    "file:///usr/share/sgml/docbook/xsl-stylesheets-1.49-1" $CATALOG
   /usr/bin/xmlcatalog --noout --add "rewriteURI" \
    "http://docbook.sourceforge.net/release/xsl/1.49" \
    "file:///usr/share/sgml/docbook/xsl-stylesheets-1.49-1" $CATALOG
   /usr/bin/xmlcatalog --noout --add "rewriteSystem" \
    "http://docbook.sourceforge.net/release/xsl/current" \
    "file:///usr/share/sgml/docbook/xsl-stylesheets-1.49-1" $CATALOG
   /usr/bin/xmlcatalog --noout --add "rewriteURI" \
    "http://docbook.sourceforge.net/release/xsl/current" \
    "file:///usr/share/sgml/docbook/xsl-stylesheets-1.49-1" $CATALOG

   # Clean up the file names
   pushd etc/xml
   sed -e "s%$TMP//%/%g" -e "s%$TMP%%g" catalog > out ; mv out catalog
   sed -e "s%$TMP//%/%g" -e "s%$TMP%%g" docbook > out ; mv out docbook
   popd

   pushd etc/sgml
   for name in catalog *.cat
     do if [ ! -h $name ]; then
          sed -e "s%$TMP//%/%g" -e "s%$TMP%%g" $name | sort -u > out ; mv out $name
        fi
   done
   popd

   rm install-catalog
}

install() {
   mkdir /package-sgml-tools
   cp -a $TMP/etc $TMP/usr /package-sgml-tools

   zcat $CWD/buildDocBookCatalog.gz > /package-sgml-tools/usr/bin/buildDocBookCatalog
   chmod 755 /package-sgml-tools/usr/bin/buildDocBookCatalog

   ( cd /package-sgml-tools/usr/share/doc
     mv gnome-doc-tools-2 /package-sgml-tools/usr/doc
     rm -rf /package-sgml-tools/usr/share/doc
   )

   ( cd /package-sgml-tools/usr/doc/sgml-tools-1.0.9/
     mkdir doc
     rm COPYRIGHT
     mv Makedoc.sh README example.sgml guide.* html/ rtf/ doc/
     tar -xvf $CWD/sgml-tools.doc.tar
     rm $CWD/sgml-tools.doc.tar
   )

   ( cd /package-sgml-tools/usr/doc/gtk-doc-1.0/doc
     mv README.docs README
   )

   ( cd /package-sgml-tools/usr/doc/gtk-doc-1.1/doc
     mv README.docs README
   )
     
   ( cd /package-sgml-tools/usr/share/man/man1
     chmod 644 png2eps.1.gz
     mv png2eps.1.gz /package-sgml-tools/usr/man/man1
     rm -rf /package-sgml-tools/usr/share/man/
   )

   ( cd /package-sgml-tools/usr/man/man1
     rm jade.1.gz nsgmls.1.gz onsgmls.1.gz openjade.1.gz osgmlnorm.1.gz \
        ospam.1.gz ospent.1.gz osx.1.gz sgmlnorm.1.gz spam.1.gz \
        spent.1.gz sx.1.gz
   )

   ( cd /package-sgml-tools/usr/bin/
     rm jadetex pdfjadetex
   )

   ( cd /package-sgml-tools/usr/lib/perl5/
     mkdir -p 5.8.0/Text/
     mv Text/EntityMap.pm 5.8.0/Text/
     rmdir Text
   )

   mv /package-sgml-tools/usr/share/xml/docbook/xsl-stylesheets-1.48-1 \
      /package-sgml-tools/usr/share/xml/docbook/xsl-stylesheets-1.48

   rm -rf /package-sgml-tools/usr/share/texmf \
          /package-sgml-tools/usr/doc/docbook-style-xsl-1.48/ \
          /package-sgml-tools/usr/share/xml/docbook/xml-dtd-4.1.2-9/docbook.cat
}

attributes() {
   chown -R root.bin $PKG/package-sgml-tools/usr/bin/
   find $PKG/package-sgml-tools/usr/include -type f | xargs chmod -R 644
}

special() {
   cd $PKG
   mv package-sgml-tools/* ./
   rmdir package-sgml-tools

   cd $CTL
   cat $CWD/slack-desc > slack-desc

   # Add two jadetex post-install commands
   echo "/usr/bin/env - PATH=\$PATH:/usr/share/texmf/bin texhash > /dev/null 2>&1" >> doinst.sh
   echo "/usr/bin/env - PATH=\$PATH:/usr/share/texmf/bin fmtutil --cnffile /usr/share/texmf/tex/jadetex/jadefmtutil.cnf --all > /dev/null 2>&1" >> doinst.sh

   sed -e 's%package-sgml-tools/%%' doinst.sh > doinst.sh.new
   cat doinst.sh.new > doinst.sh
   rm doinst.sh.new
}

