cd <branch>
git clean -fdx
- 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.37.90" becomes "2.38". 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.38-release" comment and
- commit.
+ 21. a. 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.38.90" becomes "2.39".
+
+ b. Change bfd/development.sh to set all values to "false".
+
+ c. Regenerate the configure and makefiles. And *info* files.
+
+ d. Create a ChangeLog from the git refs for all of the commits
+ from when changelog entries were no longer required:
+
+ gitlog-to-changelog --since=2021-07-03 > ChangeLog.git
+
+ The gitlog-to-changelog script is part of the sources
+ of the "config" project.
+
+ e. Add ChangeLog entries for all of the updates and add a
+ "this-is-the-2.38-release" comment and commit.
22. Check that your file creation mask will create the
correct file permissions. Eg:
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
DEVO_SUPPORT variable in the src-release.sh script. If they are
- needed then add them.
+ needed then add them. NB/ Add the new ChangeLog.git file.
- Create the release tarballs:
+ Create the release tarballs:
./src-release.sh -b -g -l -x binutils
24. Check that the files in the tarballs have the correct
permissions.
- tar tvf binutils-2.37.tar.bz2 | grep -e "---"
+ tar tvf binutils-2.39.tar.bz2 | grep -e "---"
Also check that the man files are not empty. (cf PR 28144).
- tar tvf binutils-2.37.tar.xz | grep -e "\.1"
+ tar tvf binutils-2.39.tar.xz | grep -e "\.1"
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
+ pushd /dev/shm
mkdir delme
cd delme
tar xvf <path-to-sources>/binutils-2.*.tar.lz
chmod -R -w binutils-2.*
mkdir build
cd build
- ../binutils-2.X/configure --enable-gold --prefix=`pwd`/install --enable-plugins
+ ../binutils-2.*/configure --quiet --enable-gold --prefix=`pwd`/install --enable-plugins
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
# Needed for step 29...
make html pdf
+ popd
+
26. Tag the branch with the new release number:
+ [optional: add "-u XXXXX" to sign with a gpg key]
+ enter a tag message such as: "Official GNU Binutils 2.3x release"
- git tag -a binutils-2_3x <=== Be careful to get the tag right
-
- [optional: add "-u XXXXX" to sign with a gpg key]
- enter a tag message such as: "Official Binutils 2.3x release"
-
- eg: git tag -a binutils-2_37 -u DD9E3C4F
+ git tag -a binutils-2_38 -u DD9E3C4F <=== Be careful to get the tag right
NB/ If you do sign the binaries make sure to use a key
that has been published with the FSF.
git push origin binutils-2_3x
- If you get an error message along the lines of "Invalid revision range ..." you can ignore it.
+ 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.
+ 27. Upload the tarballs to ftp.gnu.org.
- gnupload --to ftp.gnu.org:binutils binutils-2.3*.tar.*
+ gnupload --to ftp.gnu.org:binutils binutils-2.3*.tar.*
- Be prepared to provide the password for the key, if you signed the binaries.
+ Be prepared to provide the password for the key, if you
+ signed the binaries.
- The gnupload script is in the gnulib/build-aux directory.
+ The gnupload script is in the gnulib/build-aux directory.
- Check for an email response from the upload. If necessary
- fix any problems.
+ Check for an email response from the upload. If necessary
+ fix any problems.
28. Upload the tarballs (and signatures) to sourceware.org:
chmod 644 binutils-2.3x.tar.*
quit
- 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].
+ 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 ..
put as.html
put as.pdf
- cd ../bfd
+ cd bfd
lcd ../../bfd/doc/bfd
put *
cd ..
lcd ..
put bfd.html
put bfd.pdf
- cd ../binutils
- lcd ../../binutils/doc/binutils
+ cd binutils
+ lcd ../../binutils/binutils <=== NB/ Path not like others
put *
cd ..
- lcd ..
+ lcd ../doc
put binutils.html
put binutils.pdf
- cd ../gprof
+ cd gprof
lcd ../../gprof/doc/gprof
put *
cd ..
lcd ../..
put gprof.html
put gprof.pdf
- cd ../ld
+ cd ld
lcd ../ld/doc/ld
put *
cd ..