Bump version number
[platform/upstream/libsecret.git] / library / tests / Makefile.am
1 include $(top_srcdir)/Makefile.decl
2
3 INCLUDES = \
4         -I$(top_srcdir) \
5         -I$(top_srcdir)/library \
6         -DSRCDIR="\"@abs_srcdir@\"" \
7         -DSECRET_COMPILATION \
8         $(NULL)
9
10 noinst_LTLIBRARIES = libmock_service.la
11
12 libmock_service_la_SOURCES = \
13         mock-service.c \
14         mock-service.h \
15         $(NULL)
16
17 libmock_service_la_CFLAGS = \
18         $(LIBGCRYPT_CFLAGS)
19
20 libmock_service_la_LDFLAGS = \
21         -rpath /force/shared
22
23 libmock_service_la_LIBADD = \
24         $(top_builddir)/egg/libegg.la \
25         $(top_builddir)/library/libsecret-@SECRET_MAJOR@.la \
26         $(LIBGCRYPT_LIBS)
27
28 LDADD =  \
29         $(top_builddir)/egg/libegg.la \
30         $(top_builddir)/library/libsecret-@SECRET_MAJOR@.la \
31         libmock_service.la \
32         $(NULL)
33
34 C_TESTS = \
35         test-value \
36         test-prompt \
37         test-service \
38         test-session \
39         test-paths \
40         test-methods \
41         test-password \
42         test-item \
43         test-collection \
44         $(NULL)
45
46 TEST_PROGS = \
47         $(C_TESTS) \
48         $(NULL)
49
50 check_PROGRAMS = \
51         $(TEST_PROGS)
52
53 noinst_PROGRAMS =  \
54         $(NULL)
55
56 JS_TESTS = \
57         test-lookup-password.js \
58         test-remove-password.js \
59         test-store-password.js
60
61 JS_ENV = \
62         LD_LIBRARY_PATH=$(builddir)/../.libs:$(builddir)/.libs \
63         GI_TYPELIB_PATH=$(builddir)/..:$(builddir)
64
65 PY_TESTS = \
66         test-lookup-password.py \
67         test-remove-password.py \
68         test-store-password.py
69
70 PY_ENV = $(JS_ENV)
71
72 if HAVE_VALAC
73
74 VALA_V = $(VALA_V_$(V))
75 VALA_V_ = $(VALA_V_$(AM_DEFAULT_VERBOSITY))
76 VALA_V_0 = @echo "  VALAC " $^;
77
78 if HAVE_INTROSPECTION
79 if ENABLE_VAPIGEN
80
81 VALA_TESTS = \
82         test-vala-lang \
83         $(NULL)
84
85 endif
86 endif
87
88 test-vala-lang.c: test-vala-lang.vala libsecret-@SECRET_MAJOR@.vapi mock-service-0.vapi
89         $(VALA_V)$(VALAC) -C --pkg gio-2.0 $^
90
91 TEST_PROGS += $(VALA_TESTS)
92
93 test_vala_lang_CFLAGS = -w
94
95 DISTCLEANFILES = test-vala-lang.c
96
97 test-vala: $(VALA_TESTS)
98         @gtester --verbose -m $(TEST_MODE) --g-fatal-warnings $(VALA_TESTS)
99
100 else
101
102 test-vala:
103
104 endif # HAVE_VALAC
105
106 test-c: $(C_TESTS)
107         @gtester --verbose -m $(TEST_MODE) --g-fatal-warnings $(C_TESTS)
108
109 test-js:
110         @for js in $(JS_TESTS); do echo "TEST: $$js"; $(JS_ENV) gjs $(srcdir)/$$js; done
111
112 test-py:
113         @for py in $(PY_TESTS); do echo "TEST: $$py"; $(PY_ENV) python $(srcdir)/$$py; done
114
115 test: test-c test-py test-js test-vala
116
117 # ------------------------------------------------------------------
118 # INTROSPECTION
119
120 if HAVE_INTROSPECTION
121
122 include $(INTROSPECTION_MAKEFILE)
123
124 INTROSPECTION_GIRS = MockService-0.gir
125 INTROSPECTION_SCANNER_ARGS = $(INTROSPECTION_FLAGS) --warn-all --add-include-path=$(srcdir) --add-include-path=.
126 INTROSPECTION_COMPILER_ARGS = --includedir=$(srcdir) --includedir=.
127
128 MockService-0.gir: libmock_service.la
129
130 MockService_0_gir_PACKAGES = gobject-2.0 gio-2.0
131 MockService_0_gir_EXPORT_PACKAGES = mock-service-0
132 MockService_0_gir_INCLUDES = GObject-2.0 Gio-2.0
133 MockService_0_gir_LIBS = libmock_service.la
134 MockService_0_gir_CFLAGS = -I$(top_srcdir) -I$(top_builddir) -I$(srcdir)
135 MockService_0_gir_FILES = $(libmock_service_la_SOURCES)
136 MockService_0_gir_SCANNERFLAGS = --c-include "mock-service.h"
137
138 noinst_DATA = \
139         $(INTROSPECTION_GIRS) \
140         $(INTROSPECTION_GIRS:.gir=.typelib)
141
142 if ENABLE_VAPIGEN
143 include $(VAPIGEN_MAKEFILE)
144
145 mock-service-0.vapi: MockService-0.gir libsecret-@SECRET_MAJOR@.vapi
146
147 VAPIGEN_VAPIS = mock-service-0.vapi
148
149 mock_service_0_vapi_DEPS = gio-2.0 libsecret-@SECRET_MAJOR@
150 mock_service_0_vapi_METADATADIRS = $(builddir)
151 mock_service_0_vapi_VAPIDIRS = $(builddir)
152 mock_service_0_vapi_FILES = MockService-0.gir
153
154 vapidir = $(datadir)/vala/vapi
155 vapi_DATA = mock-service-0.vapi
156
157 # We have to make a version of the VAPI which references the
158 # uninstalled C headers.
159
160 VAPIGEN_VAPIS += libsecret-@SECRET_MAJOR@.vapi
161
162 Secret-@SECRET_MAJOR@.metadata: $(top_srcdir)/library/Secret-@SECRET_MAJOR@.metadata
163         $(AM_V_GEN) echo "* cheader_filename=\"secret-collection.h,secret-item.h,secret-password.h,secret-prompt.h,secret-schema.h,secret-schemas.h,secret-service.h,secret-types.h,secret-value.h\"" > $@ && \
164         cat < $^ >> $@
165
166 libsecret-@SECRET_MAJOR@.vapi: Secret-@SECRET_MAJOR@.metadata $(top_builddir)/library/Secret-@SECRET_MAJOR@.gir
167
168 libsecret_@SECRET_MAJOR@_vapi_DEPS = gio-2.0
169 libsecret_@SECRET_MAJOR@_vapi_METADATADIRS = $(srcdir)
170 libsecret_@SECRET_MAJOR@_vapi_FILES = $(top_builddir)/library/Secret-@SECRET_MAJOR@.gir
171
172 noinst_DATA += $(VAPIGEN_VAPIS)
173
174 endif # ENABLE_VAPIGEN
175 endif # HAVE_INTROSPECTION
176
177 #--------------------------------------------------------------------
178
179 EXTRA_DIST = \
180         mock \
181         mock-service-delete.py \
182         mock-service-lock.py \
183         mock-service-normal.py \
184         mock-service-only-plain.py \
185         mock-service-prompt.py \
186         Secret-@SECRET_MAJOR@.metadata \
187         test-vala-lang.vala \
188         $(JS_TESTS) \
189         $(PY_TESTS) \
190         $(NULL)
191
192 CLEANFILES = \
193         $(noinst_DATA) \
194         $(NULL)
195
196 all-local: $(check_PROGRAMS)
197
198 check-local: test
199
200 check-memory: perform-memcheck
201
202 .PHONY: check-memory