summaryrefslogtreecommitdiff
path: root/src/runtime/java/Makefile
diff options
context:
space:
mode:
authorkrasimir <krasimir@chalmers.se>2015-09-03 10:27:50 +0000
committerkrasimir <krasimir@chalmers.se>2015-09-03 10:27:50 +0000
commit7064181860d4ff4848c9632aa8c57ba103127532 (patch)
tree499f242f6e12f1d8c3dcbfcd8ed98cbb8b4ba71a /src/runtime/java/Makefile
parente97e377b055b1532d5cb2fc555b566551d1ed2a3 (diff)
the Eclipse project for the Java binding is now replaced with a simple Makefile
Diffstat (limited to 'src/runtime/java/Makefile')
-rw-r--r--src/runtime/java/Makefile30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/runtime/java/Makefile b/src/runtime/java/Makefile
new file mode 100644
index 000000000..cb8000fd2
--- /dev/null
+++ b/src/runtime/java/Makefile
@@ -0,0 +1,30 @@
+C_SOURCES = jpgf.c jsg.c
+JAVA_SOURCES = $(wildcard org/grammaticalframework/pgf/*.java) \
+ $(wildcard org/grammaticalframework/sg/*.java)
+
+JNI_PATH = /usr/lib/jvm/default-java/include
+INSTALL_PATH = /usr/local/lib
+
+all: libjpgf.la jpgf.jar
+
+libjpgf.la: $(patsubst %.c, %.lo, $(C_SOURCES))
+ libtool --mode=link gcc -g -O -o libjpgf.la -shared $^ -rpath $(INSTALL_PATH) -lgu -lpgf -lsg
+
+%.lo : %.c
+ libtool --mode=compile gcc -g -O -c -I$(JNI_PATH) -std=c99 -shared $< -o $@
+
+jpgf.jar: $(patsubst %.java, %.class, $(JAVA_SOURCES))
+ jar -cf $@ $^
+
+%.class : %.java
+ javac $<
+
+install: libjpgf.la jpgf.jar
+ libtool --mode=install install -s libjpgf.la $(INSTALL_PATH)
+
+clean:
+ rm -f *.lo
+ rm -f *.la
+ rm -f -r .libs
+ rm -f *.jar
+ rm -f org/grammaticalframework/*/*.class