public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* Patch to gcc_release
@ 2001-11-03 12:11 Joseph S. Myers
  2001-11-13  4:26 ` Joseph S. Myers
                   ` (3 more replies)
  0 siblings, 4 replies; 24+ messages in thread
From: Joseph S. Myers @ 2001-11-03 12:11 UTC (permalink / raw)
  To: gcc-patches

Another patch towards gcc_release working from cron.  OK to commit?

Why does cron run things with such a restrictive environment (only /bin
and /usr/bin in the PATH, no USER, ...)?

Index: ChangeLog
===================================================================
RCS file: /cvs/gcc/gcc/maintainer-scripts/ChangeLog,v
retrieving revision 1.21
diff -u -r1.21 ChangeLog
--- ChangeLog	2001/11/06 17:59:19	1.21
+++ ChangeLog	2001/11/13 00:56:15
@@ -1,3 +1,7 @@
+2001-11-13  Joseph S. Myers  <jsm28@cam.ac.uk>
+
+	* gcc_release: Add /usr/local/bin to path when local.
+
 2001-11-06  Joseph S. Myers  <jsm28@cam.ac.uk>
 
 	* update_web_docs: Set SOURCEDIR so that install manual can be
Index: gcc_release
===================================================================
RCS file: /cvs/gcc/gcc/maintainer-scripts/gcc_release,v
retrieving revision 1.3
diff -u -r1.3 gcc_release
--- gcc_release	2001/11/06 16:45:37	1.3
+++ gcc_release	2001/11/13 00:56:15
@@ -462,7 +462,7 @@
     l)    LOCAL=1
 	  SCP=cp
 	  FTP_PATH=~ftp/pub/gcc
-	  PATH=~:$PATH;;
+	  PATH=~:/usr/local/bin:$PATH;;
     p)    OLD_TARS="${OLD_TARS} ${OPTARG}";;
     \?)   usage;;
     esac

-- 
Joseph S. Myers
jsm28@cam.ac.uk

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Patch to gcc_release
  2001-11-03 12:11 Patch to gcc_release Joseph S. Myers
@ 2001-11-13  4:26 ` Joseph S. Myers
  2001-11-13 15:03 ` Joseph S. Myers
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 24+ messages in thread
From: Joseph S. Myers @ 2001-11-13  4:26 UTC (permalink / raw)
  To: gcc-patches

Another patch towards gcc_release working from cron.  OK to commit?

Why does cron run things with such a restrictive environment (only /bin
and /usr/bin in the PATH, no USER, ...)?

Index: ChangeLog
===================================================================
RCS file: /cvs/gcc/gcc/maintainer-scripts/ChangeLog,v
retrieving revision 1.21
diff -u -r1.21 ChangeLog
--- ChangeLog	2001/11/06 17:59:19	1.21
+++ ChangeLog	2001/11/13 00:56:15
@@ -1,3 +1,7 @@
+2001-11-13  Joseph S. Myers  <jsm28@cam.ac.uk>
+
+	* gcc_release: Add /usr/local/bin to path when local.
+
 2001-11-06  Joseph S. Myers  <jsm28@cam.ac.uk>
 
 	* update_web_docs: Set SOURCEDIR so that install manual can be
Index: gcc_release
===================================================================
RCS file: /cvs/gcc/gcc/maintainer-scripts/gcc_release,v
retrieving revision 1.3
diff -u -r1.3 gcc_release
--- gcc_release	2001/11/06 16:45:37	1.3
+++ gcc_release	2001/11/13 00:56:15
@@ -462,7 +462,7 @@
     l)    LOCAL=1
 	  SCP=cp
 	  FTP_PATH=~ftp/pub/gcc
-	  PATH=~:$PATH;;
+	  PATH=~:/usr/local/bin:$PATH;;
     p)    OLD_TARS="${OLD_TARS} ${OPTARG}";;
     \?)   usage;;
     esac

-- 
Joseph S. Myers
jsm28@cam.ac.uk

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Pending review: Patch to gcc_release
  2001-11-03 12:11 Patch to gcc_release Joseph S. Myers
  2001-11-13  4:26 ` Joseph S. Myers
  2001-11-13 15:03 ` Joseph S. Myers
@ 2001-11-13 15:03 ` Joseph S. Myers
  2001-11-13 15:03   ` Gerald Pfeifer
  2001-11-14 14:01 ` Alexandre Oliva
  3 siblings, 1 reply; 24+ messages in thread
From: Joseph S. Myers @ 2001-11-13 15:03 UTC (permalink / raw)
  To: gcc-patches

On Tue, 13 Nov 2001, I wrote:

> Another patch towards gcc_release working from cron.  OK to commit?
> 
> Why does cron run things with such a restrictive environment (only /bin
> and /usr/bin in the PATH, no USER, ...)?
> 
> Index: ChangeLog
> ===================================================================
> RCS file: /cvs/gcc/gcc/maintainer-scripts/ChangeLog,v
> retrieving revision 1.21
> diff -u -r1.21 ChangeLog
> --- ChangeLog	2001/11/06 17:59:19	1.21
> +++ ChangeLog	2001/11/13 00:56:15
> @@ -1,3 +1,7 @@
> +2001-11-13  Joseph S. Myers  <jsm28@cam.ac.uk>
> +
> +	* gcc_release: Add /usr/local/bin to path when local.

This patch is still pending review.  I'd like to get the snapshots running
properly from cron rather than needing to be run manually after failing
from cron for one reason or another.

http://gcc.gnu.org/ml/gcc-patches/2001-11/msg00803.html

-- 
Joseph S. Myers
jsm28@cam.ac.uk

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: Pending review: Patch to gcc_release
  2001-11-13 15:03 ` Pending review: " Joseph S. Myers
@ 2001-11-13 15:03   ` Gerald Pfeifer
  0 siblings, 0 replies; 24+ messages in thread
From: Gerald Pfeifer @ 2001-11-13 15:03 UTC (permalink / raw)
  To: Joseph S. Myers; +Cc: gcc-patches

On Mon, 19 Nov 2001, Joseph S. Myers wrote:
>> +2001-11-13  Joseph S. Myers  <jsm28@cam.ac.uk>
>> +
>> +	* gcc_release: Add /usr/local/bin to path when local.
> This patch is still pending review.

Probably because nobody felt responsible. :-\

The patch looks fair, I suggest to install it.

(Alternatively, we could somewhere set MAKEINFO=/usr/local/bin/makeinfo
or similiar and always use $MAKEINFO, IIRC, but the above is more general,
and /usr/local/bin really can be considered "harmless".)

Gerald
-- 
Gerald "Jerry" pfeifer@dbai.tuwien.ac.at http://www.dbai.tuwien.ac.at/~pfeifer/


^ permalink raw reply	[flat|nested] 24+ messages in thread

* Patch to gcc_release
  2001-11-03 12:11 Patch to gcc_release Joseph S. Myers
  2001-11-13  4:26 ` Joseph S. Myers
@ 2001-11-13 15:03 ` Joseph S. Myers
  2001-11-13 15:03 ` Pending review: " Joseph S. Myers
  2001-11-14 14:01 ` Alexandre Oliva
  3 siblings, 0 replies; 24+ messages in thread
From: Joseph S. Myers @ 2001-11-13 15:03 UTC (permalink / raw)
  To: gcc-patches

Another patch towards gcc_release working from cron.  OK to commit?

Why does cron run things with such a restrictive environment (only /bin
and /usr/bin in the PATH, no USER, ...)?

Index: ChangeLog
===================================================================
RCS file: /cvs/gcc/gcc/maintainer-scripts/ChangeLog,v
retrieving revision 1.21
diff -u -r1.21 ChangeLog
--- ChangeLog	2001/11/06 17:59:19	1.21
+++ ChangeLog	2001/11/13 00:56:15
@@ -1,3 +1,7 @@
+2001-11-13  Joseph S. Myers  <jsm28@cam.ac.uk>
+
+	* gcc_release: Add /usr/local/bin to path when local.
+
 2001-11-06  Joseph S. Myers  <jsm28@cam.ac.uk>
 
 	* update_web_docs: Set SOURCEDIR so that install manual can be
Index: gcc_release
===================================================================
RCS file: /cvs/gcc/gcc/maintainer-scripts/gcc_release,v
retrieving revision 1.3
diff -u -r1.3 gcc_release
--- gcc_release	2001/11/06 16:45:37	1.3
+++ gcc_release	2001/11/13 00:56:15
@@ -462,7 +462,7 @@
     l)    LOCAL=1
 	  SCP=cp
 	  FTP_PATH=~ftp/pub/gcc
-	  PATH=~:$PATH;;
+	  PATH=~:/usr/local/bin:$PATH;;
     p)    OLD_TARS="${OLD_TARS} ${OPTARG}";;
     \?)   usage;;
     esac

-- 
Joseph S. Myers
jsm28@cam.ac.uk

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: Patch to gcc_release
  2001-11-03 12:11 Patch to gcc_release Joseph S. Myers
                   ` (2 preceding siblings ...)
  2001-11-13 15:03 ` Pending review: " Joseph S. Myers
@ 2001-11-14 14:01 ` Alexandre Oliva
  2001-11-14 14:27   ` Joseph S. Myers
  2001-11-24 18:20   ` Alexandre Oliva
  3 siblings, 2 replies; 24+ messages in thread
From: Alexandre Oliva @ 2001-11-14 14:01 UTC (permalink / raw)
  To: Joseph S. Myers; +Cc: gcc-patches

On Nov 12, 2001, "Joseph S. Myers" <jsm28@cam.ac.uk> wrote:

> Why does cron run things with such a restrictive environment (only /bin
> and /usr/bin in the PATH, no USER, ...)?

Probably just because the shell started by cron isn't a login shell,
so it doesn't load the user's profile.

> -	  PATH=~:$PATH;;
> +	  PATH=~:/usr/local/bin:$PATH;;

I strongly suggest changing `~' to `$HOME'.  Bourne shell knows
nothing about `~', even though bash expands it to $HOME.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer                  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicamp        oliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist    *Please* write to mailing lists, not to me

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: Patch to gcc_release
  2001-11-14 14:01 ` Alexandre Oliva
@ 2001-11-14 14:27   ` Joseph S. Myers
  2001-11-14 15:35     ` Alexandre Oliva
  2001-11-24 18:38     ` Joseph S. Myers
  2001-11-24 18:20   ` Alexandre Oliva
  1 sibling, 2 replies; 24+ messages in thread
From: Joseph S. Myers @ 2001-11-14 14:27 UTC (permalink / raw)
  To: Alexandre Oliva; +Cc: gcc-patches

On 25 Nov 2001, Alexandre Oliva wrote:

> > -	  PATH=~:$PATH;;
> > +	  PATH=~:/usr/local/bin:$PATH;;
> 
> I strongly suggest changing `~' to `$HOME'.  Bourne shell knows
> nothing about `~', even though bash expands it to $HOME.

What then are your plans to install a non-POSIX sh on gcc.gnu.org (the
only place this part of the code gets used)?  What shell exactly do you
have in mind that supports shell functions but not ~?

-- 
Joseph S. Myers
jsm28@cam.ac.uk

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: Patch to gcc_release
  2001-11-14 14:27   ` Joseph S. Myers
@ 2001-11-14 15:35     ` Alexandre Oliva
  2001-11-15  8:36       ` DJ Delorie
  2001-11-24 19:20       ` Alexandre Oliva
  2001-11-24 18:38     ` Joseph S. Myers
  1 sibling, 2 replies; 24+ messages in thread
From: Alexandre Oliva @ 2001-11-14 15:35 UTC (permalink / raw)
  To: Joseph S. Myers; +Cc: gcc-patches

On Nov 25, 2001, "Joseph S. Myers" <jsm28@cam.ac.uk> wrote:

> On 25 Nov 2001, Alexandre Oliva wrote:
>> > -	  PATH=~:$PATH;;
>> > +	  PATH=~:/usr/local/bin:$PATH;;
>> 
>> I strongly suggest changing `~' to `$HOME'.  Bourne shell knows
>> nothing about `~', even though bash expands it to $HOME.

> What then are your plans to install a non-POSIX sh on gcc.gnu.org (the
> only place this part of the code gets used)?  What shell exactly do you
> have in mind that supports shell functions but not ~?

I have no such plans (and even if I had, I wouldn't be able to do
anything about them :-), but I know there are a lot of Bourne shells
that support shell functions but not `~'.  I just dislike seeing
non-portable shell code when there's a trivial portable alternative.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer                  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicamp        oliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist    *Please* write to mailing lists, not to me

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: Patch to gcc_release
  2001-11-14 15:35     ` Alexandre Oliva
@ 2001-11-15  8:36       ` DJ Delorie
  2001-11-15  9:02         ` Joseph S. Myers
  2001-11-25 19:58         ` DJ Delorie
  2001-11-24 19:20       ` Alexandre Oliva
  1 sibling, 2 replies; 24+ messages in thread
From: DJ Delorie @ 2001-11-15  8:36 UTC (permalink / raw)
  To: aoliva; +Cc: jsm28, gcc-patches


> I have no such plans (and even if I had, I wouldn't be able to do
> anything about them :-), but I know there are a lot of Bourne shells
> that support shell functions but not `~'.  I just dislike seeing
> non-portable shell code when there's a trivial portable alternative.

If the script is going to run on one machine only, I think the Right
Thing to do is put the actual shell you're using in the #! line
(i.e. #!/bin/bash) so that the world knows that portability isn't an
issue.  Then you can use all the $shell-isms you want, knowing that if
you don't get the shell you're expecting, the failure mode will be
both quick and obvious, rather than the usual subtle and pervasive.

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: Patch to gcc_release
  2001-11-15  8:36       ` DJ Delorie
@ 2001-11-15  9:02         ` Joseph S. Myers
  2001-11-26  1:04           ` Joseph S. Myers
  2001-11-25 19:58         ` DJ Delorie
  1 sibling, 1 reply; 24+ messages in thread
From: Joseph S. Myers @ 2001-11-15  9:02 UTC (permalink / raw)
  To: DJ Delorie; +Cc: aoliva, gcc-patches

On Sun, 25 Nov 2001, DJ Delorie wrote:

> If the script is going to run on one machine only, I think the Right
> Thing to do is put the actual shell you're using in the #! line
> (i.e. #!/bin/bash) so that the world knows that portability isn't an
> issue.  Then you can use all the $shell-isms you want, knowing that if
> you don't get the shell you're expecting, the failure mode will be
> both quick and obvious, rather than the usual subtle and pervasive.

That particular part of the script only runs on gcc.gnu.org - the parts
not conditioned on local running may run elsewhere, but I think that for
this script POSIX should be considered portable enough.

-- 
Joseph S. Myers
jsm28@cam.ac.uk

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: Patch to gcc_release
  2001-11-14 14:01 ` Alexandre Oliva
  2001-11-14 14:27   ` Joseph S. Myers
@ 2001-11-24 18:20   ` Alexandre Oliva
  1 sibling, 0 replies; 24+ messages in thread
From: Alexandre Oliva @ 2001-11-24 18:20 UTC (permalink / raw)
  To: Joseph S. Myers; +Cc: gcc-patches

On Nov 12, 2001, "Joseph S. Myers" <jsm28@cam.ac.uk> wrote:

> Why does cron run things with such a restrictive environment (only /bin
> and /usr/bin in the PATH, no USER, ...)?

Probably just because the shell started by cron isn't a login shell,
so it doesn't load the user's profile.

> -	  PATH=~:$PATH;;
> +	  PATH=~:/usr/local/bin:$PATH;;

I strongly suggest changing `~' to `$HOME'.  Bourne shell knows
nothing about `~', even though bash expands it to $HOME.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer                  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicamp        oliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist    *Please* write to mailing lists, not to me

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: Patch to gcc_release
  2001-11-14 14:27   ` Joseph S. Myers
  2001-11-14 15:35     ` Alexandre Oliva
@ 2001-11-24 18:38     ` Joseph S. Myers
  1 sibling, 0 replies; 24+ messages in thread
From: Joseph S. Myers @ 2001-11-24 18:38 UTC (permalink / raw)
  To: Alexandre Oliva; +Cc: gcc-patches

On 25 Nov 2001, Alexandre Oliva wrote:

> > -	  PATH=~:$PATH;;
> > +	  PATH=~:/usr/local/bin:$PATH;;
> 
> I strongly suggest changing `~' to `$HOME'.  Bourne shell knows
> nothing about `~', even though bash expands it to $HOME.

What then are your plans to install a non-POSIX sh on gcc.gnu.org (the
only place this part of the code gets used)?  What shell exactly do you
have in mind that supports shell functions but not ~?

-- 
Joseph S. Myers
jsm28@cam.ac.uk

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: Patch to gcc_release
  2001-11-14 15:35     ` Alexandre Oliva
  2001-11-15  8:36       ` DJ Delorie
@ 2001-11-24 19:20       ` Alexandre Oliva
  1 sibling, 0 replies; 24+ messages in thread
From: Alexandre Oliva @ 2001-11-24 19:20 UTC (permalink / raw)
  To: Joseph S. Myers; +Cc: gcc-patches

On Nov 25, 2001, "Joseph S. Myers" <jsm28@cam.ac.uk> wrote:

> On 25 Nov 2001, Alexandre Oliva wrote:
>> > -	  PATH=~:$PATH;;
>> > +	  PATH=~:/usr/local/bin:$PATH;;
>> 
>> I strongly suggest changing `~' to `$HOME'.  Bourne shell knows
>> nothing about `~', even though bash expands it to $HOME.

> What then are your plans to install a non-POSIX sh on gcc.gnu.org (the
> only place this part of the code gets used)?  What shell exactly do you
> have in mind that supports shell functions but not ~?

I have no such plans (and even if I had, I wouldn't be able to do
anything about them :-), but I know there are a lot of Bourne shells
that support shell functions but not `~'.  I just dislike seeing
non-portable shell code when there's a trivial portable alternative.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer                  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicamp        oliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist    *Please* write to mailing lists, not to me

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: Patch to gcc_release
  2001-11-15  8:36       ` DJ Delorie
  2001-11-15  9:02         ` Joseph S. Myers
@ 2001-11-25 19:58         ` DJ Delorie
  1 sibling, 0 replies; 24+ messages in thread
From: DJ Delorie @ 2001-11-25 19:58 UTC (permalink / raw)
  To: aoliva; +Cc: jsm28, gcc-patches

> I have no such plans (and even if I had, I wouldn't be able to do
> anything about them :-), but I know there are a lot of Bourne shells
> that support shell functions but not `~'.  I just dislike seeing
> non-portable shell code when there's a trivial portable alternative.

If the script is going to run on one machine only, I think the Right
Thing to do is put the actual shell you're using in the #! line
(i.e. #!/bin/bash) so that the world knows that portability isn't an
issue.  Then you can use all the $shell-isms you want, knowing that if
you don't get the shell you're expecting, the failure mode will be
both quick and obvious, rather than the usual subtle and pervasive.

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: Patch to gcc_release
  2001-11-15  9:02         ` Joseph S. Myers
@ 2001-11-26  1:04           ` Joseph S. Myers
  0 siblings, 0 replies; 24+ messages in thread
From: Joseph S. Myers @ 2001-11-26  1:04 UTC (permalink / raw)
  To: DJ Delorie; +Cc: aoliva, gcc-patches

On Sun, 25 Nov 2001, DJ Delorie wrote:

> If the script is going to run on one machine only, I think the Right
> Thing to do is put the actual shell you're using in the #! line
> (i.e. #!/bin/bash) so that the world knows that portability isn't an
> issue.  Then you can use all the $shell-isms you want, knowing that if
> you don't get the shell you're expecting, the failure mode will be
> both quick and obvious, rather than the usual subtle and pervasive.

That particular part of the script only runs on gcc.gnu.org - the parts
not conditioned on local running may run elsewhere, but I think that for
this script POSIX should be considered portable enough.

-- 
Joseph S. Myers
jsm28@cam.ac.uk

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Patch to gcc_release
@ 2002-03-09 17:10 Joseph S. Myers
  0 siblings, 0 replies; 24+ messages in thread
From: Joseph S. Myers @ 2002-03-09 17:10 UTC (permalink / raw)
  To: gcc-patches

Recent changes to gcc_release broke the generation of .bz2 diffs by moving
diff generation to after .bz2 generation.  This patch makes .bz2
generation a new major mode, which fixes this.  It also fixes the
nongeneration of diffs for ada and chill.

Tested by running a snapshot.  Applied to mainline.

Index: ChangeLog
===================================================================
RCS file: /cvs/gcc/gcc/maintainer-scripts/ChangeLog,v
retrieving revision 1.35
diff -u -r1.35 ChangeLog
--- ChangeLog	2002/03/06 18:35:57	1.35
+++ ChangeLog	2002/03/10 01:07:29
@@ -1,3 +1,8 @@
+2002-03-10  Joseph S. Myers  <jsm28@cam.ac.uk>
+
+	* gcc_release: Build diffs for ada and chill.  Make "bzip2" a new
+	major mode.
+
 2002-03-06  Phil Edwards  <pme@gcc.gnu.org>
 
 	* update_version:  Don't indent the version string.
Index: gcc_release
===================================================================
RCS file: /cvs/gcc/gcc/maintainer-scripts/gcc_release,v
retrieving revision 1.9
diff -u -r1.9 gcc_release
--- gcc_release	2002/03/03 18:58:36	1.9
+++ gcc_release	2002/03/10 01:07:29
@@ -283,12 +283,13 @@
   done
   build_tarfile gcc-core-${RELEASE} ${EXCLUDES} \
     `basename ${SOURCE_DIRECTORY}`
+}
 
-  # Build .bz2 files.
+# Build .bz2 files.
+build_bzip2() {
   for f in ${FILE_LIST}; do
     bzfile=${f%.gz}.bz2
     (zcat $f | ${BZIP2} > ${bzfile}) || error "Could not create ${bzfile}"
-    FILE_LIST="${FILE_LIST} ${bzfile}"
   done
 }
 
@@ -299,7 +300,7 @@
   old_vers=${old_file%.tar.gz}
   old_vers=${old_vers#gcc-}
   inform "Building diffs against version $old_vers"
-  for f in gcc gcc-g++ gcc-g77 gcc-java gcc-objc gcc-testsuite gcc-core; do
+  for f in gcc gcc-ada gcc-chill gcc-g++ gcc-g77 gcc-java gcc-objc gcc-testsuite gcc-core; do
     old_tar=${old_dir}/${f}-${old_vers}.tar.gz
     new_tar=${WORKING_DIRECTORY}/${f}-${RELEASE}.tar.gz
     if [ -e $old_tar ] && [ -e $new_tar ]; then
@@ -428,12 +429,13 @@
 LOCAL=0
 
 # Major operation modes.
+MODE_BZIP2=0
 MODE_DIFFS=0
 MODE_SOURCES=0
 MODE_TARFILES=0
 MODE_UPLOAD=0
 
-# Files generated to upload.
+# .gz files generated to create .bz2 files from.
 FILE_LIST=""
 
 # Programs we use.
@@ -561,11 +563,12 @@
 # Handle the major modes.
 while [ $# -ne 0 ]; do
     case $1 in
+    bzip2)    MODE_BZIP2=1;;
     diffs)    MODE_DIFFS=1;;
     sources)  MODE_SOURCES=1;;
     tarfiles) MODE_TARFILES=1;;
     upload)   MODE_UPLOAD=1;;
-    all)      MODE_SOURCES=1; MODE_TARFILES=1; MODE_DIFFS=1; MODE_UPLOAD=1;;
+    all)      MODE_SOURCES=1; MODE_TARFILES=1; MODE_DIFFS=1; MODE_BZIP2=1; MODE_UPLOAD=1;;
     *)        error "Unknown mode $1";;
     esac
     shift
@@ -592,6 +595,11 @@
       build_diffs $old_tar
     done
   fi
+fi
+
+# Build bzip2 files
+if [ $MODE_BZIP2 -ne 0 ]; then
+  build_bzip2
 fi
 
 # Upload them to the FTP server.

-- 
Joseph S. Myers
jsm28@cam.ac.uk

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: Patch to gcc_release
  2002-02-07 14:12 Joseph S. Myers
@ 2002-02-08 11:13 ` Gerald Pfeifer
  0 siblings, 0 replies; 24+ messages in thread
From: Gerald Pfeifer @ 2002-02-08 11:13 UTC (permalink / raw)
  To: Joseph S. Myers; +Cc: gcc-patches

On Thu, 7 Feb 2002, Joseph S. Myers wrote:
> This patch to gcc_release makes it use the snapshot-README and
> snapshot-index.html files I added to CVS to generate the files on the
> FTP site.  (Having them in CVS makes it easier for people e.g. to fix
> the lists of files in them, which may be out of date.)

This is clearly Very Good Stuff[TM].

> It also sets QMAILHOST so the snapshot announcements come from
> gccadmin@gcc.gnu.org instead of @sources.redhat.com.

Even better!

> Tested by using it for the last snapshot.  OK to commit?

Yes, thanks.

Gerald
-- 
Gerald "Jerry" pfeifer@dbai.tuwien.ac.at http://www.dbai.tuwien.ac.at/~pfeifer/

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Patch to gcc_release
@ 2002-02-07 14:12 Joseph S. Myers
  2002-02-08 11:13 ` Gerald Pfeifer
  0 siblings, 1 reply; 24+ messages in thread
From: Joseph S. Myers @ 2002-02-07 14:12 UTC (permalink / raw)
  To: gcc-patches

This patch to gcc_release makes it use the snapshot-README and
snapshot-index.html files I added to CVS to generate the files on the
FTP site.  (Having them in CVS makes it easier for people e.g. to fix
the lists of files in them, which may be out of date.)  It also sets
QMAILHOST so the snapshot announcements come from gccadmin@gcc.gnu.org
instead of @sources.redhat.com.

Tested by using it for the last snapshot.  OK to commit?

2002-02-07  Joseph S. Myers  <jsm28@cam.ac.uk>

	* gcc_release: Substitute dates in snapshot-README and
	snapshot-index.html files rather than directly using the old files
	on the FTP site.  Set QMAILHOST.

--- gcc_release.orig	Tue Nov 13 00:55:46 2001
+++ gcc_release	Tue Jan 29 14:10:35 2002
@@ -521,7 +521,6 @@
   # was.
   if [ $LOCAL -ne 0 ]; then
     LAST_DATE=`cat ~/.snapshot_date`
-    PREV_LAST_DATE=`cat ~/.prev_snapshot_date`
     LAST_LONG_DATE=`date --date=$LAST_DATE +%Y-%m-%d`
     LAST_DIR=~ftp/pub/gcc/snapshots/${LAST_LONG_DATE}
     OLD_TARS=${LAST_DIR}/gcc-${LAST_DATE}.tar.gz
@@ -588,15 +587,14 @@
   if [ $SNAPSHOT -ne 0 ] && [ $LOCAL -ne 0 ]; then
     # Update links on the FTP server.
     TEXT_DATE=`date --date=$DATE +%B\ %d,\ %Y`
-    LAST_TEXT_DATE=`date --date=$LAST_DATE +%B\ %d,\ %Y`
     cd ~ftp/pub/gcc/snapshots
-    sed -e "s%$LAST_DATE%$DATE%g" -e "s%$PREV_LAST_DATE%$LAST_DATE%g" \
-      -e "s%$LAST_LONG_DATE%$LONG_DATE%g" \
-      -e "s%$LAST_TEXT_DATE%$TEXT_DATE%g" < README > $$
+    sed -e "s%@DATE@%$DATE%g" -e "s%@LAST_DATE@%$LAST_DATE%g" \
+      -e "s%@LONG_DATE@%$LONG_DATE%g" \
+      -e "s%@TEXT_DATE@%$TEXT_DATE%g" < ~/scripts/snapshot-README > $$
     mv $$ README
-    sed -e "s%$LAST_DATE%$DATE%g" -e "s%$PREV_LAST_DATE%$LAST_DATE%g" \
-      -e "s%$LAST_LONG_DATE%$LONG_DATE%g" \
-      -e "s%$LAST_TEXT_DATE%$TEXT_DATE%g" < index.html > $$
+    sed -e "s%@DATE@%$DATE%g" -e "s%@LAST_DATE@%$LAST_DATE%g" \
+      -e "s%@LONG_DATE@%$LONG_DATE%g" \
+      -e "s%@TEXT_DATE@%$TEXT_DATE%g" < ~/scripts/snapshot-index.html > $$
     mv $$ index.html
 
     touch LATEST-IS-$LONG_DATE
@@ -604,7 +602,6 @@
 
     # Update snapshot date file.
     changedir ~
-    mv .snapshot_date .prev_snapshot_date
     echo $DATE >.snapshot_date
 
     # Update gcc_latest_snapshot tag.
@@ -612,6 +609,7 @@
     ${CVS} rtag -rgcc_ss_${DATE} gcc_latest_snapshot gcc
 
     # Announce the snapshot.
+    export QMAILHOST=gcc.gnu.org
     mail -s "gcc-ss-$DATE is now available" gcc@gcc.gnu.org < ~ftp/pub/gcc/snapshots/README
 
     # Remove working directory

-- 
Joseph S. Myers
jsm28@cam.ac.uk

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: Patch to gcc_release
  2001-06-21 12:58 ` Mark Mitchell
@ 2001-06-21 14:26   ` Neil Booth
  0 siblings, 0 replies; 24+ messages in thread
From: Neil Booth @ 2001-06-21 14:26 UTC (permalink / raw)
  To: Mark Mitchell; +Cc: gcc-patches

Mark Mitchell wrote:-

> Mark Mitchelll               mark@codesourcery.com

Your name seems to have changed recently, too :-)

Neil.

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: Patch to gcc_release
  2001-06-19 16:32 Joseph S. Myers
  2001-06-20 12:23 ` Toon Moene
@ 2001-06-21 12:58 ` Mark Mitchell
  2001-06-21 14:26   ` Neil Booth
  1 sibling, 1 reply; 24+ messages in thread
From: Mark Mitchell @ 2001-06-21 12:58 UTC (permalink / raw)
  To: Joseph S. Myers, gcc-patches

--On Wednesday, June 20, 2001 12:32:23 AM +0100 "Joseph S. Myers" 
<jsm28@cam.ac.uk> wrote:

> This patch makes some adjustments to gcc_release:

OK.

--
Mark Mitchelll               mark@codesourcery.com
CodeSourcery, LLC            http://www.codesourcery.com

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: Patch to gcc_release
  2001-06-19 16:32 Joseph S. Myers
@ 2001-06-20 12:23 ` Toon Moene
  2001-06-21 12:58 ` Mark Mitchell
  1 sibling, 0 replies; 24+ messages in thread
From: Toon Moene @ 2001-06-20 12:23 UTC (permalink / raw)
  To: Joseph S. Myers; +Cc: gcc-patches

"Joseph S. Myers" wrote:

> This patch makes some adjustments to gcc_release: the whitespace in
> the ChangeLog entry is made to follow the normal conventions better,
> and the release status in the Fortran version files is updated to
> "release" automatically (which seems a more conservative fix for the
> 3.0 branch than going to a single version file and a single version
> number).  It doesn't handle changing back to "prerelease" and
> increasing the version number immediately after the release is tagged,
> though perhaps it should.  OK to commit?

It's OK with me.

Thanks !

-- 
Toon Moene - mailto:toon@moene.indiv.nluug.nl - phoneto: +31 346 214290
Saturnushof 14, 3738 XG  Maartensdijk, The Netherlands
Maintainer, GNU Fortran 77: http://gcc.gnu.org/onlinedocs/g77_news.html
Join GNU Fortran 95: http://g95.sourceforge.net/ (under construction)

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Patch to gcc_release
@ 2001-06-19 16:32 Joseph S. Myers
  2001-06-20 12:23 ` Toon Moene
  2001-06-21 12:58 ` Mark Mitchell
  0 siblings, 2 replies; 24+ messages in thread
From: Joseph S. Myers @ 2001-06-19 16:32 UTC (permalink / raw)
  To: gcc-patches

This patch makes some adjustments to gcc_release: the whitespace in
the ChangeLog entry is made to follow the normal conventions better,
and the release status in the Fortran version files is updated to
"release" automatically (which seems a more conservative fix for the
3.0 branch than going to a single version file and a single version
number).  It doesn't handle changing back to "prerelease" and
increasing the version number immediately after the release is tagged,
though perhaps it should.  OK to commit?

2001-06-20  Joseph S. Myers  <jsm28@cam.ac.uk>

	* gcc_release: Add another space to ChangeLog headers.  Use tab to
	indent ChangeLog message.  Update release status in Fortran
	version files.

Index: gcc_release
===================================================================
RCS file: /cvs/gcc/gcc/contrib/Attic/gcc_release,v
retrieving revision 1.1.2.13
diff -u -r1.1.2.13 gcc_release
--- gcc_release	2001/06/18 15:48:36	1.1.2.13
+++ gcc_release	2001/06/19 23:26:47
@@ -114,9 +114,9 @@
            error "Could not check out release sources"
     for x in `find ${SOURCE_DIRECTORY} -name ChangeLog`; do
       cat - ${x} > ${x}.new <<EOF
-`date "+%Y-%m-%d"` Release Manager
+`date "+%Y-%m-%d"`  Release Manager
 
-        * GCC ${RELEASE} Released.
+	* GCC ${RELEASE} Released.
 
 EOF
       mv ${x}.new ${x} || \
@@ -127,12 +127,20 @@
     done
 
     # Update `gcc/version.c'.  There are other version files
-    # as well, but it is unclear whether nor not they
-    # should be updated.
+    # as well, which should have release status updated.
     for x in gcc/version.c; do 
       y=`basename ${x}`
       (changedir `dirname ${SOURCE_DIRECTORY}/${x}` && \
           sed -e 's|= \".*\"|= \"${RELEASE}\"|g' < ${y} > ${y}.new && \
+	  mv ${y}.new ${y} && \
+          ${CVS} ci -m 'Update version' ${y}) || \
+	  error "Could not update ${x}"
+    done
+    for x in gcc/f/version.c libf2c/libF77/Version.c \
+             libf2c/libI77/Version.c libf2c/libU77/Version.c; do
+      y=`basename ${x}`
+      (changedir `dirname ${SOURCE_DIRECTORY}/${x}` && \
+          sed -e 's/experimental\|prerelease/release/g' < ${y} > ${y}.new && \
 	  mv ${y}.new ${y} && \
           ${CVS} ci -m 'Update version' ${y}) || \
 	  error "Could not update ${x}"

-- 
Joseph S. Myers
jsm28@cam.ac.uk

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Re: Patch to gcc_release
  2001-05-26 18:52 Joseph S. Myers
@ 2001-06-03 23:55 ` Mark Mitchell
  0 siblings, 0 replies; 24+ messages in thread
From: Mark Mitchell @ 2001-06-03 23:55 UTC (permalink / raw)
  To: jsm28; +Cc: gcc-patches

Thanks.

--
Mark Mitchell                   mark@codesourcery.com
CodeSourcery, LLC               http://www.codesourcery.com

^ permalink raw reply	[flat|nested] 24+ messages in thread

* Patch to gcc_release
@ 2001-05-26 18:52 Joseph S. Myers
  2001-06-03 23:55 ` Mark Mitchell
  0 siblings, 1 reply; 24+ messages in thread
From: Joseph S. Myers @ 2001-05-26 18:52 UTC (permalink / raw)
  To: gcc-patches

I've installed the following patch to gcc_release, which adds various
features, and uploaded a corresponding 3.0-20010527 snapshot to test
the patch.

2001-05-27  Joseph S. Myers  <jsm28@cam.ac.uk>

	* gcc_release: Support creating diffs.  Support creating .bz2
	files.  Support creating CVS tags.  Support creating snapshots
	without generated files.  Move generated .gmo files to the source
	directory.  Update comments.  Fix typos.

--- gcc_release.orig	Fri May 25 09:19:46 2001
+++ gcc_release	Sun May 27 00:55:28 2001
@@ -2,12 +2,12 @@
 
 ########################################################################
 #
-# File:   gcc_build
+# File:   gcc_release
 # Author: Jeffrey Law, Bernd Schmidt, Mark Mitchell
-# Date:   07/10/2000
+# Date:   2001-05-25
 #
 # Contents:
-#   Script to automatically download and build GCC.
+#   Script to create a GCC release.
 #
 # Copyright (c) 2001 Free Software Foundation.
 #
@@ -37,7 +37,7 @@
 # Here is an example usage of this script, to create the GCC 3.0.2
 # release:
 #
-#   gcc -r 3.0.2
+#   gcc_release -r 3.0.2
 #
 # This script will automatically use the head of the release branch
 # to generate the release.
@@ -67,6 +67,9 @@
 gcc_release     [-d destination]
                 [-u username]
 		[-r release]
+		[-t tag]
+		[-p previous-tarball]
+		[-b] [-s] [-f]
 EOF
     exit 1
 }
@@ -101,6 +104,13 @@
     || error "Could not create \`${WORKING_DIRECTORY}'"
   changedir "${WORKING_DIRECTORY}"
 
+  if [ -n "${TAG}" ]; then
+    inform "Tagging release sources"
+    ${CVS} -z 9 rtag -r ${BRANCH} ${TAG} gcc || \
+      error "Could not tag release sources"
+    BRANCH=$TAG
+  fi
+
   # Export the current sources.
   inform "Retrieving release sources"
   ${CVS} \
@@ -116,9 +126,14 @@
   # files that are supposed to go in the source directory.  This is
   # also a good sanity check to make sure that the release builds
   # on at least one platform.
-  inform "Building compiler"
-  contrib/gcc_build -d ${SOURCE_DIRECTORY} -o ../objdir build || \
-    error "Could not rebuild GCC"
+  if [ $SNAPSHOT -ne 1 ]; then
+    inform "Building compiler"
+    contrib/gcc_build -d ${SOURCE_DIRECTORY} -o ../objdir build || \
+      error "Could not rebuild GCC"
+  fi
+
+  # Move message catalogs to source directory.
+  mv ../objdir/gcc/po/*.gmo gcc/po/
 
   # Create a `.brik' file to use for checking the validity of the
   # release.
@@ -143,12 +158,13 @@
   # Build the tar file itself.
   (${TAR} cf - "$@" | ${GZIP} > ${TARFILE}) || \
     error "Could not build tarfile"
+  FILE_LIST="${FILE_LIST} ${TARFILE}"
 }
 
 # Build the various tar files for the release.
 
 build_tarfiles() {
-  inform "Building tafiles"
+  inform "Building tarfiles"
 
   changedir "${WORKING_DIRECTORY}"
 
@@ -170,6 +186,56 @@
   done
   build_tarfile gcc-core-${RELEASE} ${EXCLUDES} \
     `basename ${SOURCE_DIRECTORY}`
+
+  # Possibly build diffs.
+  if [ -n "$OLD_TARS" ]; then
+    for old_tar in $OLD_TARS; do
+      build_diffs $old_tar
+    done
+  fi
+
+  # Possibly build .bz2 files.
+  if [ $CREATE_BZIP2 -ne 0 ]; then
+    for f in ${FILE_LIST}; do
+      bzfile=${f%.gz}.bz2
+      zcat $f | ${BZIP2} > ${bzfile}
+      FILE_LIST="${FILE_LIST} ${bzfile}"
+    done
+  fi
+}
+
+# Build diffs against an old release.
+build_diffs() {
+  old_dir=${1%/*}
+  old_file=${1##*/}
+  old_vers=${old_file%.tar.gz}
+  old_vers=${old_vers#gcc-}
+  inform "Building diffs against version $old_vers"
+  for f in gcc gcc-g++ gcc-g77 gcc-java gcc-objc gcc-testsuite gcc-core; do
+    old_tar=${old_dir}/${f}-${old_vers}.tar.gz
+    new_tar=${WORKING_DIRECTORY}/${f}-${RELEASE}.tar.gz
+    if [ -e $old_tar ] && [ -e $new_tar ]; then
+      build_diff $old_tar gcc-${old_vers} $new_tar gcc-${RELEASE} \
+        ${f}-${old_vers}-${RELEASE}.diff.gz
+    fi
+  done
+}
+
+# Build an individual diff.
+build_diff() {
+  changedir "${WORKING_DIRECTORY}"
+  tmpdir=gccdiff.$$
+  mkdir $tmpdir || error "Could not create directory $tmpdir"
+  changedir $tmpdir
+  tar xfz $1 || error "Could not unpack $1 for diffs"
+  tar xfz $3 || error "Could not unpack $3 for diffs"
+  ${DIFF} $2 $4 | ${GZIP} > ../$5
+  if [ $? -eq 2 ]; then
+    error "Trouble making diffs from $1 to $3"
+  fi
+  changedir ..
+  rm -rf $tmpdir
+  FILE_LIST="${FILE_LIST} $5"
 }
 
 # Upload the files to the FTP server.
@@ -180,9 +246,11 @@
   changedir "${WORKING_DIRECTORY}"
 
   # Copy the tar files to the FTP server.
-  for x in "" g++- g77- java- objc- testsuite- core-; do
-    ${SCP} gcc-${x}${RELEASE}.tar.gz ${FTP_PATH} || \
-      error "Could not upload gcc-${x}${RELEASE}.tar.gz"
+  for x in gcc*.gz gcc*.bz2; do
+    if [ -e ${x} ]; then
+      ${SCP} ${x} ${FTP_PATH} || \
+        error "Could not upload ${x}"
+    fi
   done
 }
 
@@ -220,6 +288,12 @@
 # The name of the branch from which the release should be made.
 BRANCH=""
 
+# The tag to apply to the sources used for the release.
+TAG=""
+
+# The old tarballs from which to generate diffs.
+OLD_TARS=""
+
 # The directory that will be used to construct the release.  The
 # release itself will be placed in a subdirectory of this diretory.
 DESTINATION=${HOME}
@@ -239,14 +313,26 @@
 # Non-zero if this is the final release, rather than a prerelease.
 FINAL=0
 
+# Non-zero if we create .bz2 files.
+CREATE_BZIP2=0
+
+# Non-zero if we are building a snapshot, and don't build gcc or
+# include generated files.
+SNAPSHOT=0
+
 # Major operation modes.
 MODE_SOURCES=0
 MODE_TARFILES=0
 MODE_UPLOAD=0
 
+# Files generated to upload.
+FILE_LIST=""
+
 # Programs we use.
 
+BZIP2="${BZIP2:-bzip2}"
 CVS="${CVS:-cvs -f -Q}"
+DIFF="${DIFF:-diff -Nrc3pad}"
 GZIP="${GZIP:-gzip --best}"
 SCP="${SCP:-scp}"
 TAR="${TAR:-tar}"
@@ -256,12 +342,16 @@
 ########################################################################
 
 # Parse the options.
-while getopts "d:f:r:u:" ARG; do
+while getopts "d:fr:u:t:p:bs" ARG; do
     case $ARG in
     d)    DESTINATION="${OPTARG}";;
     r)    RELEASE="${OPTARG}";;
+    t)    TAG="${OPTARG}";;
     u)    CVS_USERNAME="${OPTARG}";;
     f)    FINAL=1;;
+    b)    CREATE_BZIP2=1;;
+    s)    SNAPSHOT=1;;
+    p)    OLD_TARS="${OLD_TARS} ${OPTARG}";;
     \?)   usage;;
     esac
 done

-- 
Joseph S. Myers
jsm28@cam.ac.uk

^ permalink raw reply	[flat|nested] 24+ messages in thread

end of thread, other threads:[~2002-03-10  1:10 UTC | newest]

Thread overview: 24+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2001-11-03 12:11 Patch to gcc_release Joseph S. Myers
2001-11-13  4:26 ` Joseph S. Myers
2001-11-13 15:03 ` Joseph S. Myers
2001-11-13 15:03 ` Pending review: " Joseph S. Myers
2001-11-13 15:03   ` Gerald Pfeifer
2001-11-14 14:01 ` Alexandre Oliva
2001-11-14 14:27   ` Joseph S. Myers
2001-11-14 15:35     ` Alexandre Oliva
2001-11-15  8:36       ` DJ Delorie
2001-11-15  9:02         ` Joseph S. Myers
2001-11-26  1:04           ` Joseph S. Myers
2001-11-25 19:58         ` DJ Delorie
2001-11-24 19:20       ` Alexandre Oliva
2001-11-24 18:38     ` Joseph S. Myers
2001-11-24 18:20   ` Alexandre Oliva
  -- strict thread matches above, loose matches on Subject: below --
2002-03-09 17:10 Joseph S. Myers
2002-02-07 14:12 Joseph S. Myers
2002-02-08 11:13 ` Gerald Pfeifer
2001-06-19 16:32 Joseph S. Myers
2001-06-20 12:23 ` Toon Moene
2001-06-21 12:58 ` Mark Mitchell
2001-06-21 14:26   ` Neil Booth
2001-05-26 18:52 Joseph S. Myers
2001-06-03 23:55 ` Mark Mitchell

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).