TARGET = libcinvoke_java.so

all: $(TARGET)
	javac org/cinvoke/*.java

SRCS = org_cinvoke_Natives.cpp
OBJS = $(SRCS:.cpp=.o)

$(TARGET): $(OBJS)
	g++ -shared -o $(TARGET) $(OBJS) -lcinvoke

.cpp.o:
	g++ -Wall -Werror -c $<

org_cinvoke_Natives.o: org_cinvoke_Natives.cpp org_cinvoke_Natives.h

header:
	javah org.cinvoke.Natives

clean:
	rm -f org/cinvoke/*.class *.class *.o *.so

test:
	javac Test.java
	LD_LIBRARY_PATH=. java Test

doc:
	rm -rf javadoc
	javadoc -d javadoc -windowtitle "C/Invoke Java Binding" org/cinvoke/*.java

jar: all
	jar -c -f cinvoke_java.jar org/cinvoke/*.class

