URL
https://opencores.org/ocsvn/or1k_old/or1k_old/trunk
Subversion Repositories or1k_old
[/] [or1k_old/] [trunk/] [rtems-20020807/] [doc/] [gnu_docs/] [gen_docs] - Rev 1782
Compare with Previous | Blame | View Log
#! /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