From 73e28e6c61285c78e38a76f93a0c5171c7846c3b Mon Sep 17 00:00:00 2001 From: Marvin W Date: Fri, 3 Jan 2025 21:55:20 +0100 Subject: Meson: Add all defines to handle dependency versions --- plugins/rtp/meson.build | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) (limited to 'plugins/rtp/meson.build') diff --git a/plugins/rtp/meson.build b/plugins/rtp/meson.build index a222a05a..a8cadeaf 100644 --- a/plugins/rtp/meson.build +++ b/plugins/rtp/meson.build @@ -27,16 +27,22 @@ sources = files( c_args = [ '-DG_LOG_DOMAIN="rtp"', ] -vala_args = [ - '--vapidir', meson.current_source_dir() / 'vapi', -] +vala_args = [] if dep_webrtc_audio_processing.found() - dependencies += [dep_webrtc_audio_processing] - sources += files( - 'src/voice_processor.vala', + voice_dependencies = [ + dep_gstreamer_audio, + dep_webrtc_audio_processing, + ] + voice_sources = files( 'src/voice_processor_native.cpp', ) + lib_rtp_voice_processor = static_library('rtp-voice-processor', voice_sources, c_args: c_args, dependencies: voice_dependencies, install: false) + dep_rtp_voice_processor = declare_dependency(link_with: lib_rtp_voice_processor) vala_args += ['-D', 'WITH_VOICE_PROCESSOR'] + dependencies += [dep_rtp_voice_processor] + sources += files( + 'src/voice_processor.vala', + ) endif if dep_gstreamer_rtp.version() == 'unknown' or dep_gstreamer_rtp.version().version_compare('>=1.16') vala_args += ['-D', 'GST_1_16'] @@ -47,6 +53,9 @@ endif if dep_gstreamer_rtp.version() == 'unknown' or dep_gstreamer_rtp.version().version_compare('>=1.20') vala_args += ['-D', 'GST_1_20'] endif +if meson.get_compiler('vala').version().version_compare('<0.56.1') + vala_args += ['--vapidir', meson.current_source_dir() / 'vapi'] +endif if get_option('plugin-rtp-h264').allowed() vala_args += ['-D', 'ENABLE_H264'] endif @@ -59,5 +68,6 @@ endif if get_option('plugin-rtp-vp9').allowed() vala_args += ['-D', 'ENABLE_VP9'] endif + lib_rtp = shared_library('rtp', sources, name_prefix: '', c_args: c_args, vala_args: vala_args, include_directories: include_directories('src'), dependencies: dependencies, install: true, install_dir: get_option('libdir') / 'dino/plugins') dep_rtp = declare_dependency(link_with: lib_rtp, include_directories: include_directories('.')) -- cgit v1.2.3-70-g09d2