forked from Imagelibrary/rtems
* SUPPORT, LICENSE: New files. * Numerous files touched as part of merging the 4.5 branch onto the mainline development trunk and ensuring that the script that cuts snapshots and releases works on the documentation.
165 lines
4.6 KiB
Bash
165 lines
4.6 KiB
Bash
#! /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
|