mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-30 12:10:37 +00:00
41 lines
1.3 KiB
Meson
41 lines
1.3 KiB
Meson
wasapi_sources = [
|
|
'gstmmdeviceenumerator.cpp',
|
|
'gstwasapi.c',
|
|
'gstwasapisrc.c',
|
|
'gstwasapisink.c',
|
|
'gstwasapiutil.c',
|
|
'gstwasapidevice.c',
|
|
]
|
|
|
|
if host_system != 'windows'
|
|
if get_option('wasapi').disabled()
|
|
subdir_done()
|
|
elif get_option('wasapi').enabled()
|
|
error('Cannot build wasapi plugin when not building for Windows')
|
|
endif
|
|
endif
|
|
|
|
ole32_dep = cc.find_library('ole32', required : get_option('wasapi'))
|
|
ksuser_dep = cc.find_library('ksuser', required : get_option('wasapi'))
|
|
have_audioclient_h = cc.has_header('audioclient.h')
|
|
if not have_audioclient_h and get_option('wasapi').enabled()
|
|
error('wasapi plugin enabled but audioclient.h not found')
|
|
endif
|
|
|
|
if ole32_dep.found() and ksuser_dep.found() and have_audioclient_h
|
|
wasapi_args = ['-DCOBJMACROS']
|
|
if cc.has_header_symbol('audioclient.h', 'AUDCLNT_STREAMOPTIONS_NONE')
|
|
wasapi_args += ['-DHAVE_AUDCLNT_STREAMOPTIONS']
|
|
endif
|
|
|
|
gstwasapi = library('gstwasapi',
|
|
wasapi_sources,
|
|
c_args : gst_plugins_bad_args + wasapi_args,
|
|
cpp_args: gst_plugins_bad_args,
|
|
include_directories : [configinc],
|
|
dependencies : [gstaudio_dep, ole32_dep, ksuser_dep],
|
|
install : true,
|
|
install_dir : plugins_install_dir)
|
|
pkgconfig.generate(gstwasapi, install_dir : plugins_pkgconfig_install_dir)
|
|
plugins += [gstwasapi]
|
|
endif
|