SHARED_FLAGS = -shared
SUFFIX = .so

#SHARED_FLAGS = -dynamiclib -flat_namespace -undefined warning
#SUFFIX = .dylib

all: liblib$(SUFFIX) prog

prog: prog.o
	gcj --main=prog -o $@ -L. -llib $<

prog.o: prog.java
	gcj -c -o $@ $<

liblib$(SUFFIX): lib.o
	gcc $(SHARED_FLAGS) -o $@ $<

lib.o: lib.jar
	gcj -c -o $@ $<

lib.jar: lib.class META-INF META-INF/resource
	jar cf $@ $<

lib.class: lib.java
	gcj -C $<

