admin.scala: Start on understanding the administration protocol.
[tripe-android] / Makefile
index 0687ba2..cd8e4a4 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -17,10 +17,10 @@ LD                   = gcc
 LDFLAGS.so              = -shared
 
 JAVAC                   = javac
-JAVAFLAGS               = -d .
+JAVAFLAGS               =
 
 SCALAC                  = fsc
-SCALAFLAGS              = -d . -optimise
+SCALAFLAGS              = -optimise
 
 all::
 .PHONY: all
@@ -29,11 +29,17 @@ all::
        $(call v_tag,CC)$(CC) -c $(CFLAGS) -MMD -o$@ $<
 CLEANFILES             += *.o *.d
 
+CLASSDIR                = cls/
 %.stamp: %.java
-       $(call v_tag,JAVAC)$(JAVAC) $(JAVAFLAGS) $< && echo built >$@
+       $(call v_tag,JAVAC)mkdir -p $(CLASSDIR) && \
+               $(JAVAC) -d $(CLASSDIR) -cp $(CLASSDIR) $(JAVAFLAGS) $< && \
+               echo built >$@
 %.stamp: %.scala
-       $(call v_tag,SCALAC)$(SCALAC) $(SCALAFLAGS) $< && echo built >$@
+       $(call v_tag,SCALAC)mkdir -p $(CLASSDIR) && \
+               $(SCALAC) -d $(CLASSDIR) -cp $(CLASSDIR) $(SCALAFLAGS) $< && \
+               echo built >$@
 CLEANFILES             += *.stamp
+clean::; rm -rf $(CLASSDIR)
 
 objects                         = $(patsubst %.c,%$2,$1)
 
@@ -42,13 +48,13 @@ libtoy.so_SOURCES    = jni.c
 libtoy.so: $(call objects,$(libtoy.so_SOURCES),.o)
        $(call v_tag,LD)$(LD) $(LDFLAGS.so) -o$@ $^
 
-clean::; rm -rf uk/
-
 TARGETS                        += jni.stamp
 
 TARGETS                        += sock.stamp
 sock.stamp: jni.stamp
 
+TARGETS                        += admin.stamp
+
 TARGETS                        += main.stamp
 main.stamp: jni.stamp sock.stamp