Make sure that this includes the .pot files as well as the
configure and makefiles.
- 8. Create an initial pre-release:
+ 9. Create an initial pre-release:
a. Remove any auto-generated files, in order to force the
src-release script to rebuild them.
c. Build a test target using this tarball.
- cp binutils-<version>.tar.xz /dev/shm
+ cp binutils-<OLD_VERSION>.90.tar.xz /dev/shm
cd /dev/shm
- tar xvf binutils-<version>.tar.xz
+ tar xvf binutils-<OLD_VERSION>.90.tar.xz
mkdir build
cd build
- ../<version>/configure --quiet --enable-gold
+ ../binutils-<OLD_VERSION>.90/configure --quiet --enable-gold
make
If there are problems, fix them.
d. Upload the pre-release snapshot to the sourceware FTP site:
cd <branch-sources>
- scp binutils-<version>.tar.xz sourceware.org:~ftp/pub/binutils/snapshots
- ssh sourceware.org md5sum ~ftp/pub/binutils/snapshots/binutils-<version>.tar.xz
+ scp binutils-<OLD_VERSION>.90.tar.xz sourceware.org:~ftp/pub/binutils/snapshots
+ ssh sourceware.org md5sum ~ftp/pub/binutils/snapshots/binutils-<OLD_VERSION>.90.tar.xz
e. Clean up the source directory again.
git clean -fdx .
- 9. Tell the Translation Project where to find the new tarball.
+ 10. Tell the Translation Project where to find the new tarball.
<coordinator@translationproject.org>
qv: http://translationproject.org/html/maintainers.html
------------------------------------------------------------------------
Dear Translation Project
- The 2.3x release branch has been created for the FSF binutils.
+ The <NEW_VERSION> release branch has been created for the GNU binutils.
A snapshot of the branch sources can be found here:
- https://sourceware.org/pub/binutils/snapshots/binutils-2.3x.90.tar.xz
+ https://sourceware.org/pub/binutils/snapshots/binutils-<OLD_VERSION>.90.tar.xz
- We hope to make the official release of the sources on the 8th July
+ We hope to make the official release of the sources on the <DATE>
although that could change if there are important bugs that need to
be fixed before the release.
------------------------------------------------------------------------
- 10. Announce the availability of the snapshot and the branch on the
+ 11. Announce the availability of the snapshot and the branch on the
binutils mailing list. Set a date for when the release will
actually happen. Something like:
------------------------------------------------------------------------
Hi Everyone,
- The 2.3x branch has now been created:
+ The <NEW_VERSION> branch has now been created:
- git clone git://sourceware.org/git/binutils-gdb.git -b binutils-2_3x-branch 2.3x
+ git clone git://sourceware.org/git/binutils-gdb.git -b binutils-<NEW_VERSION>-branch <NEW_VERSION>
A snapshot of the sources is also available here:
- https://sourceware.org/pub/binutils/snapshots/binutils-2.3x.90.tar.xz
+ https://sourceware.org/pub/binutils/snapshots/binutils-<OLD_VERSION>.90.tar.xz
Please could all patches for the branch be run by me.
The rules for the branch are:
* Fixes for testsuite failures are OK.
Ideally I would like to make the release happen in two weeks time,
- i.e. Saturday 27th Jan. Which I hope will be enough time for everyone
+ i.e. <DATE>. Which I hope will be enough time for everyone
to get their final fixes in.
------------------------------------------------------------------------
- 11. Build various different toolchains, test them and nag
+ 12. Build various different toolchains, test them and nag
maintainers to fix any testsuite failures for their
architectures...
+==============================================================================
When the time comes to actually make the release....
21. Update the release number in bfd/version.m4 on the release
branch to a whole new minor version number, without a point
- value. Eg "2.29.90" becomes "2.30". Change bfd/development.sh
+ value. Eg "2.34.90" becomes "2.35". Change bfd/development.sh
to set all values to "false". Regenerate the configure and
makefiles. And *info* files. Add ChangeLog entries for the
updates and add a "this-is-the-2.3x-release" comment and
Remove any spurious autom4te.cache files left over from the
reconfiguring:
- % find . -depth -name autom4te.cache -exec rm -r {} \;
+ git clean -fdx
23. Note - check to see if any new files have been added to the top
level of the source directory, but which are not in the
./src-release.sh -b -g -l -x binutils
24. Check that the files in the tarballs have the correct
- permissions.
+ permissions. (FIXME: How to do this ?)
25. Sanity check the release on x86_64-pc-linux-gnu by building and
running the testsuites (gas, gold, binutils and ld). Make the
source directory read-only before building. Also test
"make install". If necessary fix any problems.
+ cd /dev/shm
+ mkdir delme
+ cd delme
+ tar xvf <path-to-sources>/binutils-2.X.tar.xz
+ chmod -R -w binutils-2.X
+ mkdir build
+ cd build
+ ../binutils-2.X/configure --enable-gold --prefix=`pwd`/install
+ make all-gas all-gold all-ld all-binutils all-gprof
+ make check-gas check-binutils check-ld check-gold
+ make install-gas install-gold install-ld install-binutils
+
26. Tag the branch with the new release number:
git tag -a binutils-2_3x
[optional: add "-u XXXXX" to sign with a gpg key]
- git push origin binutils-2_3x
-
+ enter a tag message such as: "Official Binutils 2.3x release"
+
NB/ If you do sign the binaries make sure to use a key
that has been published with the FSF.
+ Then push the release:
+
+ git push origin binutils-2_3x
+
+ If you get an error message along the lines of "Invalid revision range ..." you can ignore it.
+
27. Upload the tarballs to ftp.gnu.org.
gnupload --to ftp.gnu.org:binutils binutils-2.3x.tar.*
chmod 644 binutils-2.3x.tar.*
quit
- FIXME: Should the signatures (created by the gnupload script in
- step 29) be uploaded as well ?
+ FIXME: Are the signatures (created by the gnupload script in step 27) needed ?
+ [The above commands upload them and nobody has complained, so suggest that they
+ are retained].
29. Update web pages. For sourceware.org:
cd /sourceware/www/sourceware/htdocs/binutils
mkdir docs-2.3x
cd docs-2.3x
- mkdir as bfd binutils gprof ld
+ mkdir as
+ mkdir bfd
+ mkdir binutils
+ mkdir gprof
+ mkdir ld
cd ../docs-2.3(x-1)
get index.html
Update the (local copy of the) index.html file to point to the
new documentation and mention the new version and then upload it.
+ [NB/ FIXME: Special for updating from 2.34 documentation - restore
+ the link to the GAS/NEWS which has been changed for 2.34 to a
+ specific commit rather than the branch tag].
cd ../docs-2.3x
put index.html
cd as
lcd <build-dir>/gas/doc/as.html
- put *
+ put * {be patient - this takes a long time...}
cd ../bfd
lcd ../../../bfd/doc/bfd.html
put *
put *
Edit the top level binutils index.html file to change the links
- to the new documentation.
+ to point to the new documentation.
cd ../../..
get index.html
checksums: xxxx
- This release contains numerous bug fixes, and also the
- following new features:
+ This release contains numerous bug fixes, and also the
+ following new features:
<extract info from the NEWS files>
- Our thanks go out to all of the binutils contributors, past and
- present, for helping to make this release possible.
+ Our thanks go out to all of the binutils contributors, past and
+ present, for helping to make this release possible.
-----------------------------------------------------------------------
is now open for business as usual and that patched no longer
need special approval.
- 34. Examine the bfd/config.bfd file and move any pending obsolete
- targets into the definitely obsolete section. Create a
- changelog entry and commit.
+ 34. Examine the bfd/config.bfd file in the mainline sources and move
+ any pending obsolete targets into the definitely obsolete
+ section. Create a changelog entry and commit.
--------------------------------------------------
+--------------------------------------------------------------------------
How to perform a point release.
--------------------------------------------------
+--------------------------------------------------------------------------
A point release is easier than a normal release since a lot of the
work has already been done. The branch has been created, the