gstreamer/subprojects/gst-plugins-bad/ext/vulkan/meson.build
Xavier Claessens b004464ac6 Remove glib and gobject dependencies everywhere
They are part of gst_dep already and we have to make sure to always have
gst_dep. The order in dependencies matters, because it is also the order
in which Meson will set -I args. We want gstreamer's config.h to take
precedence over glib's private config.h when it's a subproject.

While at it, remove useless fallback args for gmodule/gio dependencies,
only gstreamer core needs it.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2031>
2022-04-01 16:32:17 +00:00

55 lines
1.5 KiB
Meson

if get_option('vulkan').disabled()
subdir_done()
endif
if not gstvulkan_dep.found()
if get_option('vulkan').enabled()
error('GStreamer Vulkan plugin required via options, but needed dependencies not found.')
else
subdir_done()
endif
endif
# Should already have checked for this
assert(glslc.found(), 'Expected glslc to be available')
subdir('shaders')
vulkan_sources = [
'gstvulkan.c',
'gstvulkanelement.c',
'vkcolorconvert.c',
'vkdownload.c',
'vkdeviceprovider.c',
'vkimageidentity.c',
'vkshaderspv.c',
'vksink.c',
'vkupload.c',
'vkviewconvert.c',
]
vulkan_plugin_enum_headers = [
'vkviewconvert.h',
]
vulkan_plugin_enums = gnome.mkenums_simple('gstvulkan-plugins-enumtypes',
sources : vulkan_plugin_enum_headers,
body_prefix : '#ifdef HAVE_CONFIG_H\n#include "config.h"\n#endif',
header_prefix : '#include <gst/gst.h>')
vulkan_plugin_enumtypes_c = vulkan_plugin_enums[0]
vulkan_plugin_enumtypes_h = vulkan_plugin_enums[1]
vulkan_plugin_gen_sources = [vulkan_plugin_enumtypes_h]
gstvulkan_plugin = library('gstvulkan',
vulkan_sources, vulkan_compiled_shader_sources, vulkan_plugin_enumtypes_c, vulkan_plugin_enumtypes_h,
c_args : gst_plugins_bad_args,
objc_args : gst_plugins_bad_args,
link_args : noseh_link_args,
include_directories : [configinc],
dependencies : [gstvideo_dep, gstbase_dep, gstvulkan_dep, vulkan_dep, gio_dep],
install : true,
install_dir : plugins_install_dir,
)
pkgconfig.generate(gstvulkan_plugin, install_dir : plugins_pkgconfig_install_dir)
plugins += [gstvulkan_plugin]