aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--contrib/ChangeLog4
-rw-r--r--contrib/release53
2 files changed, 37 insertions, 20 deletions
diff --git a/contrib/ChangeLog b/contrib/ChangeLog
index 6d94651..73dd29f 100644
--- a/contrib/ChangeLog
+++ b/contrib/ChangeLog
@@ -1,3 +1,7 @@
+2000-11-12 Bruce Korb <bkorb@gnu.org>
+
+ * release: generalize the release script a bit.
+
Sat Nov 11 17:29:03 2000 Mark P Mitchell <mark@codesourcery.com>
* gcc_build: Add -o option for setting the objdir to use.
diff --git a/contrib/release b/contrib/release
index cc34fb2..ca6f0b2 100644
--- a/contrib/release
+++ b/contrib/release
@@ -4,27 +4,14 @@
#
# Originally written by Jeff Law <law@redhat.com>.
-PATH=/home/law/gcc:$PATH
-
-TMPDIR=/var/tmp
-STATEDIR=/home/law
-
-export TMPDIR STATEDIR
-
-# We run this on the cvs server itself so we can get at the cvs
-# files quickly. It also assumes access to my home dir for some
-# programs.
-CVSROOT=/cvs/gcc
-export CVSROOT
-
-# Get somewhere useful with a lot of disk space.
-cd $TMPDIR
-
# We need separate variables for the tag in the CVS sources and the
# name of the release directory. Consider if we have a packaging problem
# and need to respin the release. The sources do not change, but the release
# name changes.
#
+# [[ Not clear. You can purge the old tag and make a new one, too.
+# That way they continue to match. Maximize consistency. ]]
+#
# We used to use a tag to get the previous release, but it is more reliable to
# actually unpack the previous release from the ftp directory. Consider files
# like .brik which are in the release, but not in the repository.
@@ -56,7 +43,33 @@ case $last_release_name in
echo "No testsuites in gcc-2.95*"
;;
esac
-
+
+STATEDIR=${STATEDIR-/home/law}
+GCCBASE=${GCCBASE-${STATEDIR}/gcc}
+TMPDIR=${TMPDIR-/var/tmp}
+export TMPDIR STATEDIR GCCBASE
+
+PATH=${GCCBASE}:$PATH
+
+[ -f ${GCCBASE}/gcc.pot ] || {
+ echo "'${GCCBASE}/gcc.pot' is missing"
+ exit 1
+}
+
+[ -f ${STATEDIR}/bin/brik ] || {
+ echo "'${STATEDIR}/bin/brik' is missing"
+ exit 1
+}
+
+# We run this on the cvs server itself so we can get at the cvs
+# files quickly. It also assumes access to my home dir for some
+# programs.
+CVSROOT=/cvs/gcc
+export CVSROOT
+
+# Get somewhere useful with a lot of disk space.
+cd $TMPDIR
+
# Get into a temporary directory so as not to be confused by
# any existing CVS administration files.
rm -rf $$
@@ -99,7 +112,7 @@ noncore_files="gcc/cp libio libstdc++ gcc/f libf2c gcc/objc libobjc gcc/ch libch
cvs -Q export -ko -r$release_tag egcs
cd egcs
contrib/gcc_update --touch
-cp /home/law/gcc/gcc.pot gcc/po
+cp ${GCCBASE}/gcc.pot gcc/po
cd ..
cvs -Q export -ko -Dnow wwwdocs/htdocs/install
cvs -Q export -ko -Dnow wwwdocs/htdocs/faq.html
@@ -110,7 +123,7 @@ release_docs $release_name $$
# Build a list of files in this release.
cd $release_name
find . -type f -print | sort > ../files_$release_name
-/home/law/bin/brik -Gb -f ../files_$release_name > ../.brik_$release_name
+${STATEDIR}/bin/brik -Gb -f ../files_$release_name > ../.brik_$release_name
cp ../.brik_$release_name ./.brik
# Get back to the directory with the two releases in it.
@@ -153,7 +166,7 @@ fi
cvs -Q export -ko -r$release_tag egcs
cd egcs
contrib/gcc_update --touch
-cp /home/law/gcc/gcc.pot gcc/po
+cp ${GCCBASE}/gcc.pot gcc/po
cd ..
cvs -Q export -ko -Dnow wwwdocs/htdocs/install
cvs -Q export -ko -Dnow wwwdocs/htdocs/faq.html