mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-02-19 20:46:22 +00:00
meson: Allow others to build GIR files when using GStreamer as subproject
And add a way to disable the introspection and bump version to 1.9.2
This commit is contained in:
parent
b3a8885e35
commit
ed61bff072
3 changed files with 14 additions and 6 deletions
|
@ -205,6 +205,9 @@ if libtype != 'shared'
|
||||||
libgst = libgst_static
|
libgst = libgst_static
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
# Make sure that subproject building gir files work
|
||||||
|
gst_incdirs = [configinc]
|
||||||
|
gst_gen_sources = [gstenum_h]
|
||||||
if libtype != 'static'
|
if libtype != 'static'
|
||||||
libgst_shared = shared_library('gstreamer-1.0', gst_sources,
|
libgst_shared = shared_library('gstreamer-1.0', gst_sources,
|
||||||
gstenum_h, gstenum_c, grammar, parser, gst_registry,
|
gstenum_h, gstenum_c, grammar, parser, gst_registry,
|
||||||
|
@ -230,7 +233,9 @@ if libtype != 'static'
|
||||||
'-I' + meson.current_build_dir() + '/..',
|
'-I' + meson.current_build_dir() + '/..',
|
||||||
'--cflags-end']
|
'--cflags-end']
|
||||||
endif
|
endif
|
||||||
gnome.generate_gir(libgst_shared,
|
|
||||||
|
gst_incdirs += [include_directories(meson.current_build_dir() + '/..')]
|
||||||
|
gst_gen_sources += [gnome.generate_gir(libgst_shared,
|
||||||
sources : gst_sources + gst_headers,
|
sources : gst_sources + gst_headers,
|
||||||
namespace : 'Gst',
|
namespace : 'Gst',
|
||||||
nsversion : apiversion,
|
nsversion : apiversion,
|
||||||
|
@ -240,13 +245,13 @@ if libtype != 'static'
|
||||||
includes : ['GLib-2.0', 'GObject-2.0', 'GModule-2.0' ],
|
includes : ['GLib-2.0', 'GObject-2.0', 'GModule-2.0' ],
|
||||||
install : true,
|
install : true,
|
||||||
extra_args : gst_gir_extra_args,
|
extra_args : gst_gir_extra_args,
|
||||||
)
|
)]
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
gst_dep = declare_dependency(link_with : libgst,
|
gst_dep = declare_dependency(link_with : libgst,
|
||||||
include_directories : [configinc],
|
include_directories : gst_incdirs,
|
||||||
dependencies : [glib_dep, gobject_dep, gmodule_dep],
|
dependencies : [glib_dep, gobject_dep, gmodule_dep],
|
||||||
# Everything that uses libgst needs this built to compile
|
# Everything that uses libgst needs this built to compile
|
||||||
sources : [gstenum_h],
|
sources : gst_gen_sources,
|
||||||
)
|
)
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
project('gstreamer', 'c', 'cpp',
|
project('gstreamer', 'c', 'cpp',
|
||||||
version : '1.9.1.1',
|
version : '1.9.2.1',
|
||||||
meson_version : '>= 0.33.0',
|
meson_version : '>= 0.33.0',
|
||||||
default_options : [ 'warning_level=1',
|
default_options : [ 'warning_level=1',
|
||||||
'c_std=gnu99',
|
'c_std=gnu99',
|
||||||
|
@ -260,7 +260,7 @@ gir = find_program('g-ir-scanner', required : false)
|
||||||
gnome = import('gnome')
|
gnome = import('gnome')
|
||||||
|
|
||||||
# Fixme, not very elegant.
|
# Fixme, not very elegant.
|
||||||
build_gir = gir.found() and not meson.is_cross_build()
|
build_gir = gir.found() and not meson.is_cross_build() and not get_option('disable_introspection')
|
||||||
|
|
||||||
gir_init_section = [ '--add-init-section=extern void gst_init(gint*,gchar**); gst_init(NULL,NULL);' ]
|
gir_init_section = [ '--add-init-section=extern void gst_init(gint*,gchar**); gst_init(NULL,NULL);' ]
|
||||||
vs_module_defs_dir = meson.source_root() + '/win32/common/'
|
vs_module_defs_dir = meson.source_root() + '/win32/common/'
|
||||||
|
|
|
@ -3,3 +3,6 @@ option('poisoning', type : 'boolean', value : false)
|
||||||
option('disable_examples', type : 'boolean', value : false)
|
option('disable_examples', type : 'boolean', value : false)
|
||||||
option('disable_registry', type : 'boolean', value : false)
|
option('disable_registry', type : 'boolean', value : false)
|
||||||
option('library_format', type : 'combo', choices : ['shared', 'static', 'both'], value : 'shared')
|
option('library_format', type : 'combo', choices : ['shared', 'static', 'both'], value : 'shared')
|
||||||
|
option('disable_introspection',
|
||||||
|
type : 'boolean', value : false,
|
||||||
|
description : 'Whether to disable the introspection generation')
|
||||||
|
|
Loading…
Reference in a new issue