source: trunk/src/gcc/maintainer-scripts/update_web_docs_old@ 1398

Last change on this file since 1398 was 1392, checked in by bird, 22 years ago

This commit was generated by cvs2svn to compensate for changes in r1391,
which included commits to RCS files with non-trunk default branches.

  • Property cvs2svn:cvs-rev set to 1.1.1.2
  • Property svn:eol-style set to native
  • Property svn:executable set to *
File size: 3.7 KB
Line 
1#!/bin/sh -x
2
3# Generate HTML documentation from GCC Texinfo docs.
4# This version is for GCC 3.0.x and earlier versions.
5
6# Run this from /tmp.
7CVSROOT=/cvs/gcc
8export CVSROOT
9
10PATH=/usr/local/bin:$PATH
11
12WWWBASE=/www/gcc/htdocs
13WWWBASE_PREFORMATTED=/www/gcc/htdocs-preformatted
14WWWPREPROCESS='/www/gcc/bin/preprocess -r'
15
16# Process options -rrelease and -ddirectory
17RELEASE=""
18SUBDIR=""
19
20while [ $# -gt 0 ]; do
21 case $1 in
22 -r*)
23 if [ -n "$RELEASE" ]; then
24 echo "Multiple releases specified" >&2
25 exit 1
26 fi
27 RELEASE="${1#-r}"
28 if [ -z "$RELEASE" ]; then
29 shift
30 RELEASE="$1"
31 if [ -z "$RELEASE" ]; then
32 echo "No release specified with -r" >&2
33 exit 1
34 fi
35 fi
36 ;;
37 -d*)
38 if [ -n "$SUBDIR" ]; then
39 echo "Multiple subdirectories specified" >&2
40 exit 1
41 fi
42 SUBDIR="${1#-d}"
43 if [ -z "$SUBDIR" ]; then
44 shift
45 SUBDIR="$1"
46 if [ -z "$SUBDIR" ]; then
47 echo "No subdirectory specified with -d" >&2
48 exit 1
49 fi
50 fi
51 ;;
52 *)
53 echo "Unknown argument \"$1\"" >&2
54 exit 1
55 ;;
56 esac
57 shift
58done
59
60if [ -n "$RELEASE" ] && [ -z "$SUBDIR" ]; then
61 echo "Release specified without subdirectory" >&2
62 exit 1
63fi
64
65if [ -z "$SUBDIR" ]; then
66 DOCSDIR=$WWWBASE/onlinedocs
67else
68 DOCSDIR=$WWWBASE/onlinedocs/$SUBDIR
69fi
70
71if [ ! -d $DOCSDIR ]; then
72 mkdir $DOCSDIR
73fi
74
75if [ -z "$RELEASE" ]; then
76 RELEASE=HEAD
77fi
78
79WORKDIR=/tmp/gcc-doc-update.$$
80
81/bin/rm -rf $WORKDIR
82/bin/mkdir $WORKDIR
83cd $WORKDIR
84
85# Find all the texi files in the repository, except those in directories
86# we do not care about (texinfo, etc).
87find $CVSROOT/gcc -name \*.texi,v -print | fgrep -v -f/home/gccadmin/scripts/doc_exclude | sed -e s#$CVSROOT/##g -e s#,v##g -e s#Attic/##g > FILES
88
89
90# Checkout all the texi files.
91cvs -Q co -r$RELEASE `cat FILES` gcc/gcc/doc/install.texi2html gcc/gcc/texinfo.tex gcc/gcc/doc/texinfo.tex gcc/gcc/doc/include/texinfo.tex
92
93# Find the directory to pass to -I; this is the one with texinfo.tex
94# and fdl.texi.
95texitexloc=`find . -name texinfo.tex`
96includedir=${texitexloc%/*}
97
98# Now convert the relevant files from texi to HTML and PostScript.
99for file in cpp chill cppinternals gcc gcj g77 gnat-style libiberty \
100 objc-features porting; do
101 filename=`find . -name ${file}.texi`
102 if [ "${filename}" ]; then
103 /usr/local/bin/texi2html -glossary -menu -split_chapter -I ${includedir} ${filename}
104 texi2dvi -I ${includedir} ${filename} </dev/null && dvips -o ${file}.ps ${file}.dvi
105 fi
106done
107
108# Then build a gzipped copy of each of the resulting .html and .ps files
109for file in *.html *.ps; do