1include $(top_srcdir)/common.mk
2
3# Initializations.
4
5CLEANFILES = $(wildcard gw-test-*.c gw-test-*.h gw-test-*.scm)
6noinst_HEADERS =
7check_LTLIBRARIES =
8EXTRA_DIST = unit-test.scm
9
10TESTS = \
11 test-standard \
12 test-enumeration \
13 test-wct \
14 test-compat
15TESTS_ENVIRONMENT = builddir=$(top_builddir)/guile/test
16
17check_SCRIPTS = $(TESTS)
18
19EXTRA_DIST += ${check_SCRIPTS}
20
21GUILE_FLAGS =
22
23LOCALPWD = $(shell pwd)
24
25EXTRA_DIST += $(wildcard $(srcdir)/*-spec.scm)
26
27std_libs = $(top_builddir)/test/libg-wrap-test-c-code.la \
28	   ../g-wrap/libgwrap-guile-runtime.la \
29	   $(top_builddir)/g-wrap/libgwrap-core-runtime.la \
30	   $(GUILE_LDFLAGS)
31
32# ===========================================================================
33
34AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/guile
35AM_CFLAGS = $(GUILE_CFLAGS) $(LIBFFI_CFLAGS)
36
37check_LTLIBRARIES += libg-wrap-guile-test-c-code.la
38libg_wrap_guile_test_c_code_la_SOURCES = guile-test-c-code.c guile-test-c-code.h
39libg_wrap_guile_test_c_code_la_LDFLAGS = -rpath $(libdir)
40libg_wrap_guile_test_c_code_la_LIBADD = $(std_libs)
41
42# ======================================================================
43# gw-test-standard
44
45check_LTLIBRARIES += libgw-guile-test-standard.la
46nodist_libgw_guile_test_standard_la_SOURCES = gw-test-standard.c
47libgw_guile_test_standard_la_LDFLAGS = -rpath @libdir@ -module
48libgw_guile_test_standard_la_LIBADD = libg-wrap-guile-test-c-code.la $(std_libs)
49
50# ======================================================================
51# gw-test-enumeration
52
53check_LTLIBRARIES += libgw-guile-test-enumeration.la
54nodist_libgw_guile_test_enumeration_la_SOURCES = gw-test-enumeration.c
55libgw_guile_test_enumeration_la_LDFLAGS = -rpath @libdir@ -module
56libgw_guile_test_enumeration_la_LIBADD = $(std_libs)
57
58# # ======================================================================
59# # gw-test-parent
60
61check_LTLIBRARIES += libgw-guile-test-parent.la
62nodist_libgw_guile_test_parent_la_SOURCES = gw-test-parent.c
63libgw_guile_test_parent_la_LDFLAGS = -rpath @libdir@ -module
64libgw_guile_test_parent_la_LIBADD = $(std_libs)
65
66# # ======================================================================
67# # gw-test-child
68
69check_LTLIBRARIES += libgw-guile-test-child.la
70nodist_libgw_guile_test_child_la_SOURCES = gw-test-child.c
71libgw_guile_test_child_la_LDFLAGS = -rpath @libdir@ -module
72libgw_guile_test_child_la_LIBADD = $(std_libs)
73
74
75# # ======================================================================
76# # gw-test-aggregating
77
78check_LTLIBRARIES += libgw-guile-test-aggregating.la
79nodist_libgw_guile_test_aggregating_la_SOURCES = gw-test-aggregating.c
80libgw_guile_test_aggregating_la_LDFLAGS = -rpath @libdir@ -module
81libgw_guile_test_aggregating_la_LIBADD = $(std_libs)
82
83
84# # ======================================================================
85# # gw-test-compat
86
87check_LTLIBRARIES += libgw-test-compat.la
88nodist_libgw_test_compat_la_SOURCES = gw-test-compat.c
89libgw_test_compat_la_LDFLAGS = -rpath @libdir@ -module
90libgw_test_compat_la_LIBADD = $(std_libs)
91
92# # ======================================================================
93# # Additional rules
94
95gw-test-%.c gw-test-%.scm: guile-test-%-spec.scm $(top_srcdir)/test/test-%-spec.scm
96	LD_LIBRARY_PATH=${LOCALPWD}/..:${LD_LIBRARY_PATH} \
97	$(GUILE) $(GUILE_FLAGS) -c  \
98	  ${SETGWPATH}" \
99	  (use-modules (g-wrap)) \
100	  (use-modules (guile test guile-test-$*-spec)) \
101	  (generate-wrapset 'guile 'test-$* \"gw-test-$*\")"
102
103gw-test-compat.c gw-test-compat.scm: guile-test-compat-spec.scm
104	LD_LIBRARY_PATH=${LOCALPWD}/..:${LD_LIBRARY_PATH} \
105	$(GUILE) $(GUILE_FLAGS) -c  \
106	  ${SETGWPATH}" \
107	  (use-modules (g-wrap compat)) \
108	  (use-modules (guile test guile-test-compat-spec)) \
109	  (gw:generate-wrapset \"gw-test-compat\")"
110
111.PHONY: ${TESTS}
112