aboutsummaryrefslogtreecommitdiff
path: root/maintainer-scripts
diff options
context:
space:
mode:
authorJoseph Myers <jsm28@cam.ac.uk>2001-03-10 00:08:50 +0000
committerJoseph Myers <jsm28@gcc.gnu.org>2001-03-10 00:08:50 +0000
commit2d2ade2a3ffaf2ced2b55f89c613e2e3f772a657 (patch)
tree464ba6f500cbc620131610ef85222710ca9c15ab /maintainer-scripts
parent6ca3ad1bc5a51dce85970d6fa66167c98d7bfa47 (diff)
downloadgcc-2d2ade2a3ffaf2ced2b55f89c613e2e3f772a657.zip
gcc-2d2ade2a3ffaf2ced2b55f89c613e2e3f772a657.tar.gz
gcc-2d2ade2a3ffaf2ced2b55f89c613e2e3f772a657.tar.bz2
crontab, [...]: New files (as currently used by gccadmin).
* crontab, doc_exclude, update_branch_version, update_version, update_web_docs: New files (as currently used by gccadmin). * README: New file. From-SVN: r40352
Diffstat (limited to 'maintainer-scripts')
-rw-r--r--maintainer-scripts/ChangeLog5
-rw-r--r--maintainer-scripts/README6
-rw-r--r--maintainer-scripts/crontab3
-rw-r--r--maintainer-scripts/doc_exclude3
-rwxr-xr-xmaintainer-scripts/update_branch_version28
-rwxr-xr-xmaintainer-scripts/update_version26
-rwxr-xr-xmaintainer-scripts/update_web_docs80
7 files changed, 151 insertions, 0 deletions
diff --git a/maintainer-scripts/ChangeLog b/maintainer-scripts/ChangeLog
new file mode 100644
index 0000000..4d18536
--- /dev/null
+++ b/maintainer-scripts/ChangeLog
@@ -0,0 +1,5 @@
+2001-03-10 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * crontab, doc_exclude, update_branch_version, update_version,
+ update_web_docs: New files (as currently used by gccadmin).
+ * README: New file.
diff --git a/maintainer-scripts/README b/maintainer-scripts/README
new file mode 100644
index 0000000..1735002
--- /dev/null
+++ b/maintainer-scripts/README
@@ -0,0 +1,6 @@
+This directory contains various files used by the gccadmin account on
+gcc.gnu.org, mainly for automated tasks such as the daily update of
+the date in version.c. There isn't presently any scheme for files
+checked in here to be automatically checked out and used by gccadmin,
+so the files in CVS and those used by gccadmin must be kept in sync
+manually.
diff --git a/maintainer-scripts/crontab b/maintainer-scripts/crontab
new file mode 100644
index 0000000..c089e2c
--- /dev/null
+++ b/maintainer-scripts/crontab
@@ -0,0 +1,3 @@
+16 0 * * * sh /home/gccadmin/scripts/update_version
+16 0 * * * sh /home/gccadmin/scripts/update_branch_version
+50 0 * * * sh /home/gccadmin/scripts/update_web_docs
diff --git a/maintainer-scripts/doc_exclude b/maintainer-scripts/doc_exclude
new file mode 100644
index 0000000..fef3d4e
--- /dev/null
+++ b/maintainer-scripts/doc_exclude
@@ -0,0 +1,3 @@
+texinfo
+etc
+Attic
diff --git a/maintainer-scripts/update_branch_version b/maintainer-scripts/update_branch_version
new file mode 100755
index 0000000..855f4ac
--- /dev/null
+++ b/maintainer-scripts/update_branch_version
@@ -0,0 +1,28 @@
+#!/bin/sh
+
+# Run this from /tmp.
+CVSROOT=/cvs/gcc
+export CVSROOT
+BRANCH=gcc-3_0-branch
+export BRANCH
+/bin/rm -rf /tmp/$$
+/bin/mkdir /tmp/$$
+cd /tmp/$$
+
+CURR_DATE=`/bin/date +"%Y%m%d"`
+
+FILES="egcs/gcc/version.c egcs/gcc/f/version.c egcs/libf2c/libF77/Version.c egcs/libf2c/libI77/Version.c egcs/libf2c/libU77/Version.c"
+
+/usr/local/bin/cvs co -r$BRANCH $FILES
+
+for file in $FILES; do
+
+ OLD_VERSION=`/bin/cat $file`
+ /bin/sed -e "s/\(.*\"[^ ]*\) [0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]/\1 ${CURR_DATE}/" >${file} <<HERE
+$OLD_VERSION
+HERE
+done
+
+/usr/local/bin/cvs commit -m "Bump dates." $FILES
+
+/bin/rm -rf /tmp/$$
diff --git a/maintainer-scripts/update_version b/maintainer-scripts/update_version
new file mode 100755
index 0000000..712bec2
--- /dev/null
+++ b/maintainer-scripts/update_version
@@ -0,0 +1,26 @@
+#!/bin/sh
+
+# Run this from /tmp.
+CVSROOT=/cvs/gcc
+export CVSROOT
+/bin/rm -rf /tmp/$$
+/bin/mkdir /tmp/$$
+cd /tmp/$$
+
+CURR_DATE=`/bin/date +"%Y%m%d"`
+
+FILES="egcs/gcc/version.c egcs/gcc/f/version.c egcs/libf2c/libF77/Version.c egcs/libf2c/libI77/Version.c egcs/libf2c/libU77/Version.c"
+
+/usr/local/bin/cvs co $FILES
+
+for file in $FILES; do
+
+ OLD_VERSION=`/bin/cat $file`
+ /bin/sed -e "s/\(.*\"[^ ]*\) [0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]/\1 ${CURR_DATE}/" >${file} <<HERE
+$OLD_VERSION
+HERE
+done
+
+/usr/local/bin/cvs commit -m "Daily bump." $FILES
+
+/bin/rm -rf /tmp/$$
diff --git a/maintainer-scripts/update_web_docs b/maintainer-scripts/update_web_docs
new file mode 100755
index 0000000..9fd0710
--- /dev/null
+++ b/maintainer-scripts/update_web_docs
@@ -0,0 +1,80 @@
+#!/bin/sh -x
+
+# Run this from /tmp.
+CVSROOT=/cvs/gcc
+export CVSROOT
+
+PATH=/usr/local/bin:$PATH
+WWWBASE=/www/gcc/htdocs
+
+WORKDIR=/tmp/gcc-doc-update.$$
+
+/bin/rm -rf $WORKDIR
+/bin/mkdir $WORKDIR
+cd $WORKDIR
+
+# Find all the texi files in the repository, except those in directories
+# we do not care about (Attic, texinfo, etc).
+find $CVSROOT/gcc -name \*.texi,v -print | fgrep -v -f/home/gccadmin/scripts/doc_exclude | sed -e s#$CVSROOT/##g -e s#,v##g > FILES
+
+
+# Checkout all the texi files and get them into a single directory.
+# If we ever have texi files with the same name we'll have to do this
+# differently.
+cvs -Q co `cat FILES`
+mv `find . -name \*.texi -print` .
+
+# Now convert the relavent files from texi to html
+for file in c-tree cpp chill gcc gcov gxxint g77 iostream objc-features; do
+ /home/gccadmin/scripts/texi2html -glossary -menu -split_chapter ${file}.texi
+done
+
+# Then build a gzipped copy of each of the resulting .html files
+for file in *.html; do
+ cat $file | gzip --best > $file.gz
+done
+
+news_file=`grep "News About GNU Fortran" $WWWBASE/onlinedocs/g77_toc.html | sed -e '/HREF=.*[^.]/ s#^.*HREF="##g' | sed -e 's%#SEC.*%%g'`
+bugs_file=`grep "Known Causes of Trouble with GNU Fortran" $WWWBASE/onlinedocs/g77_toc.html | sed -e '/HREF=.*[^.]/ s#^.*HREF="##g' | sed -e 's%#SEC.*%%g'`
+contrib_file=`grep "Contributors to GCC" $WWWBASE/onlinedocs/gcc_toc.html | sed -e '/HREF=.*[^.]/ s#^.*HREF="##g' | sed -e 's%#SEC.*%%g'`
+
+# On the 15th of the month, wipe all the old files from the
+# web server.
+today=`date +%d`
+if test $today = 15; then
+ find $WWWBASE/onlinedocs -type f -print | grep -v index.html | xargs rm
+fi
+
+# And copy the resulting html files to the web server
+for file in *.html; do
+ cat $WWWBASE/onlinedocs/$file |
+ sed -e '/^This document was generated on/d' \
+ -e '/^<!-- Created by texi/d' > file1
+ cat $file |
+ sed -e '/^This document was generated on/d' \
+ -e '/^<!-- Created by texi/d' > file2
+ if cmp -s file1 file2; then
+ :
+ else
+ cp $file ${file}.gz $WWWBASE/onlinedocs
+ fi
+done
+
+cd $WWWBASE/onlinedocs
+
+rm -f g77_news.html
+rm -f g77_bugs.html
+rm -f g77_news.html.gz
+rm -f g77_bugs.html.gz
+ln $news_file g77_news.html
+ln $bugs_file g77_bugs.html
+ln ${news_file}.gz g77_news.html.gz
+ln ${bugs_file}.gz g77_bugs.html.gz
+
+cd $WWWBASE
+rm -f thanks.html
+rm -f thanks.html.gz
+ln onlinedocs/$contrib_file thanks.html
+ln onlinedocs/${contrib_file}.gz thanks.html.gz
+
+rm -rf $WORKDIR