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