altos-mapd: Install systemd service file and defaults file
[fw/altos] / Releasing
index 5780f3ce2778ce4e9318d58259cf083df3b548d8..a20b6dc084e0d461eafb68422e0917ca6bdc48ac 100644 (file)
--- a/Releasing
+++ b/Releasing
@@ -17,6 +17,8 @@ These are Keith's notes on how to do a release
 
        - update the version and date in configure.ac if Bdale hasn't already
 
+       - follow instructions in doc/RELNOTES
+
        - make sure there is a doc/release-notes-<version>.inc
 
        - make sure doc/release-notes.inc points at that
@@ -32,6 +34,16 @@ These are Bdale's notes on how to do a release.
        - make sure build environment is up to date
                sudo cowbuilder --update
 
+       - 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)
+
+       - make sure ~/web/altusmetrum has no pending pullable commits
+
        git checkout master
 
        - update the version in configure.ac if Keith hasn't already
@@ -89,18 +101,15 @@ These are Bdale's notes on how to do a release.
        - at this point we have packages in ~/debian/build-area/altos, now
          we move on to the non-Debian part of the release process
 
-       make distclean
+       make distclean  (just to be sure, this should do nothing)
 
        ./autogen.sh --enable-multi-arch \
                --with-fat-dir=/home/bdale/web/altusmetrum/
        make && make fat
 
-               this pushes packages for each platform and application
-               to web site, including auto-generated mdwn files and
-               release notes in html format.
+       - store a stable copy of ARM binaries for production use
 
-       # store a stable copy of ARM binaries for production use
-       cp src/chaoskey-v1.0/{*.elf,*.ihx} \
+       cp src/chaoskey-v1.0/{*.elf,*.ihx,*.bin} \
           src/easymega-v1.0/{*.elf,*.ihx} \
           src/easymini-v1.0/{*.elf,*.ihx} \
           src/easymini-v2.0/{*.elf,*.ihx} \
@@ -108,47 +117,53 @@ These are Bdale's notes on how to do a release.
           src/telebt-v4.0/{*.elf,*.ihx} \
           src/teledongle-v3.0/{*.elf,*.ihx} \
           src/telegps-v1.0/{*.elf,*.ihx} \
+          src/telegps-v2.0/{*.elf,*.ihx} \
           src/telemega-v1.0/{*.elf,*.ihx} \
           src/telemega-v2.0/{*.elf,*.ihx} \
+          src/telemega-v3.0/{*.elf,*.ihx} \
           src/telemetrum-v2.0/{*.elf,*.ihx} \
           src/telemini-v3.0/{*.elf,*.ihx} \
+          src/telelco-v2.0/{*.elf,*.ihx} \
+          src/telefireeight-v1.0/{*.elf,*.ihx} \
           ~/altusmetrumllc/Binaries/
        cp src/chaoskey-v1.0/flash-loader/{*.elf,*.bin} \
           src/easymega-v1.0/flash-loader/*.elf \
           src/easymini-v1.0/flash-loader/*.elf \
           src/easymini-v2.0/flash-loader/{*.elf,*.bin} \
           src/telebt-v3.0/flash-loader/*.elf \
-          src/telebt-v4.0/flash-loader/*.elf \
+          src/telebt-v4.0/flash-loader/{*.elf,*.bin} \
           src/teledongle-v3.0/flash-loader/*.elf \
           src/telegps-v1.0/flash-loader/*.elf \
+          src/telegps-v2.0/flash-loader/{*.elf,*.bin} \
           src/telemega-v1.0/flash-loader/*.elf \
           src/telemega-v2.0/flash-loader/*.elf \
+          src/telemega-v3.0/flash-loader/*.elf \
           src/telemetrum-v2.0/flash-loader/*.elf \
           src/telemini-v3.0/flash-loader/{*.elf,*.bin} \
+          src/telelco-v2.0/flash-loader/*.elf \
+          src/telefireeight-v1.0/flash-loader/*.elf \
           ~/altusmetrumllc/Binaries/loaders/
        (cd ~/altusmetrumllc ; git add Binaries ; git commit -a) 
+       - remove previous versions (only keep latest release)
        (cd ~/altusmetrumllc ; git push) 
 
-       - copy the relevant release notes .html file from doc/ to 
-           /home/bdale/web/altusmetrum/AltOS/releases/<rev>
-
        - Push new release to web site
 
        make fat-install
        (cd doc ; make publish)
 
-       (cd ~/web/altusmetrum/ && git add AltOS/releases
-       TeleGPS/releases MicroPeak/releases && git commit -m'Release
-       <rev>' && git push origin master)
+       (cd ~/web/altusmetrum/ && \
+               git add */releases && git commit -m'Release <rev>' && \
+               git push origin master)
+
+       - upload the Debian package 
 
-               this pushes fresh documents to the web site
+       - clean up
 
        sudo debian/rules clean
        git push origin master branch-<version> debian pristine-tar
        git push --tags
 
-               push commits and leave the build tree in an uncluttered state
-
 Testing before a release
 
        To verify that a build works, the following need to be checked