d4d0b15af1b7e4ee5d273e9e5b467513b998384e
[platform/upstream/gstreamer.git] / tests / check / Makefile.am
1 include $(top_srcdir)/common/check.mak
2
3 CHECK_REGISTRY = $(top_builddir)/tests/check/test-registry.reg
4 TEST_FILES_DIRECTORY = $(top_srcdir)/tests/files
5
6 REGISTRY_ENVIRONMENT = \
7         GST_REGISTRY=$(CHECK_REGISTRY)
8
9 TESTS_ENVIRONMENT = \
10         CK_DEFAULT_TIMEOUT=120                                  \
11         GST_STATE_IGNORE_ELEMENTS="$(STATE_IGNORE_ELEMENTS)"    \
12         $(REGISTRY_ENVIRONMENT)                                 \
13         GST_PLUGIN_SYSTEM_PATH=                                 \
14         GST_PLUGIN_PATH=$(top_builddir)/gst:$(top_builddir)/sys:$(top_builddir)/ext:$(GST_PLUGINS_DIR) \
15         GST_PLUGIN_LOADING_WHITELIST="gstreamer:gst-plugins-base@$(top_builddir)" \
16         GST_TAG_LICENSE_TRANSLATIONS_DICT="$(top_srcdir)/gst-libs/gst/tag/license-translations.dict"
17
18
19 # ths core dumps of some machines have PIDs appended
20 CLEANFILES = core.* test-registry.*
21
22 clean-local: clean-local-check clean-local-orc
23
24 $(CHECK_REGISTRY):
25         $(TESTS_ENVIRONMENT)
26
27 # elements to ignore for the state tests
28 STATE_IGNORE_ELEMENTS = cdio cdparanoiasrc libvisual_ alsasrc alsamixer alsasink
29
30 TESTS = $(check_PROGRAMS)
31
32 if USE_ALSA
33 check_alsa = elements/alsa
34 else
35 check_alsa =
36 endif
37
38 if USE_LIBVISUAL
39 check_libvisual = elements/libvisual
40 else
41 check_libvisual =
42 endif
43
44 if USE_OGG
45 check_ogg = pipelines/oggmux
46 else
47 check_ogg =
48 endif
49
50 if USE_PANGO
51 check_pango = elements/textoverlay
52 else
53 check_pango =
54 endif
55
56 if USE_VORBIS
57 check_vorbis = elements/vorbisdec pipelines/vorbisenc pipelines/vorbisdec \
58         elements/vorbistag
59 else
60 check_vorbis =
61 endif
62
63 if USE_THEORA
64 check_theora = pipelines/theoraenc
65 else
66 check_theora =
67 endif
68
69 if USE_VORBIS
70 if USE_THEORA
71 check_encodebin = elements/encodebin
72 else
73 check_encodebin =
74 endif
75 else
76 check_encodebin =
77 endif
78
79 if USE_PLUGIN_SUBPARSE
80 check_subparse = elements/subparse
81 else
82 check_subparse =
83 endif
84
85 if HAVE_ORC
86 check_orc = orc/adder orc/audioconvert orc/volume orc/videoscale orc/videotestsrc
87 else
88 check_orc =
89 endif
90
91 if HAVE_CXX
92 cxx_checks = libs/gstlibscpp
93 else
94 cxx_checks =
95 endif
96
97 check_PROGRAMS = \
98         $(check_alsa) \
99         $(check_ogg) \
100         $(check_vorbis) \
101         elements/audioconvert \
102         elements/audiotestsrc \
103         elements/decodebin \
104         $(check_encodebin) \
105         generic/clock-selection \
106         generic/states \
107         gst/typefindfunctions \
108         libs/libsabi \
109         libs/audio \
110         libs/audiocdsrc \
111         libs/discoverer \
112         libs/fft \
113         libs/mixer \
114         libs/navigation \
115         libs/pbutils \
116         libs/profile \
117         libs/rtp \
118         libs/rtsp \
119         libs/tag \
120         libs/video \
121         libs/xmpwriter \
122         $(cxx_checks) \
123         $(check_orc) \
124         pipelines/simple-launch-lines \
125         pipelines/streamheader \
126         pipelines/basetime \
127         pipelines/capsfilter-renegotiation \
128         pipelines/gio \
129         elements/appsink            \
130         elements/appsrc             \
131         elements/audiorate          \
132         elements/audioresample      \
133         elements/gdpdepay           \
134         elements/gdppay             \
135         elements/multisocketsink    \
136         elements/playbin            \
137         elements/playbin-compressed \
138         $(check_pango)              \
139         $(check_subparse)           \
140         elements/videorate          \
141         elements/videoscale         \
142         elements/videotestsrc       \
143         elements/volume
144         elements/adder         \
145         $(check_theora)
146
147 # TORTURE_TO_FIX = \
148 #       elements/adder
149
150 # videoconvert takes too long, so disabled for now
151 VALGRIND_TO_FIX = \
152         elements/videoconvert \
153         libs/video
154
155 # these tests don't even pass
156 noinst_PROGRAMS = $(check_libvisual)
157
158 noinst_HEADERS = \
159         libs/struct_arm.h     \
160         libs/struct_i386.h     \
161         libs/struct_i386_osx.h \
162         libs/struct_x86_64.h
163
164 AM_CFLAGS = -I$(top_srcdir)/gst-libs -I$(top_builddir)/gst-libs \
165         $(GST_CFLAGS) $(GST_CHECK_CFLAGS) \
166         -DGST_TEST_FILES_PATH="\"$(TEST_FILES_DIRECTORY)\"" \
167         -UG_DISABLE_ASSERT -UG_DISABLE_CAST_CHECKS
168 AM_CXXFLAGS = -I$(top_srcdir)/gst-libs -I$(top_builddir)/gst-libs \
169         $(GST_CXXFLAGS) $(GST_CHECK_CFLAGS) \
170         -DGST_TEST_FILES_PATH="\"$(TEST_FILES_DIRECTORY)\"" \
171         -UG_DISABLE_ASSERT -UG_DISABLE_CAST_CHECKS
172 LDADD = $(GST_LIBS) $(GST_CHECK_LIBS)
173
174 # valgrind testing
175 VALGRIND_TESTS_DISABLE = $(VALGRIND_TO_FIX)
176
177 SUPPRESSIONS = $(top_srcdir)/common/gst.supp $(srcdir)/gst-plugins-base.supp
178
179 libs_libsabi_CFLAGS = \
180         $(GST_PLUGINS_BASE_CFLAGS) \
181         $(GST_BASE_CFLAGS) \
182         $(AM_CFLAGS)
183
184 libs_libsabi_LDADD = \
185         $(top_builddir)/gst-libs/gst/app/libgstapp-@GST_MAJORMINOR@.la \
186         $(top_builddir)/gst-libs/gst/audio/libgstaudio-@GST_MAJORMINOR@.la \
187         $(top_builddir)/gst-libs/gst/fft/libgstfft-@GST_MAJORMINOR@.la \
188         $(top_builddir)/gst-libs/gst/interfaces/libgstinterfaces-@GST_MAJORMINOR@.la \
189         $(top_builddir)/gst-libs/gst/pbutils/libgstpbutils-@GST_MAJORMINOR@.la \
190         $(top_builddir)/gst-libs/gst/rtp/libgstrtp-@GST_MAJORMINOR@.la \
191         $(top_builddir)/gst-libs/gst/rtsp/libgstrtsp-@GST_MAJORMINOR@.la \
192         $(top_builddir)/gst-libs/gst/tag/libgsttag-@GST_MAJORMINOR@.la \
193         $(top_builddir)/gst-libs/gst/video/libgstvideo-@GST_MAJORMINOR@.la \
194         $(GST_BASE_LIBS) \
195         $(LDADD)
196
197 libs_audio_CFLAGS = \
198         $(GST_PLUGINS_BASE_CFLAGS) \
199         $(GST_BASE_CFLAGS) \
200         $(AM_CFLAGS)
201
202 libs_audio_LDADD = \
203         $(top_builddir)/gst-libs/gst/audio/libgstaudio-@GST_MAJORMINOR@.la \
204         $(top_builddir)/gst-libs/gst/interfaces/libgstinterfaces-@GST_MAJORMINOR@.la \
205         $(GST_BASE_LIBS) \
206         $(LDADD)
207
208 libs_audiocdsrc_CFLAGS = \
209         $(GST_PLUGINS_BASE_CFLAGS) \
210         $(GST_BASE_CFLAGS) \
211         $(AM_CFLAGS)
212
213 libs_audiocdsrc_LDADD = \
214         $(top_builddir)/gst-libs/gst/audio/libgstaudio-@GST_MAJORMINOR@.la \
215         $(top_builddir)/gst-libs/gst/tag/libgsttag-@GST_MAJORMINOR@.la \
216         $(GST_BASE_LIBS) \
217         $(LDADD)
218
219 libs_discoverer_CFLAGS = \
220         $(GST_PLUGINS_BASE_CFLAGS) \
221         $(AM_CFLAGS) \
222         -DGST_TEST_FILE="\"$(abs_top_srcdir)/tests/files/partialframe.mjpeg\""
223 libs_discoverer_LDADD = \
224         $(top_builddir)/gst-libs/gst/pbutils/libgstpbutils-@GST_MAJORMINOR@.la \
225         $(GST_BASE_LIBS) $(LDADD)
226
227 libs_fft_CFLAGS = \
228         $(GST_PLUGINS_BASE_CFLAGS) \
229         $(GST_BASE_CFLAGS) \
230         $(AM_CFLAGS)
231
232 libs_fft_LDADD = \
233         $(top_builddir)/gst-libs/gst/fft/libgstfft-@GST_MAJORMINOR@.la \
234         $(GST_BASE_LIBS) \
235         $(LDADD)
236
237 libs_mixer_CFLAGS = \
238         $(GST_PLUGINS_BASE_CFLAGS) \
239         $(GST_BASE_CFLAGS) \
240         $(AM_CFLAGS)
241
242 libs_mixer_LDADD = \
243         $(top_builddir)/gst-libs/gst/audio/libgstaudio-@GST_MAJORMINOR@.la \
244         $(GST_BASE_LIBS) \
245         $(LDADD)
246
247 libs_navigation_CFLAGS = \
248         $(GST_PLUGINS_BASE_CFLAGS) \
249         $(GST_BASE_CFLAGS) \
250         $(AM_CFLAGS)
251
252 libs_navigation_LDADD = \
253         $(top_builddir)/gst-libs/gst/interfaces/libgstinterfaces-@GST_MAJORMINOR@.la \
254         $(GST_BASE_LIBS) \
255         $(LDADD)
256
257 libs_rtp_CFLAGS = \
258         $(GST_PLUGINS_BASE_CFLAGS) \
259         $(AM_CFLAGS)
260 libs_rtp_LDADD = \
261         $(top_builddir)/gst-libs/gst/rtp/libgstrtp-@GST_MAJORMINOR@.la \
262         $(GST_BASE_LIBS) $(LDADD)
263
264 libs_rtsp_CFLAGS = \
265         $(GST_PLUGINS_BASE_CFLAGS) \
266         $(AM_CFLAGS)
267 libs_rtsp_LDADD = \
268         $(top_builddir)/gst-libs/gst/rtsp/libgstrtsp-@GST_MAJORMINOR@.la \
269         $(GST_BASE_LIBS) $(LDADD)
270
271 libs_tag_CFLAGS = \
272         $(GST_PLUGINS_BASE_CFLAGS) \
273         $(GST_BASE_CFLAGS) \
274         $(AM_CFLAGS)
275 libs_tag_LDADD = \
276         $(top_builddir)/gst-libs/gst/tag/libgsttag-@GST_MAJORMINOR@.la \
277         $(GST_BASE_LIBS) $(LDADD)
278
279 libs_pbutils_CFLAGS = \
280         $(GST_PLUGINS_BASE_CFLAGS) \
281         $(AM_CFLAGS)
282 libs_pbutils_LDADD = \
283         $(top_builddir)/gst-libs/gst/pbutils/libgstpbutils-@GST_MAJORMINOR@.la \
284         $(top_builddir)/gst-libs/gst/video/libgstvideo-@GST_MAJORMINOR@.la \
285         $(GST_BASE_LIBS) $(LDADD)
286
287 libs_profile_CFLAGS = \
288         $(GST_PLUGINS_BASE_CFLAGS) \
289         $(AM_CFLAGS)
290 libs_profile_LDADD = \
291         $(top_builddir)/gst-libs/gst/pbutils/libgstpbutils-@GST_MAJORMINOR@.la $(LDADD)
292
293 libs_xmpwriter_CFLAGS = \
294         $(GST_PLUGINS_BASE_CFLAGS) \
295         $(GST_BASE_CFLAGS) \
296         $(AM_CFLAGS)
297
298 libs_xmpwriter_LDADD = \
299         $(top_builddir)/gst-libs/gst/tag/libgsttag-@GST_MAJORMINOR@.la \
300         $(GST_BASE_LIBS) \
301         $(LDADD)
302
303
304 libs_gstlibscpp_SOURCES = libs/gstlibscpp.cc
305
306 elements_appsink_CFLAGS = \
307         $(GST_PLUGINS_BASE_CFLAGS) \
308         $(AM_CFLAGS)
309
310 elements_appsink_LDADD = \
311         $(top_builddir)/gst-libs/gst/app/libgstapp-@GST_MAJORMINOR@.la \
312         $(LDADD)
313
314 elements_appsrc_CFLAGS = \
315         $(GST_PLUGINS_BASE_CFLAGS) \
316         $(AM_CFLAGS)
317
318 elements_appsrc_LDADD = \
319         $(top_builddir)/gst-libs/gst/app/libgstapp-@GST_MAJORMINOR@.la \
320         $(LDADD)
321
322 elements_alsa_CFLAGS = \
323         $(GST_PLUGINS_BASE_CFLAGS) \
324         $(AM_CFLAGS)
325
326 elements_alsa_LDADD = \
327         $(top_builddir)/gst-libs/gst/interfaces/libgstinterfaces-@GST_MAJORMINOR@.la \
328         $(top_builddir)/gst-libs/gst/audio/libgstaudio-@GST_MAJORMINOR@.la \
329         $(LDADD)
330
331 elements_audioconvert_CFLAGS = \
332         $(GST_PLUGINS_BASE_CFLAGS) \
333         $(GST_BASE_CFLAGS) \
334         $(AM_CFLAGS)
335
336 elements_audioconvert_LDADD = \
337         $(top_builddir)/gst-libs/gst/audio/libgstaudio-@GST_MAJORMINOR@.la \
338         $(top_builddir)/gst-libs/gst/interfaces/libgstinterfaces-@GST_MAJORMINOR@.la \
339         $(GST_BASE_LIBS) \
340         $(LDADD)
341
342 elements_audiorate_LDADD = \
343         $(top_builddir)/gst-libs/gst/audio/libgstaudio-@GST_MAJORMINOR@.la \
344         $(top_builddir)/gst-libs/gst/interfaces/libgstinterfaces-@GST_MAJORMINOR@.la \
345         $(GST_BASE_LIBS) \
346         $(LDADD)
347 elements_audiorate_CFLAGS = $(GST_PLUGINS_BASE_CFLAGS) $(CFLAGS) $(AM_CFLAGS)
348
349 elements_libvisual_LDADD =  $(LDADD)
350 elements_libvisual_CFLAGS = $(CFLAGS) $(AM_CFLAGS)
351
352 elements_gdpdepay_LDADD = $(LDADD)
353 elements_gdppay_LDADD = $(LDADD)
354
355 elements_playbin_LDADD = $(GST_BASE_LIBS) $(LDADD)
356 elements_playbin_CFLAGS = $(GST_BASE_CFLAGS) $(AM_CFLAGS)
357
358 elements_playbin_compressed_LDADD = $(top_builddir)/gst-libs/gst/audio/libgstaudio-@GST_MAJORMINOR@.la $(GST_BASE_LIBS) $(LDADD)
359 elements_playbin_compressed_CFLAGS = $(GST_PLUGINS_BASE_CFLAGS) $(GST_BASE_CFLAGS) $(AM_CFLAGS)
360
361 elements_decodebin_LDADD = $(GST_BASE_LIBS) $(LDADD)
362 elements_decodebin_CFLAGS = $(GST_BASE_CFLAGS) $(AM_CFLAGS)
363
364 elements_encodebin_LDADD = $(top_builddir)/gst-libs/gst/pbutils/libgstpbutils-@GST_MAJORMINOR@.la $(GST_BASE_LIBS) $(LDADD)
365 elements_encodebin_CFLAGS = $(GST_PLUGINS_BASE_CFLAGS) $(GST_BASE_CFLAGS) $(AM_CFLAGS)
366
367 elements_subparse_LDADD =  $(LDADD)
368 elements_subparse_CFLAGS = $(CFLAGS) $(AM_CFLAGS)
369
370 elements_audioresample_CFLAGS = \
371         $(GST_PLUGINS_BASE_CFLAGS) \
372         $(GST_BASE_CFLAGS) \
373         $(AM_CFLAGS)
374
375 elements_audioresample_LDADD = \
376         $(top_builddir)/gst-libs/gst/fft/libgstfft-@GST_MAJORMINOR@.la \
377         $(top_builddir)/gst-libs/gst/audio/libgstaudio-@GST_MAJORMINOR@.la \
378         $(top_builddir)/gst-libs/gst/interfaces/libgstinterfaces-@GST_MAJORMINOR@.la \
379         $(GST_BASE_LIBS) \
380         $(LDADD)
381
382 elements_textoverlay_LDADD = $(GST_BASE_LIBS) $(LDADD)
383 elements_textoverlay_CFLAGS = $(GST_BASE_CFLAGS) $(AM_CFLAGS)
384
385 elements_volume_LDADD = \
386         $(top_builddir)/gst-libs/gst/audio/libgstaudio-@GST_MAJORMINOR@.la \
387         $(GST_CONTROLLER_LIBS) \
388         $(GST_BASE_LIBS) \
389         $(LDADD)
390
391 elements_volume_CFLAGS = \
392         $(GST_PLUGINS_BASE_CFLAGS) \
393         $(GST_CONTROLLER_CFLAGS) \
394         $(GST_BASE_CFLAGS) \
395         $(AM_CFLAGS)
396
397 elements_vorbisdec_LDADD = \
398         $(LDADD) \
399         $(VORBIS_LIBS) \
400         $(VORBISENC_LIBS)
401
402 elements_vorbisdec_CFLAGS = \
403         $(GST_PLUGINS_BASE_CFLAGS) \
404         $(AM_CFLAGS) \
405         $(VORBIS_CFLAGS) \
406         $(CFLAGS)
407
408 elements_vorbistag_LDADD = \
409         $(LDADD) \
410         $(VORBIS_LIBS) \
411         $(VORBISENC_LIBS)
412
413 elements_vorbistag_CFLAGS = \
414         $(GST_PLUGINS_BASE_CFLAGS) \
415         $(AM_CFLAGS) \
416         $(VORBIS_CFLAGS) \
417         $(CFLAGS)
418
419 elements_videoscale_CFLAGS = \
420         $(GST_PLUGINS_BASE_CFLAGS) \
421         $(GST_BASE_CFLAGS) \
422         $(AM_CFLAGS)
423 elements_videoscale_LDADD = \
424         $(top_builddir)/gst-libs/gst/video/libgstvideo-@GST_MAJORMINOR@.la \
425         $(GST_BASE_LIBS) $(LDADD)
426
427 gst_typefindfunctions_CFLAGS = $(GST_BASE_CFLAGS) $(AM_CFLAGS)
428 gst_typefindfunctions_LDADD = $(GST_BASE_LIBS) $(LDADD)
429
430 libs_video_CFLAGS = \
431         $(GST_PLUGINS_BASE_CFLAGS) \
432         $(GST_BASE_CFLAGS) \
433         $(AM_CFLAGS)
434
435 libs_video_LDADD = \
436         $(top_builddir)/gst-libs/gst/video/libgstvideo-@GST_MAJORMINOR@.la \
437         $(GST_BASE_LIBS) \
438         $(LDADD)
439
440 elements_multisocketsink_CFLAGS = $(GIO_CFLAGS) $(AM_CFLAGS)
441 elements_multisocketsink_LDADD = $(GIO_LIBS) $(LDADD)
442
443 pipelines_gio_CFLAGS = $(GIO_CFLAGS) $(AM_CFLAGS)
444 pipelines_gio_LDADD = $(GIO_LIBS) $(LDADD)
445
446 pipelines_streamheader_CFLAGS = $(GIO_CFLAGS) $(AM_CFLAGS)
447 pipelines_streamheader_LDADD = $(GIO_LIBS) $(LDADD)
448
449 pipelines_vorbisenc_CFLAGS = \
450         $(GST_PLUGINS_BASE_CFLAGS) \
451         $(AM_CFLAGS)
452
453 # this seemingly useless CFLAGS line is here only to avoid
454 # vorbisdec.$(OBJEXT) by triggering creation of pipelines_vorbisdec.$(OBJEXT)
455 # instead
456 pipelines_vorbisdec_CFLAGS = $(AM_CFLAGS)
457
458 pipelines_oggmux_LDADD = $(LDADD) $(OGG_LIBS)
459 pipelines_oggmux_CFLAGS = $(AM_CFLAGS) $(OGG_CFLAGS)
460
461 pipelines_theoraenc_CFLAGS = $(AM_CFLAGS) $(THEORA_CFLAGS)
462 pipelines_theoraenc_LDADD = $(LDADD) $(THEORA_LIBS)
463
464 pipelines_simple_launch_lines_CFLAGS = \
465         $(GST_BASE_CFLAGS) \
466         $(AM_CFLAGS)
467
468 pipelines_simple_launch_lines_LDADD = \
469         $(top_builddir)/gst-libs/gst/audio/libgstaudio-@GST_MAJORMINOR@.la \
470         $(top_builddir)/gst-libs/gst/interfaces/libgstinterfaces-@GST_MAJORMINOR@.la \
471         $(GST_BASE_LIBS) \
472         $(LDADD)
473
474 orc_adder_CFLAGS = $(ORC_CFLAGS)
475 orc_adder_LDADD = $(ORC_LIBS) -lorc-test-0.4
476 nodist_orc_adder_SOURCES = orc/adder.c
477 orc_audioconvert_CFLAGS = $(ORC_CFLAGS)
478 orc_audioconvert_LDADD = $(ORC_LIBS) -lorc-test-0.4
479 nodist_orc_audioconvert_SOURCES = orc/audioconvert.c
480 orc_volume_CFLAGS = $(ORC_CFLAGS)
481 orc_volume_LDADD = $(ORC_LIBS) -lorc-test-0.4
482 nodist_orc_volume_SOURCES = orc/volume.c
483 orc_videoscale_CFLAGS = $(ORC_CFLAGS)
484 orc_videoscale_LDADD = $(ORC_LIBS) -lorc-test-0.4
485 nodist_orc_videoscale_SOURCES = orc/videoscale.c
486 orc_videotestsrc_CFLAGS = $(ORC_CFLAGS)
487 orc_videotestsrc_LDADD = $(ORC_LIBS) -lorc-test-0.4
488 nodist_orc_videotestsrc_SOURCES = orc/videotestsrc.c
489
490 orc/adder.c: $(top_srcdir)/gst/adder/gstadderorc.orc
491         $(MKDIR_P) orc/
492         $(ORCC) --test -o $@ $<
493
494 orc/audioconvert.c: $(top_srcdir)/gst/audioconvert/gstaudioconvertorc.orc
495         $(MKDIR_P) orc/
496         $(ORCC) --test -o $@ $<
497
498 orc/volume.c: $(top_srcdir)/gst/volume/gstvolumeorc.orc
499         $(MKDIR_P) orc/
500         $(ORCC) --test -o $@ $<
501
502 orc/videoscale.c: $(top_srcdir)/gst/videoscale/gstvideoscaleorc.orc
503         $(MKDIR_P) orc/
504         $(ORCC) --test -o $@ $<
505
506 orc/videotestsrc.c: $(top_srcdir)/gst/videotestsrc/gstvideotestsrcorc.orc
507         $(MKDIR_P) orc/
508         $(ORCC) --test -o $@ $<
509
510
511 clean-local-orc:
512         rm -rf orc
513
514 EXTRA_DIST = gst-plugins-base.supp