From: Keith Packard Date: Sat, 12 Aug 2017 05:37:07 +0000 (-0400) Subject: install: Add 'fat-install' target X-Git-Tag: 1.8.1~19 X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=commitdiff_plain;h=43e2275250d9c91560a770942f3c06a8f74ed501 install: Add 'fat-install' target This uses the existing --with-fat-dir option and instead of installing everything to that directory, creates a normal ikiwiki hierarchy of files including .mdwn files, whacked release notes html files and all of the appropriate packages. One stop shopping for adding the release to the web site. Attempted to update Releasing file to match. Signed-off-by: Keith Packard --- diff --git a/Makefile.am b/Makefile.am index 2fdbd109..cac02c62 100644 --- a/Makefile.am +++ b/Makefile.am @@ -18,6 +18,13 @@ ChangeLog: dist-hook: ChangeLog +if FATINSTALL +fat-install: fat + cd altosui && $(MAKE) fat-install + cd telegps && $(MAKE) fat-install + cd micropeak && $(MAKE) fat-install +endif + fat: cd src && $(MAKE) all cd doc && $(MAKE) all diff --git a/Releasing b/Releasing index cb92b1e9..5780f3ce 100644 --- a/Releasing +++ b/Releasing @@ -7,6 +7,26 @@ Adding a product to the release Add the firmware to altosui/altos-windows.nsi.in + Add the firmware to telegps/Makefile.am + + Add the firmware to telegps/telegps-windows.nsi.in + + Add the firmware to Releasing + +These are Keith's notes on how to do a release + + - update the version and date in configure.ac if Bdale hasn't already + + - make sure there is a doc/release-notes-.inc + + - make sure doc/release-notes.inc points at that + + - make sure doc/Makefile points at that too + + - make sure that doc/altusmetrum-docinfo.xml has the right copyright + year, and add release to the revision history at the front (release + notes will be pulled in by release-notes.inc) + These are Bdale's notes on how to do a release. - make sure build environment is up to date @@ -72,10 +92,12 @@ These are Bdale's notes on how to do a release. make distclean ./autogen.sh --enable-multi-arch \ - --with-fat-dir=/home/bdale/web/altusmetrum/AltOS/releases + --with-fat-dir=/home/bdale/web/altusmetrum/ make && make fat - this pushes packages for each platform to web site + 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 cp src/chaoskey-v1.0/{*.elf,*.ihx} \ @@ -110,22 +132,15 @@ These are Bdale's notes on how to do a release. - copy the relevant release notes .html file from doc/ to /home/bdale/web/altusmetrum/AltOS/releases/ - (cd ~/web/altusmetrum/AltOS/releases/ ; rm *.tar.bz2) - - - create /home/bdale/web/altusmetrum/MicroPeak/releases/, - and move the MicroPeak installers from AltOS/releases to there - - - create /home/bdale/web/altusmetrum/TeleGPS/releases/, - and move the TeleGPS installers from AltOS/releases to there - - - go edit ~/web/altusmetrum/AltOS/releases/.mdwn, - /home/bdale/web/altusmetrum/MicroPeak/releases/.mdwn, and - /home/bdale/web/altusmetrum/TeleGPS/releases/.mdwn - - - make sure the Windows stuff is like 1-4-1, not 1.4.1! + - 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 + ' && git push origin master) + this pushes fresh documents to the web site sudo debian/rules clean diff --git a/altosui/Makefile.am b/altosui/Makefile.am index 31ec06bc..53762aec 100644 --- a/altosui/Makefile.am +++ b/altosui/Makefile.am @@ -171,6 +171,8 @@ LINUX_DIST=Altos-Linux-$(VERSION).tar.bz2 LINUX_SH=Altos-Linux-$(VERSION).sh MACOSX_DIST=Altos-Mac-$(VERSION).dmg WINDOWS_DIST=Altos-Windows-$(VERSION_DASH).exe +MDWN=$(VERSION).mdwn +MDWNTMPL=mdwn.tmpl FAT_FILES=$(FATJAR) $(ALTOSLIB_CLASS) $(ALTOSUILIB_CLASS) $(FREETTS_CLASS) $(JFREECHART_CLASS) $(JCOMMON_CLASS) @@ -185,14 +187,14 @@ MACOSX_EXTRA=$(FIRMWARE) WINDOWS_FILES=$(FAT_FILES) $(FIRMWARE) altos.dll altos64.dll $(top_srcdir)/altusmetrum.inf $(top_srcdir)/altusmetrum.cat $(WINDOWS_ICONS) -all-local: classes/altosui $(JAR) altosui altosui-test altosui-jdb +all-local: classes/altosui $(JAR) altosui altosui-test altosui-jdb $(MDWN) clean-local: -rm -rf classes $(JAR) $(FATJAR) \ Altos-Linux-*.tar.bz2 Altos-Linux-*.sh Altos-Mac-*.dmg Altos-Windows-*.exe \ windows altoslib_*.jar altosuilib_*.jar $(FREETTS_CLASS) \ $(JFREECHART_CLASS) $(JCOMMON_CLASS) $(LIBALTOS) Manifest.txt Manifest-fat.txt altos-windows.log altos-windows.nsi \ - altosui altosui-test altosui-jdb macosx linux *.desktop + altosui altosui-test altosui-jdb macosx linux *.desktop $(MDWN) EXTRA_DIST = $(desktop_file).in @@ -202,18 +204,17 @@ $(desktop_file): $(desktop_file).in if FATINSTALL -FATTARGET=$(FATDIR)/$(VERSION) +FATTARGET=$(FATDIR)/AltOS/releases/$(VERSION) -LINUX_DIST_TARGET=$(FATTARGET)/$(LINUX_DIST) LINUX_SH_TARGET=$(FATTARGET)/$(LINUX_SH) MACOSX_DIST_TARGET=$(FATTARGET)/$(MACOSX_DIST) WINDOWS_DIST_TARGET=$(FATTARGET)/$(WINDOWS_DIST) +MDWN_TARGET=$(FATDIR)/AltOS/releases/$(MDWN) +RELNOTES=release-notes-$(VERSION).html +RELNOTES_SRC=$(top_builddir)/doc/$(RELNOTES) +RELNOTES_TARGET=$(FATTARGET)/$(RELNOTES) -fat: $(LINUX_DIST_TARGET) $(LINUX_SH_TARGET) $(MACOSX_DIST_TARGET) $(WINDOWS_DIST_TARGET) - -$(LINUX_DIST_TARGET): $(LINUX_DIST) - mkdir -p $(FATTARGET) - cp -p $< $@ +fat-install: fat $(LINUX_SH_TARGET) $(MACOSX_DIST_TARGET) $(WINDOWS_DIST_TARGET) $(MDWN_TARGET) $(RELNOTES_TARGET) $(LINUX_SH_TARGET): $(LINUX_SH) mkdir -p $(FATTARGET) @@ -227,10 +228,21 @@ $(WINDOWS_DIST_TARGET): $(WINDOWS_DIST) mkdir -p $(FATTARGET) cp -p $< $@ -else -fat: $(LINUX_DIST) $(LINUX_SH) $(MACOSX_DIST) $(WINDOWS_DIST) +$(MDWN_TARGET): $(MDWN) + mkdir -p $(FATTARGET) + cp -p $< $@ + +$(RELNOTES_TARGET): $(RELNOTES_SRC) + mkdir -p $(FATTARGET) + sh $(top_srcdir)/doc/install-html -d $(FATTARGET) $(RELNOTES_SRC) + endif +$(MDWN): $(MDWNTMPL) + sed -e 's/%version%/$(VERSION)/g' -e 's/%version_dash%/$(VERSION_DASH)/g' $(MDWNTMPL) > $@ + +fat: $(LINUX_DIST) $(LINUX_SH) $(MACOSX_DIST) $(WINDOWS_DIST) + altosuidir=$(datadir)/java install-altosuiJAVA: altosui.jar diff --git a/altosui/mdwn.tmpl b/altosui/mdwn.tmpl new file mode 100644 index 00000000..b64825a6 --- /dev/null +++ b/altosui/mdwn.tmpl @@ -0,0 +1,7 @@ +[[!inline pages="./%version%/release-notes-%version%.html" rss="no" raw="yes" ]] + +- Available Files: + - [Windows Installer](/AltOS/releases/%version%/Altos-Windows-%version_dash%.exe) + - [Mac OS X Package](/AltOS/releases/%version%/Altos-Mac-%version%.dmg) + - [Linux](/AltOS/releases/%version%/Altos-Linux-%version%.sh) + - [Source Snapshot](http://git.gag.com/?p=fw/altos;a=snapshot;h=refs/tags/%version%;sf=tgz) diff --git a/configure.ac b/configure.ac index f4509b4c..ec221df1 100644 --- a/configure.ac +++ b/configure.ac @@ -165,7 +165,7 @@ AM_CONDITIONAL([ANDROID_RELEASE], [test x$ANDROID_RELEASE = xyes]) AC_SUBST(ANDROID_SDK) AC_ARG_WITH(fat-dir, AS_HELP_STRING([--with-fat-dir=PATH], - [Set the directory to install the 'fat' distribution files to (defaults to not installing)]), + [Set the directory to install the 'fat-install' distribution files to (defaults to no such target)]), [FATDIR=$withval], [FATDIR=none]) AM_CONDITIONAL(FATINSTALL, [test "x$FATDIR" != "xnone"]) diff --git a/micropeak/Makefile.am b/micropeak/Makefile.am index 52b62358..6f674b19 100644 --- a/micropeak/Makefile.am +++ b/micropeak/Makefile.am @@ -95,7 +95,7 @@ desktopdir = $(datadir)/applications desktop_file = altusmetrum-micropeak.desktop desktop_SCRIPTS = $(desktop_file) -all-local: micropeak-test micropeak-jdb $(JAR) +all-local: micropeak-test micropeak-jdb $(JAR) $(MDWN) clean-local: -rm -rf classes $(JAR) $(FATJAR) \ @@ -103,7 +103,7 @@ clean-local: altoslib_*.jar altosuilib_*.jar \ $(JFREECHART_CLASS) $(JCOMMON_CLASS) $(LIBALTOS) Manifest.txt Manifest-fat.txt \ micropeak micropeak-test micropeak-jdb macosx linux windows micropeak-windows.log \ - micropeak-windows.nsi *.desktop + micropeak-windows.nsi *.desktop $(MDWN) EXTRA_DIST = $(desktop_file).in @@ -115,6 +115,8 @@ LINUX_DIST=MicroPeak-Linux-$(VERSION).tar.bz2 LINUX_SH=MicroPeak-Linux-$(VERSION).sh MACOSX_DIST=MicroPeak-Mac-$(VERSION).dmg WINDOWS_DIST=MicroPeak-Windows-$(VERSION_DASH).exe +MDWN=$(VERSION).mdwn +MDWNTMPL=mdwn.tmpl MICROPEAK_DOC=$(top_srcdir)/doc/micropeak.pdf @@ -153,18 +155,17 @@ WINDOWS_FILES=$(FAT_FILES) altos.dll altos64.dll $(DOC) $(WINDOWS_ICONS) $(WINDO if FATINSTALL -FATTARGET=$(FATDIR)/$(VERSION) +FATTARGET=$(FATDIR)/MicroPeak/releases/$(VERSION) -LINUX_DIST_TARGET=$(FATTARGET)/$(LINUX_DIST) LINUX_SH_TARGET=$(FATTARGET)/$(LINUX_SH) MACOSX_DIST_TARGET=$(FATTARGET)/$(MACOSX_DIST) WINDOWS_DIST_TARGET=$(FATTARGET)/$(WINDOWS_DIST) +MDWN_TARGET=$(FATDIR)/MicroPeak/releases/$(MDWN) +RELNOTES=release-notes-$(VERSION).html +RELNOTES_SRC=$(top_builddir)/doc/$(RELNOTES) +RELNOTES_TARGET=$(FATTARGET)/$(RELNOTES) -fat: $(LINUX_DIST_TARGET) $(LINUX_SH_TARGET) $(MACOSX_DIST_TARGET) $(WINDOWS_DIST_TARGET) - -$(LINUX_DIST_TARGET): $(LINUX_DIST) - mkdir -p $(FATTARGET) - cp -p $< $@ +fat-install: $(LINUX_SH_TARGET) $(MACOSX_DIST_TARGET) $(WINDOWS_DIST_TARGET) $(MDWN_TARGET) $(RELNOTES_TARGET) $(LINUX_SH_TARGET): $(LINUX_SH) mkdir -p $(FATTARGET) @@ -178,10 +179,22 @@ $(WINDOWS_DIST_TARGET): $(WINDOWS_DIST) mkdir -p $(FATTARGET) cp -p $< $@ -else -fat: $(LINUX_DIST) $(LINUX_SH) $(MACOSX_DIST) $(WINDOWS_DIST) +$(MDWN_TARGET): $(MDWN) + mkdir -p $(FATTARGET) + cp -p $< $@ + +$(RELNOTES_TARGET): $(RELNOTES_SRC) + mkdir -p $(FATTARGET) + sh $(top_srcdir)/doc/install-html -d $(FATTARGET) $(RELNOTES_SRC) + endif +$(MDWN): $(MDWNTMPL) + sed -e 's/%version%/$(VERSION)/g' -e 's/%version_dash%/$(VERSION_DASH)/g' $(MDWNTMPL) > $@ + +fat: $(LINUX_DIST) $(LINUX_SH) $(MACOSX_DIST) $(WINDOWS_DIST) + + micropeak: Makefile echo "#!/bin/sh" > $@ echo 'exec java -Djava.library.path="$(altoslibdir)" -jar "$(micropeakdir)/micropeak.jar" "$$@"' >> $@ diff --git a/micropeak/mdwn.tmpl b/micropeak/mdwn.tmpl new file mode 100644 index 00000000..232dde5b --- /dev/null +++ b/micropeak/mdwn.tmpl @@ -0,0 +1,7 @@ +[[!inline pages="./%version%/release-notes-%version%.html" rss="no" raw="yes" ]] + +- Available Files: + - [Windows Installer](/MicroPeak/releases/%version%/MicroPeak-Windows-%version_dash%.exe) + - [Mac OS X Package](/MicroPeak/releases/%version%/MicroPeak-Mac-%version%.dmg) + - [Linux](/MicroPeak/releases/%version%/MicroPeak-Linux-%version%.sh) + - [Source Snapshot](http://git.gag.com/?p=fw/altos;a=snapshot;h=refs/tags/%version%;sf=tgz) diff --git a/telegps/Makefile.am b/telegps/Makefile.am index bd69bd50..a1c4a0a1 100644 --- a/telegps/Makefile.am +++ b/telegps/Makefile.am @@ -120,7 +120,7 @@ desktopdir = $(datadir)/applications desktop_file = altusmetrum-telegps.desktop desktop_SCRIPTS = $(desktop_file) -all-local: telegps-test telegps-jdb $(JAR) +all-local: telegps-test telegps-jdb $(JAR) $(MDWN) clean-local: -rm -rf classes $(JAR) $(FATJAR) \ @@ -128,7 +128,7 @@ clean-local: altoslib_*.jar altosuilib_*.jar \ $(JFREECHART_CLASS) $(JCOMMON_CLASS) $(FREETTS_CLASS) $(LIBALTOS) Manifest.txt Manifest-fat.txt \ telegps telegps-test telegps-jdb macosx linux windows telegps-windows.log \ - telegps-windows.nsi *.desktop + telegps-windows.nsi *.desktop $(MDWN) EXTRA_DIST = $(desktop_file).in @@ -140,6 +140,8 @@ LINUX_DIST=TeleGPS-Linux-$(VERSION).tar.bz2 LINUX_SH=TeleGPS-Linux-$(VERSION).sh MACOSX_DIST=TeleGPS-Mac-$(VERSION).dmg WINDOWS_DIST=TeleGPS-Windows-$(VERSION_DASH).exe +MDWN=$(VERSION).mdwn +MDWNTMPL=mdwn.tmpl TELEGPS_DOC=$(top_srcdir)/doc/telegps.pdf @@ -159,18 +161,17 @@ WINDOWS_FILES=$(FAT_FILES) altos.dll altos64.dll $(top_srcdir)/altusmetrum.inf $ if FATINSTALL -FATTARGET=$(FATDIR)/$(VERSION) +FATTARGET=$(FATDIR)/TeleGPS/releases/$(VERSION) -LINUX_DIST_TARGET=$(FATTARGET)/$(LINUX_DIST) LINUX_SH_TARGET=$(FATTARGET)/$(LINUX_SH) MACOSX_DIST_TARGET=$(FATTARGET)/$(MACOSX_DIST) WINDOWS_DIST_TARGET=$(FATTARGET)/$(WINDOWS_DIST) +MDWN_TARGET=$(FATDIR)/TeleGPS/releases/$(MDWN) +RELNOTES=release-notes-$(VERSION).html +RELNOTES_SRC=$(top_builddir)/doc/$(RELNOTES) +RELNOTES_TARGET=$(FATTARGET)/$(RELNOTES) -fat: $(LINUX_DIST_TARGET) $(LINUX_SH_TARGET) $(MACOSX_DIST_TARGET) $(WINDOWS_DIST_TARGET) - -$(LINUX_DIST_TARGET): $(LINUX_DIST) - mkdir -p $(FATTARGET) - cp -p $< $@ +fat-install: $(LINUX_SH_TARGET) $(MACOSX_DIST_TARGET) $(WINDOWS_DIST_TARGET) $(MDWN_TARGET) $(RELNOTES_TARGET) $(LINUX_SH_TARGET): $(LINUX_SH) mkdir -p $(FATTARGET) @@ -184,10 +185,22 @@ $(WINDOWS_DIST_TARGET): $(WINDOWS_DIST) mkdir -p $(FATTARGET) cp -p $< $@ -else -fat: $(LINUX_DIST) $(LINUX_SH) $(MACOSX_DIST) $(WINDOWS_DIST) +$(MDWN_TARGET): $(MDWN) + mkdir -p $(FATTARGET) + cp -p $< $@ + +$(RELNOTES_TARGET): $(RELNOTES_SRC) + mkdir -p $(FATTARGET) + sh $(top_srcdir)/doc/install-html -d $(FATTARGET) $(RELNOTES_SRC) + endif +$(MDWN): $(MDWNTMPL) + sed -e 's/%version%/$(VERSION)/g' -e 's/%version_dash%/$(VERSION_DASH)/g' $(MDWNTMPL) > $@ + +fat: $(LINUX_DIST) $(LINUX_SH) $(MACOSX_DIST) $(WINDOWS_DIST) + + telegps: Makefile echo "#!/bin/sh" > $@ echo 'exec java -Djava.library.path="$(altoslibdir)" -jar "$(telegpsdir)/telegps.jar" "$$@"' >> $@ diff --git a/telegps/mdwn.tmpl b/telegps/mdwn.tmpl new file mode 100644 index 00000000..05b3e40b --- /dev/null +++ b/telegps/mdwn.tmpl @@ -0,0 +1,7 @@ +[[!inline pages="./%version%/release-notes-%version%.html" rss="no" raw="yes" ]] + +- Available Files: + - [Windows Installer](/TeleGPS/releases/%version%/TeleGPS-Windows-%version_dash%.exe) + - [Mac OS X Package](/TeleGPS/releases/%version%/TeleGPS-Mac-%version%.dmg) + - [Linux](/TeleGPS/releases/%version%/TeleGPS-Linux-%version%.sh) + - [Source Snapshot](http://git.gag.com/?p=fw/altos;a=snapshot;h=refs/tags/%version%;sf=tgz)