summaryrefslogtreecommitdiff
path: root/src/bindings/Makefile.am
blob: f9420dbdb8cf7a4e7064b5b93496e647d7b8c6cb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
# LIBCVC4BINDINGS_VERSION (-version-info) is in the form current:revision:age
#
# current -
#   increment if interfaces have been added, removed or changed
# revision -
#   increment if source code has changed
#   set to zero if current is incremented
# age -
#   increment if interfaces have been added
#   set to zero if interfaces have been removed
#   or changed
#
LIBCVC4BINDINGS_VERSION = @CVC4_BINDINGS_LIBRARY_VERSION@

AM_CPPFLAGS = \
	-D__BUILDING_CVC4BINDINGSLIB \
	-I@srcdir@/../include -I@srcdir@/.. -I@builddir@/..
AM_CXXFLAGS = -Wall

SUBDIRS = . compat

lib_LTLIBRARIES =
data_DATA =
if CVC4_LANGUAGE_BINDING_JAVA
lib_LTLIBRARIES += libcvc4bindings_java.la
data_DATA += cvc4.jar
libcvc4bindings_java_la_LDFLAGS = \
	-version-info $(LIBCVC4BINDINGS_VERSION)
libcvc4bindings_java_la_LIBADD = \
	-L@builddir@/.. -lcvc4 \
	-L@builddir@/../parser -lcvc4parser
endif
#	cvc4bindings_csharp.so \
#	cvc4bindings_perl.so \
#	cvc4bindings_php.so \
#	cvc4bindings_python.so \
#	cvc4bindings_ocaml.so \
#	cvc4bindings_ruby.so \
#	cvc4bindings_tcl.so

nodist_libcvc4bindings_java_la_SOURCES = java.cpp
libcvc4bindings_java_la_CXXFLAGS = -fno-strict-aliasing
nodist_libcvc4bindings_csharp_la_SOURCES = csharp.cpp
nodist_libcvc4bindings_perl_la_SOURCES = perl.cpp
nodist_libcvc4bindings_php_la_SOURCES = php.cpp
nodist_libcvc4bindings_python_la_SOURCES = python.cpp
nodist_libcvc4bindings_ocaml_la_SOURCES = ocaml.cpp
nodist_libcvc4bindings_ruby_la_SOURCES = ruby.cpp
nodist_libcvc4bindings_tcl_la_SOURCES = tcl.cpp

CLEANFILES = \
	java.cpp \
	csharp.cpp \
	perl.cpp \
	php.cpp \
	python.cpp \
	ocaml.cpp \
	ruby.cpp \
	tcl.cpp

EXTRA_DIST = swig.h

MOSTLYCLEANFILES = \
        .swig_deps \
	$(patsubst %,%.d,$(filter-out c c++,$(CVC4_LANGUAGE_BINDINGS))) \
	cvc4.jar

java.lo: java.cpp
	$(AM_V_CXX)$(LTCXXCOMPILE) -c $(JAVA_INCLUDES) -o $@ $<
cvc4.jar: java.cpp
	$(AM_V_GEN) \
	(cd java; \
	rm -fr classes; \
	mkdir -p classes; \
	$(JAVAC) -classpath . -d classes `find . -name '*.java'`; \
	cd classes); \
	$(JAR) cf $@ -C java/classes .
java.cpp:
csharp.cpp:
perl.cpp:
php.cpp:
python.cpp:
ocaml.cpp:
ruby.cpp:
tcl.cpp:
$(patsubst %,%.cpp,$(filter-out c c++,$(CVC4_LANGUAGE_BINDINGS))): %.cpp: @srcdir@/../cvc4.i
	$(AM_V_at)mkdir -p $(patsubst %.cpp,%,$@)
	$(AM_V_GEN)$(SWIG) -Wall -I@srcdir@/../include -I@srcdir@/.. -I@builddir@/.. -c++ -$(patsubst %.cpp,%,$@) -outdir $(patsubst %.cpp,%,$@) -package edu.nyu.acsys.CVC4 -o $@ $<

$(patsubst %,%.d,$(filter-out c c++,$(CVC4_LANGUAGE_BINDINGS))): %.d: @srcdir@/../cvc4.i
	$(AM_V_GEN)$(SWIG) -I@srcdir@/../include -I@srcdir@/.. -I@builddir@/.. -c++ -MM -o $(patsubst %.d,%.cpp,$@) $<
# .PHONY so they get rebuilt each time
.PHONY: .swig_deps $(patsubst %,%.d,$(filter-out c c++,$(CVC4_LANGUAGE_BINDINGS)))
.swig_deps: $(patsubst %,%.d,$(filter-out c c++,$(CVC4_LANGUAGE_BINDINGS)))
	$(AM_V_GEN)cat $+ </dev/null >$@
@mk_include@ .swig_deps

clean-local:; rm -fr $(patsubst %.cpp,%,$(filter-out c c++,$(CVC4_LANGUAGE_BINDINGS)))
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback