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 |
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 >
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 > > >
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 --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