#! /bin/sh
#  -*- Ksh -*-

#  Script to drive the HTML-info conversion process.
#  Pass in upto three parameters:
#  - the name of the main tex file
#  - the name of the output file in texi format (optional)
#  - the name of the output file in info format (optional)
#
#  Written by Fred L. Drake, Jr. <fdrake@acm.org>

EMACS=${EMACS:-emacs}
MAKEINFO=${MAKEINFO:-makeinfo}


# Normalize file name since something called by html2texi.pl seems to
# screw up with relative path names.
FILENAME="$1"
DOCDIR=`dirname "$FILENAME"`
DOCFILE=`basename "$FILENAME"`
DOCNAME=`basename "$FILENAME" .tex`
if [ $# -gt 1 ]; then
    TEXINAME="$2"
else
    TEXINAME="python-$DOCNAME.texi"
fi
if [ $# -gt 2 ]; then
    INFONAME="$3"
else
    INFONAME="python-$DOCNAME.info"
fi

# Now build the real directory names, and locate our support stuff:
WORKDIR=`pwd`
cd `dirname $0`
TOOLSDIR=`pwd`
cd $DOCDIR
DOCDIR=`pwd`
cd $WORKDIR


run() {
    # show what we're doing, like make does:
    echo "$*"
    "$@" || exit $?
}


# generate the Texinfo file:

run $EMACS -batch -q --no-site-file -l $TOOLSDIR/py2texi.el \
    --eval "(setq py2texi-dirs '(\"./\" \"../texinputs/\" \"$DOCDIR\"))" \
    --eval "(setq py2texi-texi-file-name \"$TEXINAME\")" \
    --eval "(setq py2texi-info-file-name \"$INFONAME\")" \
    --eval "(py2texi \"$DOCDIR/$DOCFILE\")" \
    -f kill-emacs
echo Done


# generate the .info files:

run $MAKEINFO --footnote-style end --fill-column 72 \
	      --paragraph-indent 0 --output=$INFONAME $TEXINAME
