micropeak: Create Mac OS X package
[fw/altos] / micropeak / Makefile.am
index 26431bd55db49bcf93738c9b5f644576df1b130a..38945e823302e1f0a3ef58331d95daac58d6733b 100644 (file)
@@ -12,8 +12,11 @@ micropeak_JAVA= \
        MicroData.java \
        MicroDataPoint.java \
        MicroDownload.java \
+       MicroExport.java \
+       MicroFile.java \
        MicroFrame.java \
        MicroGraph.java \
+       MicroRaw.java \
        MicroSave.java \
        MicroSerial.java \
        MicroStats.java \
@@ -42,7 +45,7 @@ ALTOSLIB_CLASS=\
        AltosLib.jar
 
 ALTOSUILIB_CLASS=\
-       AltosUILib.jar
+       altosuilib.jar
 
 # Icons
 ICONDIR=$(top_srcdir)/icon
@@ -65,7 +68,7 @@ ICONJAR= -C $(ICONDIR) micropeak-16.png \
 
 WINDOWS_ICON=$(ICONDIR)/micro-peak.ico
 
-all-local: micropeak-test $(JAR)
+all-local: micropeak-test micropeak-jdb $(JAR)
 
 clean-local:
        -rm -rf classes $(JAR) $(FATJAR) \
@@ -76,7 +79,7 @@ clean-local:
                micropeak micropeak-test macosx linux windows
 
 LINUX_DIST=MicroPeak-Linux-$(VERSION).tar.bz2
-MACOSX_DIST=MicroPeak-Mac-$(VERSION).zip
+MACOSX_DIST=MicroPeak-Mac-$(VERSION).dmg
 WINDOWS_DIST=MicroPeak-Windows-$(VERSION_DASH).exe
 
 FAT_FILES=$(FATJAR) $(ALTOSLIB_CLASS) $(ALTOSUILIB_CLASS) $(FREETTS_CLASS) $(JFREECHART_CLASS) $(JCOMMON_CLASS)
@@ -85,7 +88,8 @@ LINUX_FILES=$(FAT_FILES) libaltos.so $(FIRMWARE) $(DOC)
 LINUX_EXTRA=micropeak-fat
 
 MACOSX_INFO_PLIST=Info.plist
-MACOSX_FILES=$(FAT_FILES) libaltos.dylib $(MACOSX_INFO_PLIST)
+MACOSX_DRIVER=FTDI.tar.gz
+MACOSX_FILES=$(FAT_FILES) libaltos.dylib $(MACOSX_INFO_PLIST) $(MACOSX_DRIVER)
 
 WINDOWS_FILES=$(FAT_FILES) altos.dll altos64.dll $(top_srcdir)/telemetrum.inf $(WINDOWS_ICON)
 
@@ -120,6 +124,11 @@ micropeak: Makefile
        echo 'exec java  -cp "$(JCOMMON)/jcommon.jar:$(JFREECHART)/jfreechart.jar" -Djava.library.path="$(altoslibdir)" -jar "$(micropeakdir)/micropeak.jar" "$$@"' >> $@
        chmod +x $@
 
+micropeak-jdb: Makefile
+       echo "#!/bin/sh" > $@
+       echo 'exec jdb -classpath "classes:./*:../libaltos:$(JCOMMON)/jcommon.jar:$(JFREECHART)/jfreechart.jar" -Djava.library.path="../libaltos/.libs" org.altusmetrum.micropeak.MicroPeak "$$@"' >> $@
+       chmod +x $@
+
 micropeak-test: Makefile
        echo "#!/bin/sh" > $@
        echo 'exec java -cp "./*:../libaltos/*:$(JCOMMON)/jcommon.jar:$(JFREECHART)/jfreechart.jar" -Djava.library.path="../libaltos/.libs" -jar micropeak.jar "$$@"' >> $@
@@ -204,14 +213,15 @@ $(MACOSX_DIST): $(MACOSX_FILES)
        mkdir macosx
        cp -a MicroPeak.app macosx/
        cp -p Info.plist macosx/MicroPeak.app/Contents
-       mkdir -p macosx/MicroPeak macosx/MicroPeak.app/Contents/Resources/Java
+       tar xzf $(MACOSX_DRIVER) -C macosx
+       mkdir -p macosx/MicroPeak.app/Contents/Resources/Java
        cp -p $(FATJAR) macosx/MicroPeak.app/Contents/Resources/Java/micropeak.jar
        cp -p libaltos.dylib macosx/MicroPeak.app/Contents/Resources/Java
        cp -p $(ALTOSLIB_CLASS) macosx/MicroPeak.app/Contents/Resources/Java
        cp -p $(ALTOSUILIB_CLASS) macosx/MicroPeak.app/Contents/Resources/Java
        cp -p $(JFREECHART_CLASS) macosx/MicroPeak.app/Contents/Resources/Java
        cp -p $(JCOMMON_CLASS) macosx/MicroPeak.app/Contents/Resources/Java
-       cd macosx && zip -r ../$@ MicroPeak.app MicroPeak
+       genisoimage -D -V MicroPeak-$(VERSION) -no-pad -r -apple -o $@ macosx
 
 $(WINDOWS_DIST): $(WINDOWS_FILES) micropeak-windows.nsi
        -rm -f $@
@@ -219,9 +229,9 @@ $(WINDOWS_DIST): $(WINDOWS_FILES) micropeak-windows.nsi
 
 Manifest.txt: Makefile
        echo 'Main-Class: org.altusmetrum.micropeak.MicroPeak' > $@
-       echo "Class-Path: AltosLib.jar AltosUILib.jar $(JCOMMON)/jcommon.jar $(JFREECHART)/jfreechart.jar" >> $@
+       echo "Class-Path: $(ALTOSLIB_CLASS) $(ALTOSUILIB_CLASS) $(JCOMMON)/jcommon.jar $(JFREECHART)/jfreechart.jar" >> $@
 
 Manifest-fat.txt:
        echo 'Main-Class: org.altusmetrum.micropeak.MicroPeak' > $@
-       echo "Class-Path: AltosLib.jar AltosUILib.jar jcommon.jar jfreechart.jar" >> $@
+       echo "Class-Path: $(ALTOSLIB_CLASS) $(ALTOSUILIB_CLASS) jcommon.jar jfreechart.jar" >> $@