meson: add glib-checks option to disable API guards and such

We want this enabled by default, also in releases, but people
may want to disable this for performance-critical workloads or
on embedded devices.
This commit is contained in:
Tim-Philipp Müller 2018-09-19 11:31:43 +01:00
parent 8f9339ef78
commit 09dac522ca
2 changed files with 8 additions and 0 deletions

View file

@ -78,6 +78,12 @@ if glib_asserts.disabled() or (glib_asserts.auto() and not gst_version_is_dev)
add_project_arguments('-DG_DISABLE_ASSERT', language: 'c') add_project_arguments('-DG_DISABLE_ASSERT', language: 'c')
endif endif
glib_checks = get_option('glib-checks')
if glib_checks.disabled() or (glib_checks.auto() and not gst_version_is_dev)
message('Disabling GLib checks')
add_project_arguments('-DG_DISABLE_CHECKS', language: 'c')
endif
cdata = configuration_data() cdata = configuration_data()
cdata.set_quoted('GST_API_VERSION', apiversion) cdata.set_quoted('GST_API_VERSION', apiversion)
cdata.set_quoted('GST_DATADIR', join_paths(prefix, get_option('datadir'))) cdata.set_quoted('GST_DATADIR', join_paths(prefix, get_option('datadir')))

View file

@ -34,6 +34,8 @@ option('gobject-cast-checks', type : 'feature', value : 'auto', yield : true,
description: 'Enable run-time GObject cast checks (auto = enabled for development, disabled for stable releases)') description: 'Enable run-time GObject cast checks (auto = enabled for development, disabled for stable releases)')
option('glib-asserts', type : 'feature', value : 'enabled', yield : true, option('glib-asserts', type : 'feature', value : 'enabled', yield : true,
description: 'Enable GLib assertion (auto = enabled for development, disabled for stable releases)') description: 'Enable GLib assertion (auto = enabled for development, disabled for stable releases)')
option('glib-checks', type : 'feature', value : 'enabled', yield : true,
description: 'Enable GLib checks such as API guards (auto = enabled for development, disabled for stable releases)')
# Common options # Common options
option('package-name', type : 'string', yield : true, option('package-name', type : 'string', yield : true,