1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78
|
#!/bin/bash
#W make_doc Alexander Hulpke
##
## This shell script constructs the (La)TeX .dvi, .ps, and .pdf formats and
## the HTML format versions of the GAP manuals, which currently includes:
## ext, prg, ref, tut, new (main GAP manuals) and
## ctbllib, gapdoc (GAP package manuals)
##
#echo "Cleaning main manual auxiliary files"
rm -f {ref,tut,prg,ext,new}/manual.{toc,lab,ind,dvi,log,ps,pdf}
# ensure that .tex files built from .msk files are re-generated
# ... in case there have been changes to .gd files etc.
#rm -f build/._*
#echo "Building main manual .tex files from .msk files"
#(cd build;make -k)
#echo "Creating main manual .toc, .bbl, .ind, .six and .lab files"
# tex all manuals and build their bibliography and index information
(cd ext; tex manual >& /dev/null;bibtex manual;tex manual >& /dev/null;../manualindex manual)
(cd prg; tex manual >& /dev/null;bibtex manual;tex manual >& /dev/null;../manualindex manual)
(cd ref; tex manual >& /dev/null;bibtex manual;tex manual >& /dev/null;../manualindex manual)
(cd tut; tex manual >& /dev/null;bibtex manual;tex manual >& /dev/null;../manualindex manual)
(cd new; tex manual >& /dev/null;bibtex manual;tex manual >& /dev/null;../manualindex manual)
#####################################################################
### GAP package docs need to be made here (after the main manuals have
### created their manual.lab and manual.six files). Also they need to
### create a manual.lab file for possible cross-references from the
### main manuals.
#echo "Creating CTblLib manuals (most formats)"
# ctbllib # force a fresh make of all the docs
#(cd ../pkg/ctbllib; touch doc/ctbllibr.msk; make manual)
#echo "Creating GapDoc manuals (all formats) and a manual.lab"
# gapdoc
#(cd ../pkg;
# this ensures gapdoc is present once in ALLPKG and not present in NOAUTO
#perl -e 'unless (`grep -i gapdoc ALLPKG`) { system("echo gapdoc >> ALLPKG"); }'
#perl -pi -e "if (/gapdoc/i) { s/^/#/; }" NOAUTO;
# this creates GapDoc's documentation - all formats
#cd gapdoc; ./clean; echo "quit;" | ../../bin/gap.sh -r -q -b makedoc.g;
# this creates the manual.lab needed for gapmacro.tex- & convert.pl-made manuals
#echo "GapDocManualLab(\"gapdoc\");quit;" | ../../bin/gap.sh -r -q -b)
#####################################################################
echo "Creating main manual .pdf files"
# pdftex all manuals to create pdf versions (need to run twice to set
# crossrefs properly)
(cd ref; pdftex manual >& /dev/null; pdftex manual)
(cd tut; pdftex manual >& /dev/null; pdftex manual)
(cd ext; pdftex manual >& /dev/null; pdftex manual)
(cd prg; pdftex manual >& /dev/null; pdftex manual)
(cd new; pdftex manual >& /dev/null; pdftex manual)
echo "Creating CTblLib .pdf manual"
# ctbllib # ctbllib's make doesn't include making .pdf format
#(cd ../pkg/ctbllib/doc; pdftex manual; pdftex manual)
echo "Creating main manual .dvi and .ps files"
# finally tex main manuals again for correct .dvi and postscript versions
(cd ref; tex manual; dvips -D300 manual -o)
(cd tut; tex manual; dvips -D300 manual -o)
(cd ext; tex manual; dvips -D300 manual -o)
(cd prg; tex manual; dvips -D300 manual -o)
(cd new; tex manual; dvips -D300 manual -o)
echo "Creating main manual comprehensive index: .dvi, .ps and .pdf versions"
./allmanualsindex
tex fullindex
pdftex fullindex
dvips -D300 fullindex -o fullindex.ps
#echo "Creating main manual HTML documentation (inc. comprehensive index)"
# the main manuals + the comprehensive index
#(cd htm; make)
|