1 include $(top_srcdir)/common/check.mak
3 CHECK_REGISTRY = $(top_builddir)/tests/check/test-registry.reg
4 TEST_FILES_DIRECTORY = $(top_srcdir)/tests/files
6 GST_TOOLS_DIR = $(top_builddir)/tools
8 REGISTRY_ENVIRONMENT = \
9 GST_REGISTRY_1_0=$(CHECK_REGISTRY)
11 # GST_PLUGINS_XYZ_DIR is only set in an uninstalled setup
12 AM_TESTS_ENVIRONMENT = \
13 $(REGISTRY_ENVIRONMENT) \
14 GST_PLUGIN_SYSTEM_PATH_1_0= \
15 GST_PLUGIN_PATH_1_0=$(top_builddir)/gst:$(top_builddir)/sys:$(top_builddir)/ext:$(GST_PLUGINS_LIBAV_DIR):$(GST_PLUGINS_UGLY_DIR):$(GST_PLUGINS_GOOD_DIR):$(GST_PLUGINS_BASE_DIR):$(GST_PLUGINS_DIR) \
16 GST_PLUGIN_LOADING_WHITELIST="gstreamer@$(GST_PLUGINS_DIR):gst-plugins-base@$(GSTPB_PLUGINS_DIR):gst-plugins-good:gst-plugins-ugly:gst-libav:gst-plugins-bad@$(top_builddir)" \
17 GST_STATE_IGNORE_ELEMENTS="apexsink avdtpsrc camerabin dc1394src \
18 dccpclientsrc dccpclientsink dccpserversrc dccpserversink decklinksrc \
19 decklinksink dtlssrtpdec dtlssrtpenc dvbsrc dvbbasebin dfbvideosink festival fluidsynth gsettingsvideosrc \
20 gsettingsvideosink gsettingsaudiosrc gsettingsaudiosink linsyssdisrc linsyssdisink nassink \
21 rsndvdbin sdlaudiosink sdlvideosink vcdsrc rfbsrc vdpauyuvvideo vdpauvideoyuv \
22 vdpaumpegdec vdpaumpeg4dec vdpauh264dec vdpauvideopostprocess vdpausink neonhttpsrc \
25 plugindir = $(libdir)/gstreamer-@GST_API_VERSION@
27 # override to _not_ install the test plugins
28 install-pluginLTLIBRARIES:
30 # the core dumps of some machines have PIDs appended
31 CLEANFILES = core.* test-registry.*
33 SUPPRESSIONS = $(top_srcdir)/common/gst.supp $(srcdir)/gst-plugins-bad.supp
35 clean-local: clean-local-check
36 distclean-local: distclean-local-orc
39 check_assrender = elements/assrender
45 check_dash = elements/dash_mpd
51 check_faac = elements/faac
57 check_faad = elements/faad
63 check_voaacenc = elements/voaacenc
69 check_voamrwbenc = elements/voamrwbenc
75 check_jifmux = elements/jifmux
81 check_mpeg2enc = elements/mpeg2enc
87 check_mpg123 = elements/mpg123audiodec
93 check_mplex = elements/mplex
99 check_neon = elements/neonhttpsrc
105 check_ofa = elements/ofa
111 check_schro=elements/schroenc
117 check_x265enc=elements/x265enc
123 check_timidity=elements/timidity
129 check_kate=elements/kate
135 check_mimic=pipelines/mimic
141 check_orc = orc/bayer orc/audiomixer orc/compositor
147 check_zbar = elements/zbar
153 check_opencv = elements/templatematch
159 check_opus = elements/opus
165 check_curl_sftp = elements/curlsftpsink
171 check_hlsdemux = elements/hlsdemux_m3u8
177 check_curl = elements/curlhttpsink \
178 elements/curlfilesink \
179 elements/curlftpsink \
181 elements/curlsmtpsink
187 check_uvch264=elements/uvch264demux
191 uvch264_dist_data = elements/uvch264demux_data/valid_h264_jpg.mjpg \
192 elements/uvch264demux_data/valid_h264_jpg.jpg \
193 elements/uvch264demux_data/valid_h264_jpg.h264 \
194 elements/uvch264demux_data/valid_h264_yuy2.mjpg \
195 elements/uvch264demux_data/valid_h264_yuy2.h264 \
196 elements/uvch264demux_data/valid_h264_yuy2.yuy2
199 check_shm=elements/shm
205 check_gl=libs/gstglcontext \
208 libs/gstglcolorconvert \
220 VALGRIND_TESTS_DISABLE = \
223 # these tests don't even pass
224 # neon: too flaky (almost always fails 'the first time')
226 pipelines/streamheader \
236 $(check_voamrwbenc) \
247 elements/autoconvert \
248 elements/autovideoconvert \
249 elements/audiointerleave \
250 elements/audiomixer \
252 elements/baseaudiovisualizer \
254 elements/dataurisrc \
257 elements/compositor \
263 elements/mpegvideoparse \
264 elements/mpeg4videoparse \
272 libs/mpegvideoparser \
281 elements/viewfinderbin \
287 $(EXPERIMENTAL_CHECKS)
289 noinst_HEADERS = elements/mxfdemux.h
291 TESTS = $(check_PROGRAMS)
293 AM_CFLAGS = $(GST_CFLAGS) $(GST_CHECK_CFLAGS) $(GST_OPTION_CFLAGS) \
294 -DGST_CHECK_TEST_ENVIRONMENT_BEACON="\"GST_PLUGIN_LOADING_WHITELIST\"" \
295 -DGST_TEST_FILES_PATH="\"$(TEST_FILES_DIRECTORY)\"" \
296 -UG_DISABLE_ASSERT -UG_DISABLE_CAST_CHECKS
297 LDADD = $(GST_CHECK_LIBS)
299 elements_audiomixer_LDADD = $(GST_BASE_LIBS) -lgstbase-@GST_API_VERSION@ $(LDADD)
300 elements_audiomixer_CFLAGS = $(GST_PLUGINS_BASE_CFLAGS) $(GST_BASE_CFLAGS) $(AM_CFLAGS)
302 elements_audiointerleave_LDADD = $(GST_BASE_LIBS) -lgstbase-@GST_API_VERSION@ -lgstaudio-@GST_API_VERSION@ $(LDADD)
303 elements_audiointerleave_CFLAGS = $(GST_PLUGINS_BASE_CFLAGS) $(GST_BASE_CFLAGS) $(AM_CFLAGS)
305 # parser unit test convenience lib
306 noinst_LTLIBRARIES = libparser.la
307 libparser_la_SOURCES = elements/parser.c elements/parser.h
308 libparser_la_CFLAGS = \
309 -I$(top_srcdir)/tests/check \
310 $(GST_CFLAGS) $(GST_CHECK_CFLAGS) $(GST_OPTION_CFLAGS)
312 elements_mpegvideoparse_LDADD = libparser.la $(LDADD)
314 elements_mpeg4videoparse_LDADD = libparser.la $(LDADD)
316 elements_h263parse_LDADD = libparser.la $(LDADD)
318 elements_h264parse_LDADD = libparser.la $(LDADD)
320 libs_mpegvideoparser_CFLAGS = \
321 $(GST_PLUGINS_BAD_CFLAGS) $(GST_PLUGINS_BASE_CFLAGS) \
322 -DGST_USE_UNSTABLE_API \
323 $(GST_BASE_CFLAGS) $(GST_CFLAGS) $(AM_CFLAGS)
325 libs_mpegvideoparser_LDADD = \
326 $(top_builddir)/gst-libs/gst/codecparsers/libgstcodecparsers-@GST_API_VERSION@.la \
327 $(GST_BASE_LIBS) $(GST_LIBS) $(LDADD)
329 libs_mpegts_CFLAGS = \
330 $(GST_PLUGINS_BAD_CFLAGS) \
331 -DGST_USE_UNSTABLE_API \
334 libs_mpegts_LDADD = \
335 $(top_builddir)/gst-libs/gst/mpegts/libgstmpegts-@GST_API_VERSION@.la \
339 libs_h264parser_CFLAGS = \
340 $(GST_PLUGINS_BAD_CFLAGS) $(GST_PLUGINS_BASE_CFLAGS) \
341 -DGST_USE_UNSTABLE_API \
342 $(GST_BASE_CFLAGS) $(GST_CFLAGS) $(AM_CFLAGS)
344 libs_h264parser_LDADD = \
345 $(top_builddir)/gst-libs/gst/codecparsers/libgstcodecparsers-@GST_API_VERSION@.la \
346 $(GST_BASE_LIBS) $(GST_LIBS) $(LDADD)
348 libs_vc1parser_CFLAGS = \
349 $(GST_PLUGINS_BAD_CFLAGS) $(GST_PLUGINS_BASE_CFLAGS) \
350 -DGST_USE_UNSTABLE_API \
351 $(GST_BASE_CFLAGS) $(GST_CFLAGS) $(AM_CFLAGS)
353 libs_vc1parser_LDADD = \
354 $(top_builddir)/gst-libs/gst/codecparsers/libgstcodecparsers-@GST_API_VERSION@.la \
355 $(GST_BASE_LIBS) $(GST_LIBS) $(LDADD)
357 libs_vp8parser_CFLAGS = \
358 $(GST_PLUGINS_BAD_CFLAGS) $(GST_PLUGINS_BASE_CFLAGS) \
359 -DGST_USE_UNSTABLE_API \
360 $(GST_BASE_CFLAGS) $(GST_CFLAGS) $(AM_CFLAGS)
362 libs_vp8parser_LDADD = \
363 $(top_builddir)/gst-libs/gst/codecparsers/libgstcodecparsers-@GST_API_VERSION@.la \
364 $(GST_PLUGINS_BAD_LIBS) -lgstcodecparsers-@GST_API_VERSION@ \
365 $(GST_BASE_LIBS) $(GST_LIBS) $(LDADD)
367 elements_faad_CFLAGS = \
368 $(GST_PLUGINS_BASE_CFLAGS) \
369 $(GST_BASE_CFLAGS) $(GST_CFLAGS) $(AM_CFLAGS)
370 elements_faad_LDADD = \
371 $(GST_PLUGINS_BASE_LIBS) $(GST_BASE_LIBS) $(GST_LIBS) $(LDADD) \
372 -lgstaudio-@GST_API_VERSION@
374 elements_faac_CFLAGS = \
375 $(GST_PLUGINS_BASE_CFLAGS) \
376 $(GST_BASE_CFLAGS) $(GST_CFLAGS) $(AM_CFLAGS)
377 elements_faac_LDADD = \
378 $(GST_PLUGINS_BASE_LIBS) $(GST_BASE_LIBS) $(GST_LIBS) $(LDADD) \
379 -lgstaudio-@GST_API_VERSION@
381 elements_gdppay_CFLAGS = \
382 $(GST_PLUGINS_BASE_CFLAGS) $(GST_BASE_CFLAGS) $(GST_CFLAGS) $(AM_CFLAGS)
383 elements_gdppay_LDADD = $(GST_BASE_LIBS) $(GST_LIBS) $(LDADD)
385 elements_gdpdepay_CFLAGS = \
386 $(GST_PLUGINS_BASE_CFLAGS) $(GST_BASE_CFLAGS) $(GST_CFLAGS) $(AM_CFLAGS)
387 elements_gdpdepay_LDADD = $(GST_BASE_LIBS) $(GST_LIBS) $(LDADD)
389 elements_voaacenc_CFLAGS = \
390 $(GST_PLUGINS_BASE_CFLAGS) \
391 $(GST_BASE_CFLAGS) $(GST_CFLAGS) $(AM_CFLAGS)
392 elements_voaacenc_LDADD = \
393 $(GST_PLUGINS_BASE_LIBS) $(GST_BASE_LIBS) $(GST_LIBS) $(LDADD) \
394 -lgstaudio-@GST_API_VERSION@
396 elements_baseaudiovisualizer_SOURCES = elements/baseaudiovisualizer.c
397 elements_baseaudiovisualizer_CFLAGS = $(GST_PLUGINS_BAD_CFLAGS) \
398 $(GST_PLUGINS_BASE_CFLAGS) \
399 $(GST_BASE_CFLAGS) $(GST_CONTROLLER_CFLAGS) $(GST_CFLAGS) $(AM_CFLAGS)
400 elements_baseaudiovisualizer_LDADD = \
401 $(GST_PLUGINS_BASE_LIBS) -lgstaudio-@GST_API_VERSION@ \
402 -lgstvideo-@GST_API_VERSION@ $(GST_BASE_LIBS) $(GST_CONTROLLER_LIBS) \
405 elements_camerabin_CFLAGS = \
406 $(GST_PLUGINS_BAD_CFLAGS) $(GST_PLUGINS_BASE_CFLAGS) \
407 $(GST_BASE_CFLAGS) $(GST_CFLAGS) $(AM_CFLAGS) -DGST_USE_UNSTABLE_API
408 elements_camerabin_LDADD = \
409 $(top_builddir)/gst-libs/gst/interfaces/libgstphotography-@GST_API_VERSION@.la \
410 $(top_builddir)/gst-libs/gst/basecamerabinsrc/libgstbasecamerabinsrc-@GST_API_VERSION@.la \
411 $(GST_PLUGINS_BASE_LIBS) -lgstpbutils-$(GST_API_VERSION) \
412 $(GST_BASE_LIBS) $(GST_LIBS) $(LDADD)
413 elements_camerabin_SOURCES = elements/camerabin.c
415 elements_jifmux_CFLAGS = $(GST_PLUGINS_BASE_CFLAGS) $(EXIF_CFLAGS) $(AM_CFLAGS)
416 elements_jifmux_LDADD = $(GST_PLUGINS_BASE_LIBS) -lgsttag-$(GST_API_VERSION) $(GST_CHECK_LIBS) $(EXIF_LIBS) $(LDADD)
417 elements_jifmux_SOURCES = elements/jifmux.c
419 elements_timidity_CFLAGS = $(GST_BASE_CFLAGS) $(AM_CFLAGS)
420 elements_timidity_LDADD = $(GST_BASE_LIBS) $(LDADD)
422 elements_kate_CFLAGS = $(GST_BASE_CFLAGS) $(AM_CFLAGS)
423 elements_kate_LDADD = $(GST_BASE_LIBS) $(LDADD)
425 elements_assrender_CFLAGS = $(GST_PLUGINS_BASE_CFLAGS) $(GST_BASE_CFLAGS) $(AM_CFLAGS)
426 elements_assrender_LDADD = $(GST_PLUGINS_BASE_LIBS) -lgstvideo-$(GST_API_VERSION) -lgstapp-$(GST_API_VERSION) $(GST_BASE_LIBS) $(LDADD)
428 elements_mpegtsmux_CFLAGS = $(GST_PLUGINS_BASE_CFLAGS) $(GST_BASE_CFLAGS) $(AM_CFLAGS)
429 elements_mpegtsmux_LDADD = $(GST_PLUGINS_BASE_LIBS) -lgstvideo-$(GST_API_VERSION) $(GST_BASE_LIBS) $(LDADD)
431 elements_mpg123audiodec_CFLAGS = $(GST_PLUGINS_BASE_CFLAGS) $(GST_BASE_CFLAGS) $(AM_CFLAGS)
432 elements_mpg123audiodec_LDADD = \
433 $(GST_PLUGINS_BASE_LIBS) $(GST_BASE_LIBS) $(GST_LIBS) $(LDADD) \
434 -lgstaudio-@GST_API_VERSION@ -lgstfft-@GST_API_VERSION@ -lgstapp-@GST_API_VERSION@
436 elements_uvch264demux_CFLAGS = -DUVCH264DEMUX_DATADIR="$(srcdir)/elements/uvch264demux_data" \
439 elements_dash_mpd_CFLAGS = $(AM_CFLAGS) $(LIBXML2_CFLAGS)
440 elements_dash_mpd_LDADD = $(LDADD) $(LIBXML2_LIBS)
441 elements_dash_mpd_SOURCES = elements/dash_mpd.c
443 pipelines_streamheader_CFLAGS = $(GIO_CFLAGS) $(AM_CFLAGS)
444 pipelines_streamheader_LDADD = $(GIO_LIBS) $(LDADD)
446 libs_insertbin_LDADD = \
447 $(top_builddir)/gst-libs/gst/insertbin/libgstinsertbin-@GST_API_VERSION@.la \
448 $(GST_PLUGINS_BASE_LIBS) $(GST_BASE_LIBS) $(GST_LIBS) $(LDADD)
449 libs_insertbin_CFLAGS = \
450 $(GST_PLUGINS_BAD_CFLAGS) $(GST_BASE_CFLAGS) $(GST_CFLAGS) $(AM_CFLAGS)
452 elements_rtponvif_CFLAGS = $(GST_PLUGINS_BASE_CFLAGS) $(GST_BASE_CFLAGS) $(AM_CFLAGS)
453 elements_rtponvif_LDADD = $(GST_PLUGINS_BASE_LIBS) $(GST_BASE_LIBS) $(GST_LIBS) -lgstrtp-$(GST_API_VERSION) $(LDADD)
455 EXTRA_DIST = gst-plugins-bad.supp $(uvch264_dist_data)
457 orc_bayer_CFLAGS = $(ORC_CFLAGS)
458 orc_bayer_LDADD = $(ORC_LIBS) -lorc-test-0.4
459 nodist_orc_bayer_SOURCES = orc/bayer.c
461 orc/bayer.c: $(top_srcdir)/gst/bayer/gstbayerorc.orc
463 $(ORCC) --test -o $@ $<
465 orc_audiomixer_CFLAGS = $(ORC_CFLAGS)
466 orc_audiomixer_LDADD = $(ORC_LIBS) -lorc-test-0.4
467 nodist_orc_audiomixer_SOURCES = orc/audiomixer.c
469 orc/audiomixer.c: $(top_srcdir)/gst/audiomixer/gstaudiomixerorc.orc
471 $(ORCC) --test -o $@ $<
473 libs_gstglcontext_LDADD = \
474 $(top_builddir)/gst-libs/gst/gl/libgstgl-@GST_API_VERSION@.la \
475 $(GST_PLUGINS_BASE_LIBS) $(GST_BASE_LIBS) $(GST_LIBS) $(LDADD)
477 libs_gstglcontext_CFLAGS = \
478 $(GST_PLUGINS_BAD_CFLAGS) $(GST_PLUGINS_BASE_CFLAGS) \
479 -DGST_USE_UNSTABLE_API \
480 $(GST_BASE_CFLAGS) $(GST_CFLAGS) $(AM_CFLAGS)
482 libs_gstglmemory_LDADD = \
483 $(top_builddir)/gst-libs/gst/gl/libgstgl-@GST_API_VERSION@.la \
484 $(GST_PLUGINS_BASE_LIBS) -lgstvideo-$(GST_API_VERSION) \
485 $(GST_BASE_LIBS) $(GST_LIBS) $(LDADD)
487 libs_gstglmemory_CFLAGS = \
488 $(GST_PLUGINS_BAD_CFLAGS) $(GST_PLUGINS_BASE_CFLAGS) \
489 -DGST_USE_UNSTABLE_API \
490 $(GST_BASE_CFLAGS) $(GST_CFLAGS) $(AM_CFLAGS)
492 libs_gstglupload_CFLAGS = \
493 $(GST_PLUGINS_BAD_CFLAGS) $(GST_PLUGINS_BASE_CFLAGS) \
494 -DGST_USE_UNSTABLE_API \
495 $(GST_BASE_CFLAGS) $(GST_CFLAGS) $(AM_CFLAGS)
497 libs_gstglupload_LDADD = \
498 $(top_builddir)/gst-libs/gst/gl/libgstgl-@GST_API_VERSION@.la \
499 $(GST_PLUGINS_BASE_LIBS) -lgstvideo-$(GST_API_VERSION) \
500 $(GST_BASE_LIBS) $(GST_LIBS) $(LDADD)
502 libs_gstglcolorconvert_CFLAGS = \
503 $(GST_PLUGINS_BAD_CFLAGS) $(GST_PLUGINS_BASE_CFLAGS) \
504 -DGST_USE_UNSTABLE_API \
505 $(GST_BASE_CFLAGS) $(GST_CFLAGS) $(AM_CFLAGS)
507 libs_gstglcolorconvert_LDADD = \
508 $(top_builddir)/gst-libs/gst/gl/libgstgl-@GST_API_VERSION@.la \
509 $(GST_PLUGINS_BASE_LIBS) -lgstvideo-$(GST_API_VERSION) \
510 $(GST_BASE_LIBS) $(GST_LIBS) $(LDADD)
512 elements_glimagesink_CFLAGS = \
513 $(GST_PLUGINS_BAD_CFLAGS) $(GST_PLUGINS_BASE_CFLAGS) \
514 -DGST_USE_UNSTABLE_API \
515 $(GST_BASE_CFLAGS) $(GST_CFLAGS) $(AM_CFLAGS)
517 elements_glimagesink_LDADD = \
518 $(top_builddir)/gst-libs/gst/gl/libgstgl-@GST_API_VERSION@.la \
519 $(GST_PLUGINS_BASE_LIBS) -lgstvideo-$(GST_API_VERSION) \
520 $(GST_BASE_LIBS) $(GST_LIBS) $(LDADD)
522 libs_aggregator_LDADD = \
523 $(top_builddir)/gst-libs/gst/base/libgstbadbase-@GST_API_VERSION@.la \
524 $(GST_PLUGINS_BASE_LIBS) \
525 $(GST_BASE_LIBS) $(GST_LIBS) $(LDADD)
527 libs_aggregator_CFLAGS = \
528 $(GST_PLUGINS_BAD_CFLAGS) $(GST_PLUGINS_BASE_CFLAGS) \
529 -DGST_USE_UNSTABLE_API \
530 $(GST_BASE_CFLAGS) $(GST_CFLAGS) $(AM_CFLAGS)
532 elements_compositor_LDADD = \
533 $(GST_PLUGINS_BASE_LIBS) -lgstvideo-$(GST_API_VERSION) \
534 $(GST_BASE_LIBS) $(LDADD)
535 elements_compositor_CFLAGS = \
536 $(GST_PLUGINS_BASE_CFLAGS) \
537 $(GST_BASE_CFLAGS) $(CFLAGS) $(AM_CFLAGS)
539 elements_hlsdemux_m3u8_CFLAGS = $(GST_BASE_CFLAGS) $(AM_CFLAGS) -I$(top_srcdir)/ext/hls
540 elements_hlsdemux_m3u8_LDADD = $(GST_BASE_LIBS) $(LDADD)
541 elements_hlsdemux_m3u8_SOURCES = elements/hlsdemux_m3u8.c
543 orc_compositor_CFLAGS = $(ORC_CFLAGS)
544 orc_compositor_LDADD = $(ORC_LIBS) -lorc-test-0.4
545 nodist_orc_compositor_SOURCES = orc/compositor.c
546 orc_videobox_CFLAGS = $(ORC_CFLAGS)
548 orc/compositor.c: $(top_srcdir)/gst/compositor/compositororc.orc
550 $(ORCC) --test -o $@ $<