- update the version and date in configure.ac if Bdale hasn't already
+ - update the ANDROID_VERSION in configure.ac if releasing AltosDroid
+
- follow instructions in doc/RELNOTES
- make sure there is a doc/release-notes-<version>.inc
- make sure doc/Makefile points at that too
+ - confirm doc/header.inc has correct copyright year
+
+
These are Bdale's notes on how to do a release.
- make sure Debian build environment is up to date
sudo cowbuilder --update
- make sure fat build environment is up to date
- sudo apt update && sudo apt upgrade
+ sudo apt update && sudo apt upgrade && sudo apt autoremove
- ensure i386 build support is available, and we have tools to build
installers for Windows and Mac OS X
- sudo dpkg --add-architecture i386
sudo apt update
- sudo apt install gcc-multilib genisoimage nsis
- (need some mingw packages too, but not sure which offhand)
+ sudo apt install genisoimage nsis \
+ gcc-i686-linux-gnu gcc-aarch64-linux-gnu \
+ gcc-arm-linux-gnueabi gcc-arm-linux-gnueabihf \
+ gcc-mingw-w64-i686-posix gcc-mingw-w64-x86-64-win32
+
+ - make sure jsign is installed so we can sign Windows installers:
+
+ https://github.com/ebourg/jsign/releases/download/5.0/jsign_5.0_all.deb
- make sure ~/web/altusmetrum has no pending pullable commits
- make sure there is a doc/release-notes-<version>.inc
- make sure that doc/*.txt have the right copyright year and the
new release is included
+ - confirm doc/header.inc has correct copyright year
- make absolutely sure checked-out tree is "clean"
- make absolutely sure any commits Keith might have pushed to branches
like debian are already pulled
git log > ChangeLog
- git commit -a
- git tag -a <version> # full x.y.z version
+ git commit -a -m'update ChangeLog for <version> release'
+ git tag -a <version> -m'Releasing <version>' # full x.y.z version
- make sure .git/gbp.conf set to use branch-<version> as upstream
- verify debian/changelog is "clean" ending in last release version
- craft a suitable debian/changelog entry, possibly using:
+ export EMAIL=bdale@gag.com
gbp dch --release --multimaint-merge --new-version=<version>-1
git commit -n debian/changelog -m "update changelog for Debian build"
- store a stable copy of ARM binaries for production use
cp src/chaoskey-v1.0/{*.elf,*.ihx,*.bin,*.map} \
- src/easymega-v1.0/{*.elf,*.ihx,*.map} \
- src/easymega-v2.0/{*.elf,*.ihx,*.map} \
- src/easymini-v1.0/{*.elf,*.ihx,*.map} \
- src/easymini-v2.0/{*.elf,*.ihx,*.map} \
+ src/easymega-v[1-2].0/{*.elf,*.ihx,*.map} \
+ src/easymini-v[1-3].0/{*.elf,*.ihx,*.map} \
+ src/easymotor-v3/{*.elf,*.ihx,*.map} \
src/easytimer-v1/{*.elf,*.ihx,*.map} \
- src/telebt-v3.0/{*.elf,*.ihx,*.map} \
- src/telebt-v4.0/{*.elf,*.ihx,*.map} \
+ src/telebt-v[3-4].0/{*.elf,*.ihx,*.map} \
src/teledongle-v3.0/{*.elf,*.ihx,*.map} \
- src/telegps-v1.0/{*.elf,*.ihx,*.map} \
- src/telegps-v2.0/{*.elf,*.ihx,*.map} \
- src/telemega-v[1-4].0/{*.elf,*.ihx,*.map} \
- src/telemetrum-v2.0/{*.elf,*.ihx,*.map} \
- src/telemetrum-v3.0/{*.elf,*.ihx,*.map} \
+ src/telegps-v[1-3].0/{*.elf,*.ihx,*.map} \
+ src/telemega-v[1-6].0/{*.elf,*.ihx,*.map} \
+ src/telemetrum-v[2-4].0/{*.elf,*.ihx,*.map} \
src/telemini-v3.0/{*.elf,*.ihx,*.map} \
src/telelco-v2.0/{*.elf,*.ihx,*.map} \
- src/telefireeight-v1.0/{*.elf,*.ihx,*.map} \
- src/telefireeight-v2.0/{*.elf,*.ihx,*.map} \
+ src/telefireeight-v[1-2].0/{*.elf,*.ihx,*.map} \
~/altusmetrumllc/Binaries/
cp src/chaoskey-v1.0/flash-loader/{*.elf,*.bin,*.map} \
- src/easymega-v1.0/flash-loader/*.elf \
- src/easymega-v2.0/flash-loader/*.elf \
- src/easymini-v1.0/flash-loader/*.elf \
- src/easymini-v2.0/flash-loader/{*.elf,*.bin,*.map} \
+ src/easymega-v[1-2].0/flash-loader/*.elf \
+ src/easymini-v[1-3].0/flash-loader/*.elf \
+ src/easymotor-v3/flash-loader/*.elf \
src/easytimer-v1/flash-loader/*.elf \
- src/telebt-v3.0/flash-loader/*.elf \
- src/telebt-v4.0/flash-loader/{*.elf,*.bin,*.map} \
+ src/telebt-v[3-4].0/flash-loader/{*.elf,*.bin,*.map} \
src/teledongle-v3.0/flash-loader/*.elf \
- src/telegps-v1.0/flash-loader/*.elf \
- src/telegps-v2.0/flash-loader/{*.elf,*.bin,*.map} \
- src/telemega-v[1-4].0/flash-loader/*.elf \
- src/telemetrum-v2.0/flash-loader/*.elf \
- src/telemetrum-v3.0/flash-loader/*.elf \
+ src/telegps-v[1-3].0/flash-loader/{*.elf,*.bin,*.map} \
+ src/telemega-v[1-6].0/flash-loader/*.elf \
+ src/telemetrum-v[2-4].0/flash-loader/*.elf \
src/telemini-v3.0/flash-loader/{*.elf,*.bin,*.map} \
src/telelco-v2.0/flash-loader/*.elf \
- src/telefireeight-v1.0/flash-loader/*.elf \
- src/telefireeight-v2.0/flash-loader/*.elf \
+ src/telefireeight-v[1-2].0/flash-loader/*.elf \
~/altusmetrumllc/Binaries/loaders/
(cd ~/altusmetrumllc ; git add Binaries ; git commit -a)
- remove previous versions (only keep latest release)