mirror of
https://gitlab.rtems.org/rtems/rtos/rtems.git
synced 2025-12-05 23:23:13 +00:00
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-beta3
|
|
install_share=/home/httpd/html/rtems/rtemsdoc-4.5-beta3/share/toolsdoc
|
|
install_info=/home/httpd/html/rtems/rtemsdoc-4.5-beta3/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
|