Back to development
[platform/upstream/gstreamer.git] / subprojects / gstreamer-sharp / sources / meson.build
1 raw_api_fname = join_paths(meson.current_source_dir(), meson.project_name() + '-api.raw')
2 metadata = files(meson.project_name() + '.metadata')
3
4 abi_includes = 'glib.h,gst/gst.h,gst/video/video.h,gst/audio/audio.h,gst/rtsp/rtsp.h,gst/app/app.h,gst/audio/audio.h,gst/base/base.h,gst/controller/controller.h,gst/fft/fft.h,gst/net/net.h,gst/pbutils/gstaudiovisualizer.h,gst/pbutils/pbutils.h,gst/rtp/rtp.h,gst/rtsp/rtsp.h,gst/sdp/sdp.h,gst/tag/tag.h,gst/video/video.h,gst/video/gstvideoaffinetransformationmeta.h,gst/net/gstnetcontrolmessagemeta.h,gst/webrtc/webrtc.h'
5
6 sources = [
7     'custom/Adapter.cs',
8     'custom/Application.cs',
9     'custom/AppSink.cs',
10     'custom/AppSrc.cs',
11     'custom/AudioFilter.cs',
12     'custom/Bin.cs',
13     'custom/Buffer.cs',
14     'custom/Bus.cs',
15     'custom/Caps.cs',
16     'custom/DeviceProvider.cs',
17     'custom/DynamicSignal.cs',
18     'custom/Element.cs',
19     'custom/ElementFactory.cs',
20     'custom/FFTF32.cs',
21     'custom/Iterator.cs',
22     'custom/MapInfo.cs',
23     'custom/Message.cs',
24     'custom/MiniObject.cs',
25     'custom/NavigationAdapter.cs',
26     'custom/Object.cs',
27     'custom/Pad.cs',
28     'custom/Pipeline.cs',
29     'custom/TagList.cs',
30     'custom/Value.cs',
31     'custom/Version.cs',
32     'custom/VideoGLUploadMeta.cs',
33     'custom/Global.cs',
34 ]
35
36 subdir('generated')
37
38 gst_sharp = shared_library('gstreamer-sharp', gst_generate_files, sources,
39         cs_args: ['-nowarn:169', '-nowarn:108', '-nowarn:114', '-unsafe'],
40         dependencies: [glib_sharp_dep, gio_sharp_dep])
41
42 gst_sharp_dep = declare_dependency(dependencies: [glib_sharp_dep, gio_sharp_dep],
43         link_with: gst_sharp)
44
45 if add_languages('c', required: get_option('tests')) and csc.get_id() == 'mono'
46     c_abi_exe = executable('gst_sharp_c_abi', c_abi,
47             c_args: ['-DGST_USE_UNSTABLE_API'],
48             dependencies: [gst_deps])
49
50     cs_abi_exe = executable('gst_sharp_cs_abi', cs_abi,
51             cs_args: ['-nowarn:169', '-nowarn:108', '-nowarn:114', '-unsafe'],
52             dependencies: [gst_sharp_dep])
53
54     test('gstreamer_sharp_abi', diff, args: [c_abi_exe.full_path(), cs_abi_exe.full_path()],
55             env: testsenv)
56 else
57     message('Not running tests ' + csc.get_id())
58 endif
59
60 configure_file(
61     input: 'gstreamer-sharp.dll.config',
62     output: 'gstreamer-sharp.dll.config',
63     copy: true)