#! /bin/sh # # This script is intended to be run in the build directory of a software # package including documentation in texinfo format. The basic operation # of this script is to: # + find all ".dvi" files from the current directory down, # + for each dvi file # + install the dvi file # + generate PostScript files for the dvi file # + install the PostScript file # + if there is texinfo source for this dvi file # install the info files # generate PDF from the texinfo source # install the PDF file # generate HTML from the texinfo source # install the HTML file # # # Ralf... where do these come from using autoconf? srcdir=/usr1/rtems/work/rtems-doc/ texi2www=${srcdir}/tools/texi2www/texi2www gnu_docs=${srcdir}/gnu_docs images=${srcdir}/images install_base=/home/httpd/html/rtems/rtemsdoc-4.5.1-pre3 install_share=/home/httpd/html/rtems/rtemsdoc-4.5.1-pre3/share/toolsdoc install_info=/home/httpd/html/rtems/rtemsdoc-4.5.1-pre3/info #if [ $? -ne 1 ] ; then # echo "Usage: $0 install_directory" # exit 1 #fi if [ ! -d ${install} ] ; then echo "${install} is not a directory" exit 1 fi #ECHO=echo STARTDIR=`pwd` find . -name "*.dvi" | while read file do cd $STARTDIR cd `dirname $file` echo $file i=`basename $file` #### b=`echo $i | cut -d'.' -f1` echo $b if [ -d ${install}/${b} ] ; then echo "Cleaning install point for ${b}" ${ECHO} rm -rf ${install}/html/${b} fi for dir_to_do in ${install_info} \ ${install_share}/ps \ ${install_share}/pdf ${install_share}/dvi \ ${install_share}/html/${b} do test -d ${dir_to_do} || mkdir -p ${dir_to_do} done echo "Copying DVI for ${b}" echo "+ cp ${b}.dvi ${install_share}/dvi/${b}.dvi" ${ECHO} cp ${b}.dvi ${install_share}/dvi/${b}.dvi echo "Generating PS for ${b}" echo "+ dvips -o ${install_share}/ps/${b}.ps ${b}.dvi" ${ECHO} dvips -o ${install_share}/ps/${b}.ps ${b}.dvi # unfortunately the .dvi names are not always the same. :( case ${b} in history) tsrc=hist ;; readline) tsrc=rlman ;; *) tsrc=${b} ;; esac case ${b} in refcard) cp ${gnu_docs}/refcard.html ${install_share}/${b} ;; *) # for some reason chill installs the dvi 1 directory up. test ${b} = "chill" && cd ch if [ -r ${tsrc}.texi ] ; then ext=texi elif [ -r ${tsrc}.texinfo ] ; then ext=texinfo else echo "*** echo "*** Cannot find a texi or texinfo file for ${b}" echo "*** exit 1 fi echo "Copying INFO for ${b}" ${ECHO} cp ${b}.info* ${install_info} case ${b} in g77) bad_for_pdf="yes" ;; *) bad_for_pdf="no" ;; esac case ${b} in gdb) extraargs_for_pdf="-I ../../readline/doc" ;; *) extraargs_for_pdf="" ;; esac if [ ${bad_for_pdf} = "yes" ] ; then echo "*** " echo "*** Skipping PDF for ${b}" echo "*** " else echo "Generating PDF for ${b}" ${ECHO} texi2pdf ${extraargs_for_pdf} ${tsrc}.${ext} && \ ${ECHO} cp ${tsrc}.pdf ${install_share}/pdf/${b}.pdf fi # until texi2www is modified to take a search path case ${b} in gdb) sed -e 's/^ @/@/' <../../readline/doc/rluser.texinfo >rluser.texinfo cp ../../readline/doc/inc-hist.texi . ;; readline) cp rluser.texinfo rluser.texinfo.tmp sed -e 's/^ @/@/' <../../readline/doc/rluser.texinfo >rluser.texinfo rm -f rluser.texinfo.tmp ;; *) ;; esac echo "Generating HTML for ${b}" ${ECHO} ${texi2www} \ -dirfile ../index.html \ -header ${gnu_docs}/gnu_header.html \ -footer ${gnu_docs}/gnu_footer.html \ -icons ../images -dir ${install_share}/html/${b} \ ${tsrc}.${ext} ;; esac done echo "Installing graphics" test -d ${install_share}/html/images || mkdir ${install_share}/html/images cd ${images} for f in dir-arrow.gif dvi.gif missing-arrow.gif next-arrow.gif oaronly.jpg \ pdf.gif pdf1.gif prev-arrow.gif ps.gif up-arrow.gif do cp ${f} ${install_share}/html/images/${f} done echo "Installing top level HTML indices" cp ${gnu_docs}/index.html ${install_share}/html/index.html cp ${gnu_docs}/rtems_tools_index.html ${install_share}/../index.html # Now deal with the reference card set -x test -d ${install_share}/html/refcard || mkdir ${install_share}/html/refcard cp ${gnu_docs}/refcard.html ${install_share}/html/refcard/refcard.html exit 0