Release Process for Linaro eglibc

This process describes how to produce a source tarball from git.


  1. Check that we are up to date with the latest stable branch from upstream.

Prepare Sources

  1. Check out a fresh source tree:
    git clone ssh://
    cd eglibc/libc
    git checkout linaro_eglibc-2_XX
  2. Add a ChangeLog entry to the start of ChangeLog.linaro:

    20XX-XX-XX  First Last  <email@address>
            eglibc Linaro 2.Y-20XX.XX[-X] released.
            * version.h: Update VERSION.
    Note on release numbers: The main release for a given month's milestone is called 2.X-20XX.XX (e.g. 2.17-2013.06). Subsequent respins (if necessary) carry an additional respin number, starting at 1 (e.g. 2.17-2013.06-1).
  3. Edit version.h:

    #define VERSION "2.17-2013.06"
  4. Check in the changes, and tag them
    git commit -a
    git tag -a linaro_eglibc-2_X-20XX_XX[-X]_release
    git push --tags

Create the tarballs

  1. Export the sources
    git archive --format=tar --prefix=eglibc-linaro-2.XX-20XX.XX-X/ HEAD | \
        bzip2 -9 >../../eglibc-linaro-2.XX-20XX.XX-X.tar.bz2

Bump the development version number

  1. Edit version.h:

    #define VERSION "2.17-2013.06-Y-git"

    (where Y is the number of the next respin, or 1 if this was the main release).

  2. Add this to the start of ChangeLog.linaro:

    20XX-XX-XX  First Last  <email@address>
            * version.h: Bump version.
  3. Check in the changes
    git commit -a
    git push

Verify the release

  1. Build and test the release sources as thoroughly as possible.
    • Build eglibc and run the testsuite on ARM
    • Build eglibc on AArch64.

Publishing the release

See WorkingGroups/ToolChain/PublishingARelease.

WorkingGroups/ToolChain/EglibcReleaseProcess (last modified 2013-07-25 09:55:27)