mirror of
https://gitlab.com/bzip2/bzip2.git
synced 2025-08-09 13:22:45 +03:00
Increase the project version to 1.1.0 as this is a new feature version. As for all new feature versions, increase the libtool .so version. Only increase the revision, as no API's were added or removed. It may look like I've increased it by 2, but that's because v1.0.8 used Makefiles and was at 1:8:0. See http://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html
115 lines
2.8 KiB
Bash
Executable File
115 lines
2.8 KiB
Bash
Executable File
#!/bin/bash
|
|
# see the README file for usage etc.
|
|
#
|
|
# ------------------------------------------------------------------
|
|
# This file is part of bzip2/libbzip2, a program and library for
|
|
# lossless, block-sorting data compression.
|
|
#
|
|
# bzip2/libbzip2 version 1.1.0 of 6 September 2010
|
|
# Copyright (C) 1996-2010 Julian Seward <jseward@acm.org>
|
|
#
|
|
# Please read the WARNING, DISCLAIMER and PATENTS sections in the
|
|
# README file.
|
|
#
|
|
# This program is released under the terms of the license contained
|
|
# in the file LICENSE.
|
|
# ----------------------------------------------------------------
|
|
|
|
|
|
usage() {
|
|
echo '';
|
|
echo 'Usage: xmlproc.sh -[option] <filename.xml>';
|
|
echo 'Specify a target from:';
|
|
echo '-v verify xml file conforms to dtd';
|
|
echo '-html output in html format (single file)';
|
|
echo '-ps output in postscript format';
|
|
echo '-pdf output in pdf format';
|
|
exit;
|
|
}
|
|
|
|
if test $# -ne 2; then
|
|
usage
|
|
fi
|
|
# assign the variable for the output type
|
|
action=$1; shift
|
|
# assign the output filename
|
|
xmlfile=$1; shift
|
|
# and check user input it correct
|
|
if !(test -f $xmlfile); then
|
|
echo "No such file: $xmlfile";
|
|
exit;
|
|
fi
|
|
# some other stuff we will use
|
|
OUT=output
|
|
xsl_fo=bz-fo.xsl
|
|
xsl_html=bz-html.xsl
|
|
|
|
basename=$xmlfile
|
|
basename=${basename//'.xml'/''}
|
|
|
|
fofile="${basename}.fo"
|
|
htmlfile="${basename}.html"
|
|
pdffile="${basename}.pdf"
|
|
psfile="${basename}.ps"
|
|
xmlfmtfile="${basename}.fmt"
|
|
|
|
# first process the xmlfile with CDATA tags
|
|
./format.pl $xmlfile $xmlfmtfile
|
|
# so the shell knows where the catalogs live
|
|
export XML_CATALOG_FILES=/etc/xml/catalog
|
|
|
|
# post-processing tidy up
|
|
cleanup() {
|
|
echo "Cleaning up: $@"
|
|
while [ $# != 0 ]
|
|
do
|
|
arg=$1; shift;
|
|
echo " deleting $arg";
|
|
rm $arg
|
|
done
|
|
}
|
|
|
|
case $action in
|
|
-v)
|
|
flags='--noout --xinclude --noblanks --postvalid'
|
|
dtd='--dtdvalid http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd'
|
|
xmllint $flags $dtd $xmlfmtfile 2> $OUT
|
|
egrep 'error' $OUT
|
|
rm $OUT
|
|
;;
|
|
|
|
-html)
|
|
echo "Creating $htmlfile ..."
|
|
xsltproc --nonet --xinclude -o $htmlfile $xsl_html $xmlfmtfile
|
|
cleanup $xmlfmtfile
|
|
;;
|
|
|
|
-pdf)
|
|
echo "Creating $pdffile ..."
|
|
xsltproc --nonet --xinclude -o $fofile $xsl_fo $xmlfmtfile
|
|
pdfxmltex $fofile >$OUT </dev/null
|
|
pdfxmltex $fofile >$OUT </dev/null
|
|
pdfxmltex $fofile >$OUT </dev/null
|
|
cleanup $OUT $xmlfmtfile *.aux *.fo *.log *.out
|
|
;;
|
|
|
|
-ps)
|
|
echo "Creating $psfile ..."
|
|
xsltproc --nonet --xinclude -o $fofile $xsl_fo $xmlfmtfile
|
|
pdfxmltex $fofile >$OUT </dev/null
|
|
pdfxmltex $fofile >$OUT </dev/null
|
|
pdfxmltex $fofile >$OUT </dev/null
|
|
pdftops $pdffile $psfile
|
|
cleanup $OUT $xmlfmtfile $pdffile *.aux *.fo *.log *.out
|
|
# passivetex is broken, so we can't go this route yet.
|
|
# xmltex $fofile >$OUT </dev/null
|
|
# xmltex $fofile >$OUT </dev/null
|
|
# xmltex $fofile >$OUT </dev/null
|
|
# dvips -R -q -o bzip-manual.ps *.dvi
|
|
;;
|
|
|
|
*)
|
|
usage
|
|
;;
|
|
esac
|