107ea7d0fc935b56ac3bf23130072137de895cc5
[platform/upstream/gstreamer.git] / validate / gst / validate / meson.build
1 gstvalidate_sources = [
2     'gst-validate-runner.c',
3     'gst-validate-reporter.c',
4     'gst-validate-mockdecryptor.c',
5     'gst-validate-monitor.c',
6     'gst-validate-element-monitor.c',
7     'gst-validate-bin-monitor.c',
8     'gst-validate-pipeline-monitor.c',
9     'gst-validate-pad-monitor.c',
10     'gst-validate-monitor-factory.c',
11     'gst-validate-report.c',
12     'gst-validate-scenario.c',
13     'gst-validate-override.c',
14     'gst-validate-utils.c',
15     'gst-validate-override-registry.c',
16     'media-descriptor.c',
17     'media-descriptor-writer.c',
18     'media-descriptor-parser.c',
19     'gst-validate-media-info.c',
20     'validate.c',
21 ]
22
23 gstvalidate_headers = [
24     'validate.h',
25     'validate-prelude.h',
26     'gst-validate-types.h',
27     'gst-validate-bin-monitor.h',
28     'gst-validate-pipeline-monitor.h',
29     'gst-validate-element-monitor.h',
30     'gst-validate-enums.h',
31     'media-descriptor.h',
32     'media-descriptor-writer.h',
33     'media-descriptor-parser.h',
34     'gst-validate-monitor-factory.h',
35     'gst-validate-monitor.h',
36     'gst-validate-override.h',
37     'gst-validate-override-registry.h',
38     'gst-validate-pad-monitor.h',
39     'gst-validate-reporter.h',
40     'gst-validate-report.h',
41     'gst-validate-runner.h',
42     'gst-validate-scenario.h',
43     'gst-validate-utils.h',
44     'gst-validate-media-info.h'
45 ]
46
47 install_headers(gstvalidate_headers, subdir : 'gstreamer-1.0/gst/validate')
48
49 gst_validate_enums = gnome.mkenums('gstvalidateenumtypes',
50   sources : gstvalidate_headers,
51   h_template : 'gst-validate-enum-types.h.template',
52   c_template : 'gst-validate-enum-types.c.template',
53   install_header : true,
54   install_dir : join_paths(get_option('includedir'), 'gstreamer-1.0/gst/validate'))
55
56 gstvalidate = library('gstvalidate-1.0',
57     sources: gstvalidate_sources + gst_validate_enums,
58     version : libversion,
59     soversion : soversion,
60     darwin_versions : osxversion,
61     include_directories : [inc_dirs],
62     install: true,
63     c_args : [gst_c_args] + ['-D_GNU_SOURCE'],
64     dependencies : [gst_dep, gstbase_dep, glib_dep, gio_dep,
65                     gmodule_dep, gst_pbutils_dep, mathlib, json_dep])
66
67 gstvalidatetracer = library('gstvalidatetracer',
68     sources: gstvalidate_sources + gst_validate_enums,
69     include_directories : [inc_dirs],
70     install: true,
71     c_args : [gst_c_args] + ['-D__GST_VALIDATE_PLUGIN', '-D_GNU_SOURCE'],
72     install_dir : plugins_install_dir,
73     dependencies : [gst_dep, gstbase_dep, glib_dep, gio_dep, gmodule_dep,
74                     gst_pbutils_dep, mathlib, json_dep])
75
76 validate_gen_sources = []
77 if build_gir
78     gst_validate_gir_extra_args = gir_init_section + [ '--c-include=gst/validate/validate.h' ]
79     validate_gir = gnome.generate_gir(gstvalidate,
80             sources : gstvalidate_sources + gstvalidate_headers + gst_validate_enums,
81             nsversion : '1.0',
82             namespace : 'GstValidate',
83             symbol_prefix : 'gst_validate',
84             identifier_prefix : 'GstValidate',
85             export_packages : 'gst-validate-' + apiversion,
86             includes : ['GObject-2.0',
87                         'GLib-2.0',
88                         'Gio-2.0',
89                         'GModule-2.0',
90                         'Gst-' + apiversion,
91                         'GstPbutils-' + apiversion],
92             install : true,
93             dependencies : [gst_dep, gstbase_dep, glib_dep, gio_dep, gst_pbutils_dep],
94             extra_args : gst_validate_gir_extra_args,
95     )
96     validate_gen_sources += [validate_gir]
97 endif
98
99 validate_dep = declare_dependency(link_with : gstvalidate,
100   include_directories : [inc_dirs],
101   dependencies : [gst_dep, glib_dep, gio_dep, gmodule_dep,
102                   gst_pbutils_dep, mathlib],
103   sources : validate_gen_sources
104 )
105
106 pkgconfig.generate(gstvalidatetracer, install_dir : plugins_pkgconfig_install_dir)