testclock: add support for waiting and releasing multiple GstClockIDs
[platform/upstream/gstreamer.git] / libs / gst / check / Makefile.am
1 lib_LTLIBRARIES = libgstcheck-@GST_API_VERSION@.la
2
3 SYMBOLS_FILE = exports.sym
4
5 BUILT_SOURCES = internal-check.h
6
7 libgstcheck_@GST_API_VERSION@_la_DEPENDENCIES = \
8         $(top_builddir)/gst/libgstreamer-@GST_API_VERSION@.la \
9         internal-check.h \
10         $(SYMBOLS_FILE)
11 libgstcheck_@GST_API_VERSION@_la_SOURCES =      \
12         gstbufferstraw.c                        \
13         gstcheck.c                              \
14         gstconsistencychecker.c                 \
15         gsttestclock.c
16
17 libgstcheck_@GST_API_VERSION@_la_CFLAGS = $(GST_OBJ_CFLAGS) \
18         -I$(top_builddir)/libs \
19         -I$(top_builddir)/libs/gst/check \
20         -I$(top_builddir)/libs/gst/check/libcheck
21 libgstcheck_@GST_API_VERSION@_la_LIBADD = $(GST_OBJ_LIBS) \
22         $(top_builddir)/libs/gst/check/libcheck/libcheckinternal.la \
23         $(LIBM)
24 libgstcheck_@GST_API_VERSION@_la_LDFLAGS = \
25         -export-symbols $(SYMBOLS_FILE) $(GST_ALL_LDFLAGS) $(GST_LT_LDFLAGS)
26
27 libgstcheck_@GST_API_VERSION@includedir =               \
28         $(includedir)/gstreamer-@GST_API_VERSION@/gst/check
29
30 libgstcheck_@GST_API_VERSION@include_HEADERS =  \
31         check.h                                 \
32         gstbufferstraw.h                        \
33         gstcheck.h                              \
34         gstconsistencychecker.h                 \
35         gsttestclock.h
36
37 nodist_libgstcheck_@GST_API_VERSION@include_HEADERS =   \
38         internal-check.h        
39
40 CLEANFILES = *.gcno *.gcda *.gcov internal-check.h $(SYMBOLS_FILE)
41
42 internal-check.h: $(top_builddir)/libs/gst/check/libcheck/check.h
43         $(AM_V_GEN)cp $(top_builddir)/libs/gst/check/libcheck/check.h internal-check.h
44
45 %.c.gcov: .libs/libgstcheck_@GST_API_VERSION@_la-%.gcda %.c
46         $(GCOV) -b -f -o $^ > $@.out
47
48 gcov: $(libgstcheck_@GST_API_VERSION@_la_SOURCES:=.gcov)
49
50 SUBDIRS = libcheck
51
52 LIBGSTCHECK_EXPORTED_VARS = \
53         _gst_check_threads_running \
54         _gst_check_raised_critical \
55         _gst_check_raised_warning \
56         _gst_check_expecting_log \
57         buffers \
58         check_cond \
59         check_debug \
60         check_mutex \
61         mutex \
62         start_cond \
63         sync_cond \
64         thread_list
65
66 LIBGSTCHECK_EXPORTED_FUNCS = \
67         _gst_check_run_test_func \
68         gst_buffer_straw_get_buffer \
69         gst_buffer_straw_start_pipeline \
70         gst_buffer_straw_stop_pipeline \
71         gst_check_abi_list \
72         gst_check_caps_equal \
73         gst_check_buffer_data \
74         gst_check_chain_func \
75         gst_check_drop_buffers \
76         gst_check_element_push_buffer \
77         gst_check_element_push_buffer_list \
78         gst_check_init \
79         gst_check_message_error \
80         gst_check_run_suite \
81         gst_check_setup_element \
82         gst_check_setup_events \
83         gst_check_setup_events_with_stream_id \
84         gst_check_setup_sink_pad \
85         gst_check_setup_sink_pad_by_name \
86         gst_check_setup_src_pad \
87         gst_check_setup_src_pad_by_name \
88         gst_check_teardown_element \
89         gst_check_teardown_pad_by_name \
90         gst_check_teardown_sink_pad \
91         gst_check_teardown_src_pad \
92         gst_consistency_checker_add_pad \
93         gst_consistency_checker_new \
94         gst_consistency_checker_reset \
95         gst_consistency_checker_free \
96         gst_test_clock_get_type \
97         gst_test_clock_new \
98         gst_test_clock_new_with_start_time \
99         gst_test_clock_set_time \
100         gst_test_clock_advance_time \
101         gst_test_clock_peek_id_count \
102         gst_test_clock_has_id \
103         gst_test_clock_peek_next_pending_id \
104         gst_test_clock_wait_for_next_pending_id \
105         gst_test_clock_wait_for_multiple_pending_ids \
106         gst_test_clock_process_next_clock_id \
107         gst_test_clock_get_next_entry_time \
108         gst_test_clock_wait_for_multiple_pending_ids \
109         gst_test_clock_process_id_list \
110         gst_test_clock_id_list_get_latest_time \
111         gst_test_clock_id_list_free
112
113
114 LIBGSTCHECK_EXPORTED_SYMBOLS = \
115         $(LIBGSTCHECK_EXPORTED_VARS) \
116         $(LIBGSTCHECK_EXPORTED_FUNCS)
117
118 # Please do not even think about changing the alphabet below into A-Za-z.
119 # It is there for purpose. (Bug #602093)
120 CHECK_SYMS=`$(SED) -n -e 's/^..*CK_EXPORT[ ]\{1,\}\([_0-9ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz]\{1,\}\)..*$$/\1/p' @top_srcdir@/libs/gst/check/libcheck/check.h.in`
121 print-check-symbols:
122         @for s in $(CHECK_SYMS); do \
123           echo $$s; \
124         done;
125
126 $(SYMBOLS_FILE): $(libgstcheck_@GST_API_VERSION@include_HEADERS) libcheck/check.h
127         $(AM_V_GEN)rm -f $(SYMBOLS_FILE) 2>/dev/null; \
128         for s in $(LIBGSTCHECK_EXPORTED_SYMBOLS) $(CHECK_SYMS); do \
129           echo $$s >> $(SYMBOLS_FILE); \
130         done
131
132 if HAVE_INTROSPECTION
133 BUILT_GIRSOURCES = GstCheck-@GST_API_VERSION@.gir
134
135 gir_headers=$(patsubst %,$(srcdir)/%, $(libgstcheck_@GST_API_VERSION@include_HEADERS))
136 gir_sources=$(patsubst %,$(srcdir)/%, $(libgstcheck_@GST_API_VERSION@_la_SOURCES))
137
138 GstCheck-@GST_API_VERSION@.gir: $(INTROSPECTION_SCANNER) libgstcheck-@GST_API_VERSION@.la
139         $(AM_V_GEN)PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" \
140                 GST_PLUGIN_SYSTEM_PATH_1_0="" GST_PLUGIN_PATH_1_0="" GST_REGISTRY_UPDATE=no \
141                 $(INTROSPECTION_SCANNER) -v --namespace GstCheck \
142                 --nsversion=@GST_API_VERSION@ \
143                 --strip-prefix=Gst \
144                 --warn-all \
145                 -I$(top_srcdir) \
146                 -I$(top_srcdir)/libs \
147                 -I$(top_builddir) \
148                 -I$(top_builddir)/libs \
149                 --c-include "gst/check/check.h" \
150                 --add-include-path=$(top_builddir)/gst \
151                 --library-path=$(top_builddir)/gst \
152                 --library=libgstcheck-@GST_API_VERSION@.la \
153                 --include=Gst-@GST_API_VERSION@ \
154                 --libtool="$(top_builddir)/libtool" \
155                 --pkg gstreamer-@GST_API_VERSION@ \
156                 --pkg-export gstreamer-check-@GST_API_VERSION@ \
157                 --add-init-section="gst_init(NULL,NULL);" \
158                 --output $@ \
159                 $(gir_headers) \
160                 $(gir_sources)
161
162 # INTROSPECTION_GIRDIR/INTROSPECTION_TYPELIBDIR aren't the right place to
163 # install anything - we need to install inside our prefix.
164 girdir = $(datadir)/gir-1.0
165 gir_DATA = $(BUILT_GIRSOURCES)
166
167 typelibsdir = $(libdir)/girepository-1.0/
168
169 typelibs_DATA = $(BUILT_GIRSOURCES:.gir=.typelib)
170
171 %.typelib: %.gir $(INTROSPECTION_COMPILER)
172         $(AM_V_GEN)$(INTROSPECTION_COMPILER) --includedir=$(srcdir) --includedir=$(builddir) --includedir=$(top_builddir)/gst $(INTROSPECTION_COMPILER_OPTS) $< -o $(@F)
173
174 CLEANFILES += $(BUILT_GIRSOURCES) $(typelibs_DATA)
175 endif