Don't write out of bounds.
[platform/upstream/glib.git] / tests / Makefile.am
1 SUBDIRS=gobject
2
3 INCLUDES = -I$(top_srcdir) -I$(top_srcdir)/glib -I$(top_srcdir)/gmodule $(GLIB_DEBUG_FLAGS)
4
5 EFENCE=
6
7 libglib = $(top_builddir)/glib/libglib-2.0.la
8 libgthread = $(top_builddir)/gthread/libgthread-2.0.la
9 libgmodule = $(top_builddir)/gmodule/libgmodule-2.0.la
10 libgobject = $(top_builddir)/gobject/libgobject-2.0.la
11
12 if PLATFORM_WIN32
13 libadd_libgmodule = $(libgmodule)
14 libadd_libglib = $(libglib)
15 no_undefined = -no-undefined
16
17 module_test_exp = module-test.exp
18
19 module-test.exp: module-test.o
20         dlltool --output-exp module-test.exp module-test.o
21
22 spawn_test_win32_gui = spawn-test-win32-gui
23
24 spawn_test_win32_gui_LDFLAGS = -mwindows
25
26 endif
27
28 EXTRA_DIST =                                    \
29         $(test_scripts)                         \
30         makefile.msc.in                         \
31         casefold.txt                            \
32         casemap.txt                             \
33         gen-casefold-txt.pl                     \
34         gen-casemap-txt.pl                      \
35         iochannel-test-infile                   \
36         utf8.txt
37
38 BUILT_EXTRA_DIST =                              \
39         makefile.msc
40
41 if HAVE_CXX
42 CXX_TEST = cxx-test
43 cxx_test_LDADD = $(progs_ldadd)
44 cxx_test_SOURCES = cxx-test.C
45 else
46 CXX_TEST =
47 endif
48
49 if ENABLE_TIMELOOP
50 timeloop = timeloop timeloop-closure
51 endif
52 noinst_PROGRAMS = testglib testgdate testgdateparser unicode-normalize unicode-collate $(timeloop)
53 testglib_LDADD = $(libglib)
54 patterntest_LDADD = $(libglib)
55 testgdate_LDADD = $(libglib)
56 testgdateparser_LDADD = $(libglib)
57 unicode_normalize_LDADD = $(libglib)
58 unicode_collate_LDADD = $(libglib)
59 if ENABLE_TIMELOOP
60 timeloop_LDADD = $(libglib)
61 timeloop_closure_LDADD = $(libglib) $(libgobject)
62 endif
63
64 test_programs =                                 \
65         atomic-test                             \
66         array-test                              \
67         $(CXX_TEST)                             \
68         child-test                              \
69         completion-test                         \
70         date-test                               \
71         dirname-test                            \
72         file-test                               \
73         env-test                                \
74         gio-test                                \
75         hash-test                               \
76         iochannel-test                          \
77         keyfile-test                            \
78         list-test                               \
79         mainloop-test                           \
80         markup-escape-test                      \
81         module-test                             \
82         node-test                               \
83         option-test                             \
84         patterntest                             \
85         printf-test                             \
86         queue-test                              \
87         qsort-test                              \
88         rand-test                               \
89         relation-test                           \
90         shell-test                              \
91         slist-test                              \
92         spawn-test                              \
93         $(spawn_test_win32_gui)                 \
94         strfunc-test                            \
95         string-test                             \
96         strtod-test                             \
97         thread-test                             \
98         threadpool-test                         \
99         tree-test                               \
100         type-test                               \
101         unicode-caseconv                        \
102         unicode-encoding                        \
103         utf8-validate                           \
104         uri-test
105
106 test_scripts = run-markup-tests.sh
107
108 test_script_support_programs = markup-test
109
110 check_PROGRAMS = $(test_programs) $(test_script_support_programs)
111
112 TESTS = $(test_programs) $(test_scripts)
113 TESTS_ENVIRONMENT = srcdir=$(srcdir) \
114         LIBCHARSET_ALIAS_DIR=$(top_builddir)/glib/libcharset \
115         MALLOC_CHECK_=2
116
117 progs_ldadd = $(EFENCE) $(libglib) $(EFENCE)
118 thread_ldadd = $(libgthread) $(G_THREAD_LIBS) $(progs_ldadd)
119 module_ldadd = $(libgmodule) $(G_MODULE_LIBS) $(progs_ldadd)
120
121 atomic_test_LDADD = $(progs_ldadd)
122 array_test_LDADD = $(progs_ldadd)
123 child_test_LDADD = $(thread_ldadd)
124 completion_test_LDADD = $(progs_ldadd)
125 date_test_LDADD = $(progs_ldadd)
126 dirname_test_LDADD = $(progs_ldadd)
127 file_test_LDADD = $(progs_ldadd)
128 env_test_LDADD = $(progs_ldadd)
129 gio_test_LDADD = $(progs_ldadd)
130 hash_test_LDADD = $(progs_ldadd)
131 iochannel_test_LDADD = $(progs_ldadd)
132 keyfile_test_LDADD = $(progs_ldadd)
133 list_test_LDADD = $(progs_ldadd)
134 mainloop_test_LDADD = $(thread_ldadd)
135 markup_test_LDADD = $(progs_ldadd)
136 markup_escape_test_LDADD = $(progs_ldadd)
137 module_test_LDADD = $(module_ldadd) $(module_test_exp)
138 module_test_LDFLAGS = $(G_MODULE_LDFLAGS)
139 node_test_LDADD = $(progs_ldadd)
140 option_test_LDADD = $(progs_ldadd)
141 printf_test_LDADD = $(progs_ldadd)
142 queue_test_LDADD = $(progs_ldadd)
143 qsort_test_LDADD = $(progs_ldadd)
144 rand_test_LDADD = $(progs_ldadd)
145 relation_test_LDADD = $(progs_ldadd)
146 shell_test_LDADD = $(progs_ldadd)
147 slist_test_LDADD = $(progs_ldadd)
148 spawn_test_LDADD = $(progs_ldadd)
149 strfunc_test_LDADD = $(progs_ldadd)
150 string_test_LDADD = $(progs_ldadd)
151 strtod_test_LDADD = $(progs_ldadd) -lm
152 thread_test_LDADD = $(thread_ldadd)
153 threadpool_test_LDADD = $(thread_ldadd)
154 tree_test_LDADD = $(progs_ldadd)
155 type_test_LDADD = $(progs_ldadd)
156 unicode_encoding_LDADD = $(progs_ldadd)
157 unicode_caseconv_LDADD = $(progs_ldadd)
158 utf8_validate_LDADD = $(progs_ldadd)
159 uri_test_LDADD = $(progs_ldadd)
160
161 lib_LTLIBRARIES = libmoduletestplugin_a.la libmoduletestplugin_b.la
162
163 # Prevent those libs from being installed
164 install-libLTLIBRARIES:
165         :
166
167 libmoduletestplugin_a_la_SOURCES = libmoduletestplugin_a.c
168 libmoduletestplugin_a_la_LDFLAGS = $(G_MODULE_LDFLAGS) -avoid-version -module $(no_undefined) -rpath $(libdir)
169 libmoduletestplugin_a_la_LIBADD = $(G_MODULE_LIBS) $(libadd_libgmodule) $(libadd_libglib)
170
171 libmoduletestplugin_b_la_SOURCES = libmoduletestplugin_b.c
172 libmoduletestplugin_b_la_LDFLAGS = $(G_MODULE_LDFLAGS) -avoid-version -module $(no_undefined) -rpath $(libdir)
173 libmoduletestplugin_b_la_LIBADD = $(G_MODULE_LIBS) $(libadd_libgmodule) $(libadd_libglib)
174
175 dist-hook: $(BUILT_EXTRA_DIST)
176         files='$(BUILT_EXTRA_DIST)'; \
177         for f in $$files; do \
178           if test -f $$f; then d=.; else d=$(srcdir); fi; \
179           cp $$d/$$f $(distdir) || exit 1; done
180         mkdir $(distdir)/markups;          \
181         for f in $(srcdir)/markups/* ; do  \
182           cp $$f $(distdir)/markups;       \
183         done
184
185 DISTCLEANFILES = iochannel-test-outfile