split up tests and reworked code to use the new test framework.
[platform/upstream/glib.git] / tests / Makefile.am
1 include $(top_srcdir)/Makefile.decl
2
3 SUBDIRS=gobject refcount
4
5 if ENABLE_REGEX
6 enable_regex = -DENABLE_REGEX
7 else
8 enable_regex =
9 endif
10
11 AM_CPPFLAGS =                           \
12         -I$(top_srcdir)                 \
13         -I$(top_srcdir)/glib            \
14         -I$(top_srcdir)/gmodule         \
15         $(GLIB_DEBUG_FLAGS)             \
16         $(enable_regex)
17
18 AM_CFLAGS = -g
19
20 EFENCE=
21
22 libglib = $(top_builddir)/glib/libglib-2.0.la
23 libgthread = $(top_builddir)/gthread/libgthread-2.0.la
24 libgmodule = $(top_builddir)/gmodule/libgmodule-2.0.la
25 libgobject = $(top_builddir)/gobject/libgobject-2.0.la
26
27 libadd_libgmodule = $(libgmodule)
28 libadd_libglib = $(libglib)
29 if PLATFORM_WIN32
30 no_undefined = -no-undefined
31
32 module_test_exp = module-test.exp
33
34 module-test.exp: module-test.o
35         dlltool --output-exp module-test.exp module-test.o
36
37 spawn_test_win32_gui = spawn-test-win32-gui
38
39 spawn_test_win32_gui_LDFLAGS = -mwindows
40
41 endif
42
43 EXTRA_DIST +=                                   \
44         $(test_scripts)                         \
45         makefile.msc.in                         \
46         casefold.txt                            \
47         casemap.txt                             \
48         gen-casefold-txt.pl                     \
49         gen-casemap-txt.pl                      \
50         iochannel-test-infile                   \
51         utf8.txt                                \
52         timeloop-basic.c                
53
54 BUILT_EXTRA_DIST =                              \
55         makefile.msc
56
57 if HAVE_CXX
58 CXX_TEST = cxx-test
59 cxx_test_LDADD = $(progs_ldadd)
60 cxx_test_SOURCES = cxx-test.C
61 else
62 CXX_TEST =
63 endif
64
65 if ENABLE_TIMELOOP
66 timeloop = timeloop timeloop-closure
67 endif
68 noinst_PROGRAMS = $(TEST_PROGS) \
69         testgdate               \
70         testgdateparser         \
71         unicode-normalize       \
72         unicode-collate         \
73         $(timeloop)             \
74         errorcheck-mutex-test
75
76 TEST_PROGS              += scannerapi
77 scannerapi_SOURCES       = scannerapi.c
78 scannerapi_LDADD         = $(progs_ldadd)
79 TEST_PROGS              += testglib
80 testglib_LDADD           = $(libglib)
81
82
83 patterntest_LDADD = $(libglib)
84 testgdate_LDADD = $(libglib)
85 testgdateparser_LDADD = $(libglib)
86 unicode_normalize_LDADD = $(libglib)
87 errorcheck_mutex_test_LDADD = $(libglib) $(libgthread) $(G_THREAD_LIBS) 
88 if ENABLE_TIMELOOP
89 timeloop_LDADD = $(libglib)
90 timeloop_closure_LDADD = $(libglib) $(libgobject)
91 endif
92
93 test_programs =                                 \
94         atomic-test                             \
95         array-test                              \
96         base64-test                             \
97         bit-test                                \
98         $(CXX_TEST)                             \
99         checksum-test                           \
100         child-test                              \
101         completion-test                         \
102         convert-test                            \
103         date-test                               \
104         dirname-test                            \
105         file-test                               \
106         env-test                                \
107         gio-test                                \
108         hash-test                               \
109         iochannel-test                          \
110         keyfile-test                            \
111         list-test                               \
112         mainloop-test                           \
113         mapping-test                            \
114         markup-collect                          \
115         markup-escape-test                      \
116         module-test                             \
117         node-test                               \
118         onceinit                                \
119         option-test                             \
120         patterntest                             \
121         printf-test                             \
122         queue-test                              \
123         asyncqueue-test                         \
124         qsort-test                              \
125         rand-test                               \
126         relation-test                           \
127         sequence-test                           \
128         shell-test                              \
129         slist-test                              \
130         slice-test                              \
131         slice-color                             \
132         slice-concurrent                        \
133         slice-threadinit                        \
134         spawn-test                              \
135         $(spawn_test_win32_gui)                 \
136         strfunc-test                            \
137         string-test                             \
138         strtod-test                             \
139         strtoll-test                            \
140         thread-test                             \
141         threadpool-test                         \
142         tree-test                               \
143         type-test                               \
144         unicode-caseconv                        \
145         unicode-encoding                        \
146         utf8-validate                           \
147         utf8-pointer                            \
148         uri-test                                \
149         regex-test
150
151 test_scripts = run-markup-tests.sh run-collate-tests.sh run-bookmark-test.sh
152
153 test_script_support_programs = markup-test unicode-collate bookmarkfile-test
154
155 check_PROGRAMS = $(test_programs) $(test_script_support_programs)
156
157 TESTS = $(test_programs) $(test_scripts)
158 TESTS_ENVIRONMENT = srcdir=$(srcdir) \
159         LIBCHARSET_ALIAS_DIR=$(top_builddir)/glib/libcharset \
160         MALLOC_CHECK_=2 \
161         MALLOC_PERTURB_=$$(($${RANDOM:-256} % 256))
162
163 progs_ldadd = $(EFENCE) $(libglib) $(EFENCE)
164 thread_ldadd = $(libgthread) $(G_THREAD_LIBS) $(progs_ldadd)
165 module_ldadd = $(libgmodule) $(G_MODULE_LIBS) $(progs_ldadd)
166
167 atomic_test_LDADD = $(progs_ldadd)
168 array_test_LDADD = $(progs_ldadd)
169 base64_test_LDADD = $(progs_ldadd)
170 bit_test_LDADD = $(progs_ldadd)
171 bookmarkfile_test_LDADD = $(progs_ldadd)
172 checksum_test_LDADD = $(progs_ldadd)
173 child_test_LDADD = $(thread_ldadd)
174 completion_test_LDADD = $(progs_ldadd)
175 convert_test_LDADD = $(progs_ldadd)
176 date_test_LDADD = $(progs_ldadd)
177 dirname_test_LDADD = $(progs_ldadd)
178 file_test_LDADD = $(progs_ldadd)
179 env_test_LDADD = $(progs_ldadd)
180 gio_test_LDADD = $(progs_ldadd)
181 hash_test_LDADD = $(progs_ldadd)
182 iochannel_test_LDADD = $(progs_ldadd)
183 keyfile_test_LDADD = $(progs_ldadd)
184 list_test_LDADD = $(progs_ldadd)
185 mainloop_test_LDADD = $(thread_ldadd)
186 markup_test_LDADD = $(progs_ldadd)
187 mapping_test_LDADD = $(progs_ldadd)
188 markup_escape_test_LDADD = $(progs_ldadd)
189 module_test_LDADD = $(module_ldadd) $(module_test_exp)
190 module_test_LDFLAGS = $(G_MODULE_LDFLAGS)
191 node_test_LDADD = $(progs_ldadd)
192 onceinit_LDADD = $(thread_ldadd)
193 option_test_LDADD = $(progs_ldadd)
194 printf_test_LDADD = $(progs_ldadd)
195 queue_test_LDADD = $(progs_ldadd)
196 asyncqueue_test_LDADD = $(thread_ldadd)
197 qsort_test_LDADD = $(progs_ldadd)
198 rand_test_LDADD = $(progs_ldadd)
199 relation_test_LDADD = $(progs_ldadd)
200 sequence_test_LDADD = $(progs_ldadd)
201 shell_test_LDADD = $(progs_ldadd)
202 slist_test_LDADD = $(progs_ldadd)
203 slice_test_SOURCES = slice-test.c memchunks.c
204 slice_test_LDADD = $(thread_ldadd)
205 slice_color_SOURCES = slice-color.c memchunks.c
206 slice_color_LDADD = $(thread_ldadd)
207 slice_concurrent_SOURCES = slice-concurrent.c
208 slice_concurrent_LDADD = $(thread_ldadd)
209 slice_threadinit_SOURCES = slice-threadinit.c
210 slice_threadinit_LDADD = $(thread_ldadd)
211 spawn_test_LDADD = $(progs_ldadd)
212 strfunc_test_LDADD = $(progs_ldadd)
213 string_test_LDADD = $(progs_ldadd)
214 strtod_test_LDADD = $(progs_ldadd) -lm
215 strtoll_test_LDADD = $(progs_ldadd) -lm
216 thread_test_LDADD = $(thread_ldadd)
217 threadpool_test_LDADD = $(thread_ldadd)
218 tree_test_LDADD = $(progs_ldadd)
219 type_test_LDADD = $(progs_ldadd)
220 unicode_encoding_LDADD = $(progs_ldadd)
221 unicode_caseconv_LDADD = $(progs_ldadd)
222 unicode_collate_LDADD = $(progs_ldadd)
223 utf8_validate_LDADD = $(progs_ldadd)
224 utf8_pointer_LDADD = $(progs_ldadd)
225 uri_test_LDADD = $(progs_ldadd)
226 regex_test_LDADD = $(progs_ldadd)
227 markup_collect_LDADD = $(progs_ldadd)
228
229 lib_LTLIBRARIES = libmoduletestplugin_a.la libmoduletestplugin_b.la
230
231 # Prevent those libs from being installed
232 install-libLTLIBRARIES:
233         :
234
235 libmoduletestplugin_a_la_SOURCES = libmoduletestplugin_a.c
236 libmoduletestplugin_a_la_LDFLAGS = $(G_MODULE_LDFLAGS) -avoid-version -module $(no_undefined) -rpath $(libdir)
237 libmoduletestplugin_a_la_LIBADD = $(G_MODULE_LIBS) $(libadd_libgmodule) $(libadd_libglib)
238
239 libmoduletestplugin_b_la_SOURCES = libmoduletestplugin_b.c
240 libmoduletestplugin_b_la_LDFLAGS = $(G_MODULE_LDFLAGS) -avoid-version -module $(no_undefined) -rpath $(libdir)
241 libmoduletestplugin_b_la_LIBADD = $(G_MODULE_LIBS) $(libadd_libgmodule) $(libadd_libglib)
242
243 dist-hook: $(BUILT_EXTRA_DIST)
244         files='$(BUILT_EXTRA_DIST)';                            \
245         for f in $$files; do                                    \
246           if test -f $$f; then d=.; else d=$(srcdir); fi;       \
247           cp $$d/$$f $(distdir) || exit 1; done
248         mkdir $(distdir)/markups;                               \
249         for f in $(srcdir)/markups/* ; do                       \
250           cp $$f $(distdir)/markups; done 
251         mkdir $(distdir)/collate;                               \
252         for f in $(srcdir)/collate/* ; do                       \
253           if test -f $$f; then cp $$f $(distdir)/collate; fi; done
254         mkdir $(distdir)/bookmarks;                             \
255         for f in $(srcdir)/bookmarks/* ; do                     \
256           cp $$f $(distdir)/bookmarks; done 
257
258 DISTCLEANFILES =                \
259         iochannel-test-outfile  \
260         file-test-get-contents  \
261         maptest                 \
262         mapchild                \
263         collate.out