From e776237d577583e7c2d9ca8dab7b3e56471b4c31 Mon Sep 17 00:00:00 2001
From: Joseph Myers <jsm28@cam.ac.uk>
Date: Sun, 24 Feb 2002 01:37:10 +0000
Subject: [PATCH] gcc_release: Revert change to -p interface.

	* gcc_release: Revert change to -p interface.  Allow for local and
	remote cases in creating directories.  Give an error if -p
	argument names a directory.

From-SVN: r50000
---
 maintainer-scripts/ChangeLog   |  6 ++++++
 maintainer-scripts/gcc_release | 14 +++++++++-----
 2 files changed, 15 insertions(+), 5 deletions(-)

diff --git a/maintainer-scripts/ChangeLog b/maintainer-scripts/ChangeLog
index de0ecd87abe7..4d93cf58b3ec 100644
--- a/maintainer-scripts/ChangeLog
+++ b/maintainer-scripts/ChangeLog
@@ -1,3 +1,9 @@
+2002-02-23  Joseph S. Myers  <jsm28@cam.ac.uk>
+
+	* gcc_release: Revert change to -p interface.  Allow for local and
+	remote cases in creating directories.  Give an error if -p
+	argument names a directory.
+
 2002-02-21  Mark Mitchell  <mark@codesourcery.com>
 
 	* gcc_release: Correct handling of diff-generation.  Add
diff --git a/maintainer-scripts/gcc_release b/maintainer-scripts/gcc_release
index bfe7fab709e8..7e487e0c2b58 100755
--- a/maintainer-scripts/gcc_release
+++ b/maintainer-scripts/gcc_release
@@ -294,7 +294,7 @@ build_tarfiles() {
 
 # Build diffs against an old release.
 build_diffs() {
-  old_dir=${1%/}
+  old_dir=${1%/*}
   old_file=${1##*/}
   old_vers=${old_file%.tar.gz}
   old_vers=${old_vers#gcc-}
@@ -334,13 +334,14 @@ upload_files() {
 
   changedir "${WORKING_DIRECTORY}"
 
-  if [ $LOCAL -ne 0 ]; then
+  # Make sure the directory exists on the server.
+  if [ $LOCAL -eq 0 ]; then
+    ${SSH} -l ${GCC_USERNAME} ${GCC_HOSTNAME} mkdir ${FTP_PATH}
+  else
     mkdir -p "${FTP_PATH}" \
       || error "Could not create \`${FTP_PATH}'"
   fi
 
-  # Make sure the directory exists on the server.
-  ${SSH} -l ${GCC_USERNAME} ${GCC_HOSTNAME} mkdir ${FTP_PATH}
   for x in gcc*.gz gcc*.bz2; do
     if [ -e ${x} ]; then
       # Make sure the file will be readable on the server.
@@ -463,7 +464,10 @@ while getopts "d:fr:u:t:p:sl" ARG; do
 	  SCP=cp
 	  FTP_PATH=~ftp/pub/gcc
 	  PATH=~:/usr/local/bin:$PATH;;
-    p)    OLD_TARS="${OLD_TARS} ${OPTARG}";;
+    p)    OLD_TARS="${OLD_TARS} ${OPTARG}"
+          if [ -d ${OPTARG} ]; then
+	    error "-p argument must name a tarball"
+	  fi;;
     \?)   usage;;
     esac
 done
-- 
GitLab