LDFLAGS.so = -shared
JAVAC = javac
-JAVAFLAGS = -d .
+JAVAFLAGS =
SCALAC = fsc
-SCALAFLAGS = -d . -optimise
+SCALAFLAGS = -optimise
all::
.PHONY: 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)
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