2017-01-31 09:56:59 +00:00
|
|
|
webrtc_sources = [
|
|
|
|
'dtlstransport.c',
|
|
|
|
'icetransport.c',
|
|
|
|
'rtcsessiondescription.c',
|
|
|
|
'rtpreceiver.c',
|
|
|
|
'rtpsender.c',
|
|
|
|
'rtptransceiver.c',
|
2020-06-01 11:46:03 +00:00
|
|
|
'datachannel.c',
|
2021-05-07 06:12:25 +00:00
|
|
|
'sctptransport.c',
|
2017-01-31 09:56:59 +00:00
|
|
|
]
|
|
|
|
|
|
|
|
webrtc_headers = [
|
|
|
|
'dtlstransport.h',
|
|
|
|
'icetransport.h',
|
|
|
|
'rtcsessiondescription.h',
|
|
|
|
'rtpreceiver.h',
|
|
|
|
'rtpsender.h',
|
|
|
|
'rtptransceiver.h',
|
2020-06-01 11:46:03 +00:00
|
|
|
'datachannel.h',
|
2017-01-31 09:56:59 +00:00
|
|
|
'webrtc_fwd.h',
|
|
|
|
'webrtc.h',
|
2021-05-07 06:12:25 +00:00
|
|
|
'sctptransport.h',
|
2017-01-31 09:56:59 +00:00
|
|
|
]
|
|
|
|
|
|
|
|
webrtc_enumtypes_headers = [
|
|
|
|
'dtlstransport.h',
|
|
|
|
'icetransport.h',
|
|
|
|
'rtptransceiver.h',
|
|
|
|
'webrtc_fwd.h',
|
|
|
|
]
|
|
|
|
|
2018-03-22 14:07:53 +00:00
|
|
|
webrtc_enums = gnome.mkenums_simple('webrtc-enumtypes',
|
|
|
|
sources : webrtc_enumtypes_headers,
|
2018-09-24 10:52:22 +00:00
|
|
|
body_prefix : '#ifdef HAVE_CONFIG_H\n#include "config.h"\n#endif',
|
2018-03-22 14:07:53 +00:00
|
|
|
header_prefix : '#include <gst/webrtc/webrtc_fwd.h>',
|
|
|
|
decorator: 'GST_WEBRTC_API',
|
|
|
|
install_header: true,
|
2018-08-10 11:57:47 +00:00
|
|
|
install_dir : join_paths(get_option('includedir'), 'gstreamer-1.0/gst/webrtc/'))
|
|
|
|
|
2018-03-22 14:07:53 +00:00
|
|
|
gstwebrtc_c = webrtc_enums[0]
|
|
|
|
gstwebrtc_h = webrtc_enums[1]
|
2017-01-31 09:56:59 +00:00
|
|
|
|
|
|
|
webrtc_gen_sources = [gstwebrtc_h]
|
|
|
|
|
2018-03-15 10:04:00 +00:00
|
|
|
gstwebrtc_dependencies = [gstbase_dep, gstsdp_dep]
|
2017-01-31 09:56:59 +00:00
|
|
|
|
|
|
|
gstwebrtc = library('gstwebrtc-' + api_version,
|
|
|
|
webrtc_sources, gstwebrtc_c, gstwebrtc_h,
|
2018-09-24 10:52:22 +00:00
|
|
|
c_args : gst_plugins_bad_args + ['-DGST_USE_UNSTABLE_API', '-DBUILDING_GST_WEBRTC'],
|
2017-01-31 09:56:59 +00:00
|
|
|
include_directories : [configinc, libsinc],
|
|
|
|
version : libversion,
|
|
|
|
soversion : soversion,
|
2018-08-31 09:07:46 +00:00
|
|
|
darwin_versions : osxversion,
|
2017-01-31 09:56:59 +00:00
|
|
|
install : true,
|
|
|
|
dependencies : gstwebrtc_dependencies,
|
|
|
|
)
|
|
|
|
|
2018-04-07 20:33:47 +00:00
|
|
|
pkgconfig.generate(gstwebrtc,
|
|
|
|
libraries : [gst_dep, gstbase_dep],
|
|
|
|
variables : pkgconfig_variables,
|
|
|
|
subdirs : pkgconfig_subdirs,
|
|
|
|
name : 'gstreamer-webrtc-1.0',
|
|
|
|
description : 'GStreamer WebRTC support',
|
|
|
|
)
|
|
|
|
|
2018-03-15 10:04:00 +00:00
|
|
|
if build_gir
|
|
|
|
webrtc_gir = gnome.generate_gir(gstwebrtc,
|
2018-03-15 14:45:46 +00:00
|
|
|
sources : webrtc_sources + webrtc_headers + [gstwebrtc_h],
|
2018-03-15 10:04:00 +00:00
|
|
|
namespace : 'GstWebRTC',
|
|
|
|
nsversion : api_version,
|
|
|
|
identifier_prefix : 'Gst',
|
|
|
|
symbol_prefix : 'gst',
|
|
|
|
export_packages : 'gstreamer-webrtc-1.0',
|
|
|
|
includes : ['Gst-1.0', 'GstSdp-1.0'],
|
|
|
|
install : true,
|
|
|
|
extra_args : gir_init_section + ['-DGST_USE_UNSTABLE_API'] + ['--c-include=gst/webrtc/webrtc.h'],
|
|
|
|
dependencies : [gstbase_dep, gstsdp_dep]
|
|
|
|
)
|
|
|
|
webrtc_gen_sources += webrtc_gir
|
|
|
|
endif
|
|
|
|
|
2017-01-31 09:56:59 +00:00
|
|
|
install_headers(webrtc_headers, subdir : 'gstreamer-1.0/gst/webrtc')
|
|
|
|
|
|
|
|
gstwebrtc_dep = declare_dependency(link_with: gstwebrtc,
|
|
|
|
include_directories : libsinc,
|
2018-03-15 10:04:00 +00:00
|
|
|
sources: webrtc_gen_sources,
|
2017-01-31 09:56:59 +00:00
|
|
|
dependencies: gstwebrtc_dependencies)
|
2018-04-07 20:33:47 +00:00
|
|
|
|
|
|
|
meson.override_dependency('gstreamer-webrtc-1.0', gstwebrtc_dep)
|