04ebd5228efbd8d683100291b70011a020325e95
[platform/upstream/gstreamer.git] / subprojects / gstreamer / libs / gst / base / meson.build
1 gst_base_sources = files(
2   'gstadapter.c',
3   'gstaggregator.c',
4   'gstbaseparse.c',
5   'gstbasesink.c',
6   'gstbasesrc.c',
7   'gstbasetransform.c',
8   'gstbitreader.c',
9   'gstbitwriter.c',
10   'gstbytereader.c',
11   'gstbytewriter.c',
12   'gstcollectpads.c',
13   'gstdataqueue.c',
14   'gstflowcombiner.c',
15   'gstpushsrc.c',
16   'gstqueuearray.c',
17   'gsttypefindhelper.c',
18 )
19
20 gst_base_headers = files(
21   'base.h',
22   'base-prelude.h',
23   'gstadapter.h',
24   'gstaggregator.h',
25   'gstbaseparse.h',
26   'gstbasesink.h',
27   'gstbasesrc.h',
28   'gstbasetransform.h',
29   'gstbitreader.h',
30   'gstbitwriter.h',
31   'gstbytereader.h',
32   'gstbytewriter.h',
33   'gstcollectpads.h',
34   'gstdataqueue.h',
35   'gstflowcombiner.h',
36   'gstpushsrc.h',
37   'gstqueuearray.h',
38   'gsttypefindhelper.h',
39 )
40
41 gst_base = library('gstbase-@0@'.format(apiversion),
42   gst_base_sources,
43   c_args : gst_c_args + ['-DBUILDING_GST_BASE', '-DG_LOG_DOMAIN="GStreamer-Base"'],
44   version : libversion,
45   soversion : soversion,
46   darwin_versions : osxversion,
47   install : true,
48   include_directories : [configinc, libsinc],
49   dependencies : [gobject_dep, glib_dep, gst_dep],
50 )
51
52 library_def = {'lib': gst_base}
53 pkg_name = 'gstreamer-base-1.0'
54 gst_base_gen_sources = []
55 pkgconfig.generate(gst_base,
56   libraries : [libgst],
57   variables : pkgconfig_variables,
58   subdirs : pkgconfig_subdirs,
59   name : pkg_name,
60   description : 'Base classes for GStreamer elements',
61 )
62
63 if build_gir
64   gst_gir_extra_args = gir_init_section + [ '--c-include=gst/base/base.h' ]
65   gir = {
66     'sources' : gst_base_sources + gst_base_headers,
67     'namespace' : 'GstBase',
68     'nsversion' : apiversion,
69     'identifier_prefix' : 'Gst',
70     'symbol_prefix' : 'gst',
71     'export_packages' : pkg_name,
72     'dependencies' : [gst_dep],
73     'include_directories' : [configinc, libsinc, privinc],
74     'includes' : ['GLib-2.0', 'GObject-2.0', 'GModule-2.0', 'Gst-1.0'],
75     'install' : true,
76     'extra_args' : gst_gir_extra_args,
77   }
78
79   library_def += {'gir': [gir]}
80   if not static_build
81     gst_base_gir = gnome.generate_gir(gst_base, kwargs: gir)
82     gst_base_gen_sources += [gst_base_gir]
83   endif
84 endif
85 libraries += [[pkg_name, library_def]]
86
87 gst_base_dep = declare_dependency(link_with : gst_base,
88   include_directories : [libsinc],
89   dependencies : [gst_dep],
90   sources : gst_base_gen_sources)
91
92 meson.override_dependency(pkg_name, gst_base_dep)
93
94 install_headers('base.h',
95   'base-prelude.h',
96   'gstadapter.h',
97   'gstaggregator.h',
98   'gstbaseparse.h',
99   'gstbasesink.h',
100   'gstbasesrc.h',
101   'gstbasetransform.h',
102   'gstbitreader.h',
103   'gstbitwriter.h',
104   'gstbytereader.h',
105   'gstbytewriter.h',
106   'gstcollectpads.h',
107   'gstdataqueue.h',
108   'gstflowcombiner.h',
109   'gstpushsrc.h',
110   'gstqueuearray.h',
111   'gsttypefindhelper.h',
112   subdir : 'gstreamer-1.0/gst/base',
113 )