-
Notifications
You must be signed in to change notification settings - Fork 36
CreateReleases
Stafford Horne edited this page Feb 18, 2017
·
4 revisions
The following part describes how the OpenRISC GCC maintainers create releases:
-
Fetch an upstream release from their repository (they have the form
gcc-{version}-release. -
Merge this release into the OpenRISC branch (or a version branch)
-
Create a branch
or1k-{version} -
Create an annotated tag
or1k-{version}-releasegit tag -a or1k-{version}-release -m "GCC {version} Release for OpenRISC" -
Push this tag:
git push origin or1k-{version}-release -
Create the OpenRISC patch:
git diff gcc-{version}-release > gcc-{version}-or1k.patch -
Visit the repository on GitHub and go to releases
- Edit the new tag
- Set release title:
GCC {version} with OpenRISC patches - Upload the patch
As musl is not part of GCC, we also patch GCC for musl:
- Branch
or1k-{version}tomusl-{version} - Get the patches for the GCC version (branch per release)
- Apply the patches listed in
seriesand commit similar to this commit - Finally, apply the or1k-specific patch:
git cherry-pick 3455e5a - Push the branch
- Create a release of newlib, musl, etc.
- Update the RTEMS source builder
- Update openrisc.io with a post about your new release
- Send a mail to [email protected] with the details
Stafford has put together some scripts that help automate the build release parts above.
The or1k-toolchain-build project helps with:
- Build binaries for
musl,newlibandnolib(no libc just binutils and gcc for linux builds) - The binaries are built in a docker container for easy reproduction
-
release.shscript to create the gittag,.patchfiles and github release draft -
upload.shscript to upload patches and binaries the the release