mirror of
https://github.com/Rafostar/clapper.git
synced 2025-09-02 09:22:01 +02:00
Our autogenerated MPRIS code needs it. On some packaging systems this might be included outside of glib, so depend on it explicitly.
107 lines
3.0 KiB
Meson
Vendored
107 lines
3.0 KiB
Meson
Vendored
gstclapper_sources = [
|
|
'gstclapper.c',
|
|
'gstclapper-signal-dispatcher.c',
|
|
'gstclapper-video-renderer.c',
|
|
'gstclapper-media-info.c',
|
|
'gstclapper-g-main-context-signal-dispatcher.c',
|
|
'gstclapper-video-overlay-video-renderer.c',
|
|
'gstclapper-visualization.c',
|
|
'gstclapper-mpris.c',
|
|
'gstclapper-gtk4-plugin.c',
|
|
|
|
'gtk4/gstclapperglsink.c',
|
|
'gtk4/gstgtkutils.c',
|
|
'gtk4/gtkclapperglwidget.c',
|
|
'gtk4/gstclapperglutils.c',
|
|
]
|
|
gstclapper_headers = [
|
|
'clapper.h',
|
|
'clapper-prelude.h',
|
|
'gstclapper.h',
|
|
'gstclapper-types.h',
|
|
'gstclapper-signal-dispatcher.h',
|
|
'gstclapper-video-renderer.h',
|
|
'gstclapper-media-info.h',
|
|
'gstclapper-g-main-context-signal-dispatcher.h',
|
|
'gstclapper-video-overlay-video-renderer.h',
|
|
'gstclapper-visualization.h',
|
|
'gstclapper-mpris.h',
|
|
'gstclapper-gtk4-plugin.h',
|
|
]
|
|
gstclapper_defines = [
|
|
'-DHAVE_CONFIG_H',
|
|
'-DBUILDING_GST_CLAPPER',
|
|
'-DGST_USE_UNSTABLE_API',
|
|
'-DHAVE_GTK_GL',
|
|
]
|
|
gtk_deps = [gstgl_dep, gstglproto_dep]
|
|
have_gtk_gl_windowing = false
|
|
|
|
gtk4_dep = dependency('gtk4', required: true)
|
|
|
|
if not gtk4_dep.version().version_compare('>=4.0.0')
|
|
error('GTK4 version on this system is too old')
|
|
endif
|
|
|
|
if gst_gl_have_window_x11 and (gst_gl_have_platform_egl or gst_gl_have_platform_glx)
|
|
gtk_x11_dep = dependency('gtk4-x11', required: false)
|
|
if gtk_x11_dep.found()
|
|
gtk_deps += gtk_x11_dep
|
|
if gst_gl_have_platform_glx
|
|
gtk_deps += gstglx11_dep
|
|
endif
|
|
have_gtk_gl_windowing = true
|
|
endif
|
|
endif
|
|
|
|
if gst_gl_have_window_wayland and gst_gl_have_platform_egl
|
|
gtk_wayland_dep = dependency('gtk4-wayland', required: false)
|
|
if gtk_wayland_dep.found()
|
|
gtk_deps += [gtk_wayland_dep, gstglwayland_dep]
|
|
have_gtk_gl_windowing = true
|
|
endif
|
|
endif
|
|
|
|
if gst_gl_have_platform_egl
|
|
gtk_deps += gstglegl_dep
|
|
endif
|
|
|
|
if not have_gtk_gl_windowing
|
|
error('GTK4 widget requires GL windowing')
|
|
endif
|
|
|
|
gstclapper_mpris_gdbus = gnome.gdbus_codegen('gstclapper-mpris-gdbus',
|
|
sources: '../../../data/gstclapper-mpris-gdbus.xml',
|
|
interface_prefix: 'org.mpris.',
|
|
namespace: 'GstClapperMpris'
|
|
)
|
|
|
|
gstclapper = library('gstclapper-' + api_version,
|
|
gstclapper_sources + gstclapper_mpris_gdbus,
|
|
c_args: gstclapper_defines,
|
|
link_args: noseh_link_args,
|
|
include_directories: [configinc, libsinc],
|
|
version: libversion,
|
|
install: true,
|
|
install_dir: pkglibdir,
|
|
dependencies: [gtk4_dep, glib_dep, gio_dep, giounix_dep,
|
|
gstbase_dep, gstvideo_dep, gstaudio_dep,
|
|
gsttag_dep, gstpbutils_dep, libm] + gtk_deps,
|
|
)
|
|
|
|
clapper_gir = gnome.generate_gir(gstclapper,
|
|
sources: gstclapper_sources + gstclapper_headers,
|
|
namespace: 'GstClapper',
|
|
nsversion: api_version,
|
|
identifier_prefix: 'Gst',
|
|
symbol_prefix: 'gst',
|
|
export_packages: 'gstreamer-clapper-1.0',
|
|
includes: ['Gst-1.0', 'GstPbutils-1.0', 'GstBase-1.0', 'GstVideo-1.0',
|
|
'GstAudio-1.0', 'GstTag-1.0'],
|
|
install: true,
|
|
install_dir_typelib: join_paths(pkglibdir, 'girepository-1.0'),
|
|
extra_args: gir_init_section + ['-DGST_USE_UNSTABLE_API'],
|
|
dependencies: [gstbase_dep, gstvideo_dep, gstaudio_dep,
|
|
gsttag_dep, gstpbutils_dep]
|
|
)
|