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