Ocaml <-> C++ binding
[tatoo.git] / src / bindings / c++ / Makefile
1 CXX = g++
2
3 all: tatoo-c++
4
5 tatoo-engine.o: tatoo-engine.cc tatoo.h
6         $(CXX) -I `ocamlc -where` `pkg-config libxml-2.0 --cflags` -DNDEBUG -fPIC \
7             -DPIC -std=c++0x -c -O3 -o $@ $< -Wall -Wextra -Wno-unused-parameter
8
9 tatoo-c++: tatoo-engine.o tatoo-driver.o
10         $(CXX) -o $@ -O3 tatoo-driver.o tatoo-engine.o -ldl -lrt `pkg-config libxml-2.0 --libs` \
11             -L`ocamlc -where` -lasmrun -lunix -lbigarray
12
13 tatoo_driver.depx tatoo_driver.cmx: tatoo_driver.ml
14         ../../../remake $@
15
16 tatoo-driver.o: tatoo_driver.cmx tatoo_driver.depx 
17         ocamlfind ocamlopt -output-obj -o $@  -I ../.. -cc $(CXX) -linkall -linkpkg -package bigarray,ulex,unix $(shell cat tatoo_driver.depx | sed -e 's:src:../..:g' | sed -e 's:depx:cmx:g' ) $<
18
19 test: TatooTest.class libtatoo-java.so
20         java -cp . -Xss80m  -Djava.library.path=. TatooTest ../../../tests/xmark_0.50.xml '/descendant::keyword[ancestor::listitem]/*'
21
22 clean:
23         rm -f *.cm* *.depx *.o TatooTest.class tatoo-c++