Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
* [wip] How to release section
@ 2002-01-14 21:18 Andrew Cagney
  2002-01-14 23:57 ` Eli Zaretskii
  0 siblings, 1 reply; 4+ messages in thread
From: Andrew Cagney @ 2002-01-14 21:18 UTC (permalink / raw)
  To: gdb-patches

[-- Attachment #1: Type: text/plain, Size: 137 bytes --]

Hello,

Attached is a (very obviously) work in progress patch for the internals 
manual going through how to release GDB.

enjoy,
Andrew

[-- Attachment #2: diffs --]
[-- Type: text/plain, Size: 4410 bytes --]

2002-01-15  Andrew Cagney  <ac131313@redhat.com>

	* gdbint.texinfo (Releasing GDB): New chapter.

Index: gdbint.texinfo
===================================================================
RCS file: /cvs/src/src/gdb/doc/gdbint.texinfo,v
retrieving revision 1.53
diff -p -r1.53 gdbint.texinfo
*** gdbint.texinfo	2002/01/15 01:29:24	1.53
--- gdbint.texinfo	2002/01/15 05:15:43
*************** as the mechanisms that adapt @value{GDBN
*** 93,98 ****
--- 93,99 ----
  * Support Libraries::
  * Coding::
  * Porting GDB::
+ * Releasing GDB::
  * Testsuite::
  * Hints::
  * Index::
*************** distribution, generate @file{gdb-all.tex
*** 4820,4825 ****
--- 4821,4973 ----
  files @file{gdb.info*} in the distribution.  Note the plural;
  @code{makeinfo} will split the document into one overall file and five
  or so included files.
+ 
+ @node Releasing GDB
+ 
+ @chapter Releasing @value{GDBN}
+ @cindex making a new release of gdb
+ 
+ @section Before the branch
+ 
+ Mark as OBSOLETE any uninteresting targets or code files.  This has a
+ number of steps and is slow - mainly to ensure that people have had a
+ reasonable chance to respond.  Remember, everything on the internet
+ takes a week.
+ 
+ @itemize @bullet
+ @item
+ announce the change on gdb@
+ @item
+ wait a week
+ @item
+ announce the change on gdb-announce@
+ @item
+ wait a week or so
+ @item
+ post / commit the change
+ @end itemize
+ 
+ Organize the schedule.
+ 
+ @itemize @bullet
+ @item
+ announce it
+ @item
+ wait a week
+ @item
+ announce branch date
+ @item
+ wait a week
+ @item
+ you want to encourage people to sanity check their build as you really
+ don't want to be contending with configury problems as getting them
+ committed is complicated.
+ @item
+ Cut the branch
+ @item
+ wait a week
+ @item
+ start enjoying all the fun
+ @end itemize
+ 
+ As an aside, the branch tag name is probably regrettable vis:
+ gdb_N_M-YYYY-MM-DD-@{branch,branchpoint@}.
+ 
+ 
+ @section Building a Release
+ 
+ @subheading Establish a few defaults.
+ 
+ @example
+ $  b=gdb_5_1_0_1-2002-01-03-branch
+ $  v=5.1.0.1
+ $  cd /sourceware/snapshot-tmp/gdbadmin-tmp/$b
+ $  which autoconf
+ /home/gdbadmin/bin/autoconf
+ @end example
+ 
+ NB: Check the autoconf version carefully.  You want to be using
+ gdbadmin's version (which is really the version taken from the binutils
+ snapshot).  SWARE may have a different version installed.
+ 
+ @subheading Check out the relevant modules:
+ 
+ @example
+ $  for m in gdb insight dejagnu; do
+ ( mkdir -p $m && cd $m && cvs -q -f -d /cvs/src co -P -r $b $m )
+ done
+ @end example
+ 
+ NB: The reading of .cvsrc is disabled (-f) so that there isn't any
+ confusion between what is written here and what CVS really does.
+ 
+ @subheading Update the file gdb/version.in where applicable.
+ 
+ @example
+ $  for m in gdb insight; do echo $v > $m/src/gdb/version.in ; done
+ @end example
+ 
+ @subheading Mutter something about creating a ChangeLog entry. (both trunk and branch).
+ 
+ @example
+ $  emacs gdb/src/gdb/version.in
+ c-x 4 a
+ Bump version to 5.1.0.1.
+ c-x c-s c-x c-c
+ ditto for insight/src/gdb/version.in
+ @end example
+ 
+ @subheading Mutter something about updating README
+ 
+ For dejagnu, edit ``dejagnu/src/dejagnu/configure.in'' and set it to
+ gdb-$v and then regenerate configure.  Mention this in the dejagnu
+ ChangeLog.
+ 
+ @example
+ $  emacs dejagnu/src/dejagnu/configure.in
+ ...
+ c-x 4 a
+ Bump version to 5.1.0.1.
+ * configure: Re-generate.
+ c-x c-s c-x c-c
+ $  ( cd dejagnu/src/dejagnu && autoconf )
+ @end example
+ 
+ @subheading Build the snapshot:
+ 
+ @example
+ $  for m in gdb insight dejagnu; do
+ ( cd $m/src && gmake -f Makefile.in $m.tar.bz2 )
+ done
+ @end example
+ 
+ @subheading Do another CVS update to see what the damage is.
+ 
+ @example
+ $  ( cd gdb/src && cvs -q update )
+ @end example
+ 
+ You're looking for files that have mysteriously disappeared as the
+ distclean has the habit of deleting files it shouldn't.
+ 
+ @subheading Copy all the .bz2 files to the ftp directory:
+ 
+ @example
+ cp */src/*.bz2 ~ftp/.....
+ @end example
+ 
+ @subheading Something about gzip'ing them.
+ 
+ @subheading Something about web pages?
+ 
+ @subheading Something about documentation?
+ 
+ @subheading Something about committing _all_ the generated files.
+ 
+ @section After the release
+ 
+ Remove any OBSOLETE code.
+ 
  
  @node Testsuite
  

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

* Re: [wip] How to release section
  2002-01-14 21:18 [wip] How to release section Andrew Cagney
@ 2002-01-14 23:57 ` Eli Zaretskii
  2002-01-15 11:07   ` Andrew Cagney
  0 siblings, 1 reply; 4+ messages in thread
From: Eli Zaretskii @ 2002-01-14 23:57 UTC (permalink / raw)
  To: Andrew Cagney; +Cc: gdb-patches


On Tue, 15 Jan 2002, Andrew Cagney wrote:

> Attached is a (very obviously) work in progress patch for the internals 
> manual going through how to release GDB.

Approved, with the following comments:

> + Mark as OBSOLETE any uninteresting targets or code files.  This has a
> + number of steps and is slow - mainly to ensure that people have had a
                               ^^^
Please use "---" when you want a dash.  (The Texinfo manual explains
why--it's a TeX peculiarity.)

> + @item
> + announce the change on gdb@

You need to double every `@' in Texinfo.  (Actually, I'd suggest to
use a full address here, like this:

  announce the change on @email{gdb@@sources.redhat.com, GDB mailing list}

> + announce the change on gdb-announce@

Same here.

> + announce branch date
> + @item
> + wait a week
> + @item
> + you want to encourage people to sanity check their build as you really
> + don't want to be contending with configury problems as getting them
> + committed is complicated.

This last item looks like a footnote, and its style is different from
the other items.  Perhaps it should be a @footnote.

> + As an aside, the branch tag name is probably regrettable vis:
> + gdb_N_M-YYYY-MM-DD-@{branch,branchpoint@}.

This should be in @file, and again double the `@'.

> + NB: Check the autoconf version carefully.  You want to be using
> + gdbadmin's version (which is really the version taken from the binutils

`gdbadmin' is a command, so should be in @code.

> + NB: The reading of .cvsrc is disabled (-f) so that there isn't any

`.cvsrc' should be in @file.

> + @subheading Update the file gdb/version.in where applicable.

`gdb/version.in' should be in @file.

> + @subheading Mutter something about creating a ChangeLog entry. (both trunk and branch).

`ChangeLog' should be in @file.

> + @subheading Mutter something about updating README

`README' should be in @file.

> + For dejagnu, edit ``dejagnu/src/dejagnu/configure.in'' and set it to

`dejagnu/src/dejagnu/configure.in' should be in @file.

> + @subheading Do another CVS update to see what the damage is.

"CVS update" should be in @kbd (it's something you type at the
keyboard).

> + You're looking for files that have mysteriously disappeared as the
> + distclean has the habit of deleting files it shouldn't.

`distclean' should be in @samp or @kbd.

> + @subheading Copy all the .bz2 files to the ftp directory:

`.bz2' should be in @file.


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

* Re: [wip] How to release section
  2002-01-14 23:57 ` Eli Zaretskii
@ 2002-01-15 11:07   ` Andrew Cagney
  2002-01-15 21:54     ` Eli Zaretskii
  0 siblings, 1 reply; 4+ messages in thread
From: Andrew Cagney @ 2002-01-15 11:07 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: gdb-patches

[-- Attachment #1: Type: text/plain, Size: 2904 bytes --]


> Approved, with the following comments:


I'm taking a slight liberty by checking in the attached revision.  It 
fixed most of the problems and I'll fix the rest in the next round in a 
week or so.  (But with the kdb->kbd typo fixed).


>> + Mark as OBSOLETE any uninteresting targets or code files.  This has a
>> + number of steps and is slow - mainly to ensure that people have had a
> 
> ^^^
> Please use "---" when you want a dash.  (The Texinfo manual explains
> why--it's a TeX peculiarity.)


Yes, I missed that.


> You need to double every `@' in Texinfo.  (Actually, I'd suggest to
> use a full address here, like this:
> 
>   announce the change on @email{gdb@@sources.redhat.com, GDB mailing list}


Done.


>> + announce the change on gdb-announce@
> 
> 
> Same here.


Done.


>> + announce branch date
>> + @item
>> + wait a week
>> + @item
>> + you want to encourage people to sanity check their build as you really
>> + don't want to be contending with configury problems as getting them
>> + committed is complicated.
> 
> 
> This last item looks like a footnote, and its style is different from
> the other items.  Perhaps it should be a @footnote.


Agreed.  I rearanged the section.


>> + As an aside, the branch tag name is probably regrettable vis:
>> + gdb_N_M-YYYY-MM-DD-@{branch,branchpoint@}.
> 
> 
> This should be in @file, and again double the `@'.


Done.  Not sure about the @ here.  I'm trying to get

	gdb_N_M-YYYY-MM-DD-{branch,branchpoint}

in the final doco.


>> + NB: Check the autoconf version carefully.  You want to be using
>> + gdbadmin's version (which is really the version taken from the binutils
> 
> 
> `gdbadmin' is a command, so should be in @code.


It is an account.  @code or @var or @file or???  I put it in an @file 
for the moment.


>> + NB: The reading of .cvsrc is disabled (-f) so that there isn't any
> 
> 
> `.cvsrc' should be in @file.


I also made it @code{-f}.


>> + @subheading Update the file gdb/version.in where applicable.
> 
> 
> `gdb/version.in' should be in @file.
> 
> 
>> + @subheading Mutter something about creating a ChangeLog entry. (both trunk and branch).
> 
> 
> `ChangeLog' should be in @file.
> 
> 
>> + @subheading Mutter something about updating README
> 
> 
> `README' should be in @file.
> 
> 
>> + For dejagnu, edit ``dejagnu/src/dejagnu/configure.in'' and set it to
> 
> 
> `dejagnu/src/dejagnu/configure.in' should be in @file.


Ok.


>> + @subheading Do another CVS update to see what the damage is.
> 
> 
> "CVS update" should be in @kbd (it's something you type at the
> keyboard).


Done.


>> + You're looking for files that have mysteriously disappeared as the
>> + distclean has the habit of deleting files it shouldn't.
> 
> 
> `distclean' should be in @samp or @kbd.



Done.


>> + @subheading Copy all the .bz2 files to the ftp directory:
> 
> 
> `.bz2' should be in @file.


Done.


Andrew




[-- Attachment #2: diffs --]
[-- Type: text/plain, Size: 5554 bytes --]

2002-01-15  Andrew Cagney  <ac131313@redhat.com>

	* gdbint.texinfo (Releasing GDB): New chapter.

Index: gdbint.texinfo
===================================================================
RCS file: /cvs/src/src/gdb/doc/gdbint.texinfo,v
retrieving revision 1.53
diff -p -r1.53 gdbint.texinfo
*** gdbint.texinfo	2002/01/15 01:29:24	1.53
--- gdbint.texinfo	2002/01/15 18:58:24
*************** as the mechanisms that adapt @value{GDBN
*** 93,98 ****
--- 93,99 ----
  * Support Libraries::
  * Coding::
  * Porting GDB::
+ * Releasing GDB::
  * Testsuite::
  * Hints::
  * Index::
*************** distribution, generate @file{gdb-all.tex
*** 4820,4825 ****
--- 4821,5010 ----
  files @file{gdb.info*} in the distribution.  Note the plural;
  @code{makeinfo} will split the document into one overall file and five
  or so included files.
+ 
+ @node Releasing GDB
+ 
+ @chapter Releasing @value{GDBN}
+ @cindex making a new release of gdb
+ 
+ @section Before the branch
+ 
+ The most important objective at this stage is to find and fix simple
+ changes that become a pain to track once the branch is created.  For
+ instance, configuration problems that stop @value{GDBN} from even
+ building.  If you can't get the problem fixed, document it in the
+ @file{PROBLEMS} file.
+ 
+ @subheading Obsolete any code
+ 
+ Mark as @kbd{OBSOLETE} any uninteresting targets or code files.  This
+ has a number of steps and is slow --- mainly to ensure that people have
+ had a reasonable chance to respond.  Remember, everything on the
+ internet takes a week.
+ 
+ @itemize @bullet
+ @item
+ announce the change on @email{gdb@@sources.redhat.com, GDB mailing list}
+ @item
+ wait a week
+ @item
+ announce the change on @email{gdb-announce@@sources.redhat.com, GDB
+ Announcement mailing list}
+ @item
+ wait a week or so
+ @item
+ post / commit the change
+ @end itemize
+ 
+ @subheading Refresh any imported files.
+ 
+ A number of files are taken from external repositories.  They include:
+ 
+ @itemize @bullet
+ @item
+ @file{texinfo/texinfo.tex}
+ @item
+ @file{config.guess} et.@: al.@: 
+ @end itemize
+ 
+ and should be refreshed.
+ 
+ @subheading Organize and announce the schedule.
+ 
+ The following is a possible schedule.  It is based on the rule-of-thumb
+ that everything on the Internet takes a week.  You may want to even
+ increase those times further since an analysis of the actual data
+ strongly suggests that the below is far to aggressive.
+ 
+ @itemize @bullet
+ @item
+ announce it
+ @item
+ wait a week
+ @item
+ announce branch date
+ @item
+ wait a week
+ @item
+ Cut the branch
+ @item
+ wait a week
+ @item
+ start enjoying all the fun
+ @end itemize
+ 
+ As an aside, the branch tag name is probably regrettable vis:
+ @file{gdb_N_M-YYYY-MM-DD-@{branch,branchpoint@}}.
+ 
+ 
+ @section Building a Release
+ 
+ @subheading Establish a few defaults.
+ 
+ @example
+ $  b=gdb_5_1_0_1-2002-01-03-branch
+ $  v=5.1.0.1
+ $  cd /sourceware/snapshot-tmp/gdbadmin-tmp/$b
+ $  which autoconf
+ /home/gdbadmin/bin/autoconf
+ @end example
+ 
+ NB: Check the autoconf version carefully.  You want to be using
+ @file{gdbadmin}'s version (which is really the version taken from the
+ binutils snapshot).  SWARE may have a different version installed.
+ 
+ @subheading Check out the relevant modules:
+ 
+ @example
+ $  for m in gdb insight dejagnu; do
+ ( mkdir -p $m && cd $m && cvs -q -f -d /cvs/src co -P -r $b $m )
+ done
+ @end example
+ 
+ NB: The reading of @file{.cvsrc} is disabled (@file{-f}) so that there
+ isn't any confusion between what is written here and what CVS really
+ does.
+ 
+ @subheading Update the file @file{gdb/version.in} where applicable.
+ 
+ @example
+ $ for m in gdb insight; do echo $v > $m/src/gdb/version.in ; done
+ @end example
+ 
+ 
+ @subheading Mutter something about creating a @file{ChangeLog} entry. (both trunk and branch).
+ 
+ @example
+ $  emacs gdb/src/gdb/version.in
+ c-x 4 a
+ Bump version to 5.1.0.1.
+ c-x c-s c-x c-c
+ @end example
+ 
+ ditto for @file{insight/src/gdb/version.in}
+ 
+ @subheading Mutter something about updating @file{README}
+ 
+ For dejagnu, edit @file{dejagnu/src/dejagnu/configure.in} and set it to
+ gdb-$v and then regenerate configure.  Mention this in the dejagnu
+ @file{ChangeLog}.
+ 
+ @example
+ $  emacs dejagnu/src/dejagnu/configure.in
+ ...
+ c-x 4 a
+ Bump version to 5.1.0.1.
+ * configure: Re-generate.
+ c-x c-s c-x c-c
+ $  ( cd dejagnu/src/dejagnu && autoconf )
+ @end example
+ 
+ @subheading Build the snapshot:
+ 
+ @example
+ $  for m in gdb insight dejagnu; do
+ ( cd $m/src && gmake -f Makefile.in $m.tar.bz2 )
+ done
+ @end example
+ 
+ @subheading Do another @kpd{CVS update} to see what the damage is.
+ 
+ @example
+ $ ( cd gdb/src && cvs -q update )
+ @end example
+ 
+ You're looking for files that have mysteriously disappeared as the
+ @kbd{distclean} has the habit of deleting files it shouldn't.  Watch out
+ for the @file{version.in} update cronjob.
+ 
+ @subheading Copy all the @file{.bz2} files to the ftp directory:
+ 
+ @example
+ cp */src/*.bz2 ~ftp/.....
+ @end example
+ 
+ @subheading Something about @kbd{gzip}'ing them.
+ 
+ @subheading Something about web pages?
+ 
+ @subheading Something about documentation?
+ 
+ @subheading Cleanup the release tree
+ 
+ In particular you'll need to:
+ 
+ @itemize @bullet
+ @item
+ Commit the changes to @file{ChangeLog} and @file{version.in}
+ @item
+ Tag the repository.
+ @end itemize
+ 
+ 
+ @section After the release
+ 
+ Remove any @kbd{OBSOLETE} code.
+ 
  
  @node Testsuite
  

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

* Re: [wip] How to release section
  2002-01-15 11:07   ` Andrew Cagney
@ 2002-01-15 21:54     ` Eli Zaretskii
  0 siblings, 0 replies; 4+ messages in thread
From: Eli Zaretskii @ 2002-01-15 21:54 UTC (permalink / raw)
  To: Andrew Cagney; +Cc: gdb-patches


On Tue, 15 Jan 2002, Andrew Cagney wrote:

> >> + As an aside, the branch tag name is probably regrettable vis:
> >> + gdb_N_M-YYYY-MM-DD-@{branch,branchpoint@}.
> > 
> > This should be in @file, and again double the `@'.
> 
> Done.  Not sure about the @ here.  I'm trying to get
> 
> 	gdb_N_M-YYYY-MM-DD-{branch,branchpoint}
> 
> in the final doco.

Oops, my bad: I missed the fact that there are braces there.  @{ and @} 
is correct, sorry.

> > `gdbadmin' is a command, so should be in @code.
> 
> 
> It is an account.  @code or @var or @file or???  I put it in an @file 
> for the moment.

If it's an account, I think @code is the right one.  @samp and @file are 
also okay, but @var is certainly wrong (it will be UPCASED in Info and 
italics in the printed maual--not what you want).


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

end of thread, other threads:[~2002-01-16  5:54 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-01-14 21:18 [wip] How to release section Andrew Cagney
2002-01-14 23:57 ` Eli Zaretskii
2002-01-15 11:07   ` Andrew Cagney
2002-01-15 21:54     ` Eli Zaretskii

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox