Clean up altosui build a bit
[fw/altos] / ao-tools / altosui / Makefile
index 57c889b8d37c3d1c335221791289b65178d2bdc5..aa0278a824d24183a12765eec6d5a3f7325362a5 100644 (file)
@@ -1,6 +1,6 @@
 .SUFFIXES: .java .class
 
-CLASSPATH=..:/usr/share/java/*:/home/keithp/src/freetts/freetts-1.2.2
+CLASSPATH=classes:./*
 CLASSFILES=\
        AltosConvert.class \
        AltosFile.class \
@@ -15,24 +15,45 @@ CLASSFILES=\
        AltosTelemetry.class \
        AltosUI.class \
        AltosDevice.class \
-       AltosDeviceLinux.class \
        AltosDeviceDialog.class \
        AltosVoice.class
 
+FREETTSSRC=/home/keithp/src/freetts/freetts-1.2.2
+FREETTSLIB=$(FREETTSSRC)/lib
+FREETTSJAR= \
+       cmudict04.jar \
+       cmulex.jar \
+       cmu_time_awb.jar \
+       cmutimelex.jar \
+       cmu_us_kal.jar \
+       en_us.jar \
+       freetts.jar \
+       freetts-jsapi10.jar \
+       jsapi.jar
+
 JAVAFLAGS=-Xlint:unchecked
 
-all: $(CLASSFILES) altosui altosui.jar
+all: altosui.jar
+
+$(CLASSFILES): classes/altosui classes/libaltosJNI $(FREETTSJAR)
 
 .java.class:
        javac -cp "$(CLASSPATH)" $(JAVAFLAGS) $*.java
 
-altosui: Makefile
-       (echo '#!/bin/sh'; \
-       echo exec java -cp '"$(CLASSPATH)"' altosui/AltosUI) > $@
-       chmod +x $@
-
 altosui.jar: $(CLASSFILES) Manifest.txt
-       cd .. && jar cfm altosui/$@ altosui/Manifest.txt altosui/*.class
+       cd ./classes && jar cfm ../$@ altosui/Manifest.txt altosui/*.class libaltosJNI/*.class
+
+classes/altosui:
+       mkdir -p classes
+       ln -s .. classes/altosui
+
+classes/libaltosJNI:
+       mkdir -p classes
+       ln -s ../../libaltos/libaltosJNI classes/libaltosJNI
+
+$(FREETTSJAR):
+       ln -s $(FREETTSLIB)/$@ .
 
 clean:
-       rm -f *.class
+       rm -f *.class $(FREETTSJAR) altosui.jar
+       rm -rf classes