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