diff mbox series

libstdc++: Add script to update docs for a new release branch

Message ID 20240625231242.2631700-1-jwakely@redhat.com
State New
Headers show
Series libstdc++: Add script to update docs for a new release branch | expand

Commit Message

Jonathan Wakely June 25, 2024, 11:02 p.m. UTC
This script automates some updates that should be made when branching
from trunk. Putting them in a script makes it much easier and means I
won't forget what should be done.

Any suggestions for doing this differently?

Anything I've forgotten that should be added here?

We could add an entry to the lists of versions at
https://gcc.gnu.org/onlinedocs/libstdc++/manual/abi.html#abi.versioning.goals
but that should really be done when bumping the libtool version, not
when branching from trunk.

-- >8 --

This should be run on a release branch after branching from trunk.
Various links and references to trunk in the docs will be updated to
refer to the new release branch.

libstdc++-v3/ChangeLog:

	* scripts/update_release_branch.sh: New file.
---
 libstdc++-v3/scripts/update_release_branch.sh | 14 ++++++++++++++
 1 file changed, 14 insertions(+)
 create mode 100755 libstdc++-v3/scripts/update_release_branch.sh

Comments

Jonathan Wakely June 26, 2024, 8:27 p.m. UTC | #1
Pushed to trunk. We have nearly a year to make improvements to it
before it's needed for the gcc-15 branch ... I just hope I remember it
exists when we branch ;-)

On Wed, 26 Jun 2024 at 00:13, Jonathan Wakely <jwakely@redhat.com> wrote:
>
> This script automates some updates that should be made when branching
> from trunk. Putting them in a script makes it much easier and means I
> won't forget what should be done.
>
> Any suggestions for doing this differently?
>
> Anything I've forgotten that should be added here?
>
> We could add an entry to the lists of versions at
> https://gcc.gnu.org/onlinedocs/libstdc++/manual/abi.html#abi.versioning.goals
> but that should really be done when bumping the libtool version, not
> when branching from trunk.
>
> -- >8 --
>
> This should be run on a release branch after branching from trunk.
> Various links and references to trunk in the docs will be updated to
> refer to the new release branch.
>
> libstdc++-v3/ChangeLog:
>
>         * scripts/update_release_branch.sh: New file.
> ---
>  libstdc++-v3/scripts/update_release_branch.sh | 14 ++++++++++++++
>  1 file changed, 14 insertions(+)
>  create mode 100755 libstdc++-v3/scripts/update_release_branch.sh
>
> diff --git a/libstdc++-v3/scripts/update_release_branch.sh b/libstdc++-v3/scripts/update_release_branch.sh
> new file mode 100755
> index 00000000000..f8109ed0ba3
> --- /dev/null
> +++ b/libstdc++-v3/scripts/update_release_branch.sh
> @@ -0,0 +1,14 @@
> +#!/bin/bash
> +
> +# This should be run on a release branch after branching from trunk.
> +# Various links and references to trunk in the docs will be updated to
> +# refer to the new release branch.
> +
> +# The major version of the new release branch.
> +major=$1
> +(($major)) || { echo "$0: Integer argument expected" >& 2 ; exit 1; }
> +
> +# This assumes GNU sed
> +sed -i "s@^mainline GCC, not in any particular major.\$@the GCC ${major} series.@" doc/xml/manual/status_cxx*.xml
> +sed -i 's@https://gcc.gnu.org/cgit/gcc/tree/libstdc++-v3/testsuite/[^"]\+@&?h=releases%2Fgcc-'${major}@ doc/xml/manual/allocator.xml doc/xml/manual/mt_allocator.xml
> +sed -i "s@https://gcc.gnu.org/onlinedocs/gcc/Invoking-GCC.html@https://gcc.gnu.org/onlinedocs/gcc-${major}.1.0/gcc/Invoking-GCC.html@" doc/xml/manual/using.xml
> --
> 2.45.2
>
Eric Gallager June 27, 2024, 4:04 a.m. UTC | #2
On Wed, Jun 26, 2024 at 4:28 PM Jonathan Wakely <jwakely@redhat.com> wrote:
>
> Pushed to trunk. We have nearly a year to make improvements to it
> before it's needed for the gcc-15 branch ... I just hope I remember it
> exists when we branch ;-)

Maybe you could leave a note about it in the docs somewhere?

>
> On Wed, 26 Jun 2024 at 00:13, Jonathan Wakely <jwakely@redhat.com> wrote:
> >
> > This script automates some updates that should be made when branching
> > from trunk. Putting them in a script makes it much easier and means I
> > won't forget what should be done.
> >
> > Any suggestions for doing this differently?
> >
> > Anything I've forgotten that should be added here?
> >
> > We could add an entry to the lists of versions at
> > https://gcc.gnu.org/onlinedocs/libstdc++/manual/abi.html#abi.versioning.goals
> > but that should really be done when bumping the libtool version, not
> > when branching from trunk.
> >
> > -- >8 --
> >
> > This should be run on a release branch after branching from trunk.
> > Various links and references to trunk in the docs will be updated to
> > refer to the new release branch.
> >
> > libstdc++-v3/ChangeLog:
> >
> >         * scripts/update_release_branch.sh: New file.
> > ---
> >  libstdc++-v3/scripts/update_release_branch.sh | 14 ++++++++++++++
> >  1 file changed, 14 insertions(+)
> >  create mode 100755 libstdc++-v3/scripts/update_release_branch.sh
> >
> > diff --git a/libstdc++-v3/scripts/update_release_branch.sh b/libstdc++-v3/scripts/update_release_branch.sh
> > new file mode 100755
> > index 00000000000..f8109ed0ba3
> > --- /dev/null
> > +++ b/libstdc++-v3/scripts/update_release_branch.sh
> > @@ -0,0 +1,14 @@
> > +#!/bin/bash
> > +
> > +# This should be run on a release branch after branching from trunk.
> > +# Various links and references to trunk in the docs will be updated to
> > +# refer to the new release branch.
> > +
> > +# The major version of the new release branch.
> > +major=$1
> > +(($major)) || { echo "$0: Integer argument expected" >& 2 ; exit 1; }
> > +
> > +# This assumes GNU sed
> > +sed -i "s@^mainline GCC, not in any particular major.\$@the GCC ${major} series.@" doc/xml/manual/status_cxx*.xml
> > +sed -i 's@https://gcc.gnu.org/cgit/gcc/tree/libstdc++-v3/testsuite/[^"]\+@&?h=releases%2Fgcc-'${major}@ doc/xml/manual/allocator.xml doc/xml/manual/mt_allocator.xml
> > +sed -i "s@https://gcc.gnu.org/onlinedocs/gcc/Invoking-GCC.html@https://gcc.gnu.org/onlinedocs/gcc-${major}.1.0/gcc/Invoking-GCC.html@" doc/xml/manual/using.xml
> > --
> > 2.45.2
> >
>
Jonathan Wakely June 27, 2024, 6:50 a.m. UTC | #3
On Thu, 27 Jun 2024, 05:05 Eric Gallager, <egall@gwmail.gwu.edu> wrote:

> On Wed, Jun 26, 2024 at 4:28 PM Jonathan Wakely <jwakely@redhat.com>
> wrote:
> >
> > Pushed to trunk. We have nearly a year to make improvements to it
> > before it's needed for the gcc-15 branch ... I just hope I remember it
> > exists when we branch ;-)
>
> Maybe you could leave a note about it in the docs somewhere?
>

The release managers already have a note to poke the libstdc++ maintainer
when branching.



> >
> > On Wed, 26 Jun 2024 at 00:13, Jonathan Wakely <jwakely@redhat.com>
> wrote:
> > >
> > > This script automates some updates that should be made when branching
> > > from trunk. Putting them in a script makes it much easier and means I
> > > won't forget what should be done.
> > >
> > > Any suggestions for doing this differently?
> > >
> > > Anything I've forgotten that should be added here?
> > >
> > > We could add an entry to the lists of versions at
> > >
> https://gcc.gnu.org/onlinedocs/libstdc++/manual/abi.html#abi.versioning.goals
> > > but that should really be done when bumping the libtool version, not
> > > when branching from trunk.
> > >
> > > -- >8 --
> > >
> > > This should be run on a release branch after branching from trunk.
> > > Various links and references to trunk in the docs will be updated to
> > > refer to the new release branch.
> > >
> > > libstdc++-v3/ChangeLog:
> > >
> > >         * scripts/update_release_branch.sh: New file.
> > > ---
> > >  libstdc++-v3/scripts/update_release_branch.sh | 14 ++++++++++++++
> > >  1 file changed, 14 insertions(+)
> > >  create mode 100755 libstdc++-v3/scripts/update_release_branch.sh
> > >
> > > diff --git a/libstdc++-v3/scripts/update_release_branch.sh
> b/libstdc++-v3/scripts/update_release_branch.sh
> > > new file mode 100755
> > > index 00000000000..f8109ed0ba3
> > > --- /dev/null
> > > +++ b/libstdc++-v3/scripts/update_release_branch.sh
> > > @@ -0,0 +1,14 @@
> > > +#!/bin/bash
> > > +
> > > +# This should be run on a release branch after branching from trunk.
> > > +# Various links and references to trunk in the docs will be updated to
> > > +# refer to the new release branch.
> > > +
> > > +# The major version of the new release branch.
> > > +major=$1
> > > +(($major)) || { echo "$0: Integer argument expected" >& 2 ; exit 1; }
> > > +
> > > +# This assumes GNU sed
> > > +sed -i "s@^mainline GCC, not in any particular major.\$@the GCC
> ${major} series.@" doc/xml/manual/status_cxx*.xml
> > > +sed -i 's@https://gcc.gnu.org/cgit/gcc/tree/libstdc++-v3/testsuite/[
> <https://gcc.gnu.org/cgit/gcc/tree/libstdc++-v3/testsuite/%5B>
> ^"]\+@&?h=releases%2Fgcc-'${major}@ doc/xml/manual/allocator.xml
> doc/xml/manual/mt_allocator.xml
> > > +sed -i "s@
> https://gcc.gnu.org/onlinedocs/gcc/Invoking-GCC.html@https://gcc.gnu.org/onlinedocs/gcc-${major}.1.0/gcc/Invoking-GCC.html@"
> doc/xml/manual/using.xml
> > > --
> > > 2.45.2
> > >
> >
>
diff mbox series

Patch

diff --git a/libstdc++-v3/scripts/update_release_branch.sh b/libstdc++-v3/scripts/update_release_branch.sh
new file mode 100755
index 00000000000..f8109ed0ba3
--- /dev/null
+++ b/libstdc++-v3/scripts/update_release_branch.sh
@@ -0,0 +1,14 @@ 
+#!/bin/bash
+
+# This should be run on a release branch after branching from trunk.
+# Various links and references to trunk in the docs will be updated to
+# refer to the new release branch.
+
+# The major version of the new release branch.
+major=$1
+(($major)) || { echo "$0: Integer argument expected" >& 2 ; exit 1; }
+
+# This assumes GNU sed
+sed -i "s@^mainline GCC, not in any particular major.\$@the GCC ${major} series.@" doc/xml/manual/status_cxx*.xml
+sed -i 's@https://gcc.gnu.org/cgit/gcc/tree/libstdc++-v3/testsuite/[^"]\+@&?h=releases%2Fgcc-'${major}@ doc/xml/manual/allocator.xml doc/xml/manual/mt_allocator.xml
+sed -i "s@https://gcc.gnu.org/onlinedocs/gcc/Invoking-GCC.html@https://gcc.gnu.org/onlinedocs/gcc-${major}.1.0/gcc/Invoking-GCC.html@" doc/xml/manual/using.xml