From: Tim-Philipp Müller Date: Sat, 18 Aug 2018 20:15:23 +0000 (+0100) Subject: meson: add options to disable gobject cast checks and glib asserts X-Git-Tag: 1.16.2~43 X-Git-Url: http://review.tizen.org/git/?p=platform%2Fupstream%2Fgst-plugins-ugly.git;a=commitdiff_plain;h=d24e1caf8ee9dc736cd628a43b6aa199c00284be meson: add options to disable gobject cast checks and glib asserts ... and define G_DISABLE_DEPRECATED for development versions, like we do in autotools. --- diff --git a/meson.build b/meson.build index 97ac896..6f720e3 100644 --- a/meson.build +++ b/meson.build @@ -14,6 +14,7 @@ gst_version_micro = version_arr[2].to_int() else gst_version_nano = 0 endif +gst_version_is_dev = gst_version_minor % 2 == 1 and gst_version_micro < 90 have_cxx = add_languages('cpp', required : false) @@ -228,6 +229,24 @@ foreach extra_arg : warning_c_flags endif endforeach +# Define G_DISABLE_DEPRECATED for development versions +if gst_version_is_dev + message('Disabling deprecated GLib API') + add_project_arguments('-DG_DISABLE_DEPRECATED', language: 'c') +endif + +cast_checks = get_option('gobject-cast-checks') +if cast_checks.disabled() or (cast_checks.auto() and not gst_version_is_dev) + message('Disabling GLib cast checks') + add_project_arguments('-DG_DISABLE_CAST_CHECKS', language: 'c') +endif + +glib_asserts = get_option('glib-asserts') +if glib_asserts.disabled() or (glib_asserts.auto() and not gst_version_is_dev) + message('Disabling GLib asserts') + add_project_arguments('-DG_DISABLE_ASSERT', language: 'c') +endif + presetdir = join_paths(get_option('datadir'), 'gstreamer-' + api_version, 'presets') pkgconfig = import('pkgconfig') diff --git a/meson_options.txt b/meson_options.txt index 31c860a..c72110a 100644 --- a/meson_options.txt +++ b/meson_options.txt @@ -18,10 +18,16 @@ option('mpeg2dec', type : 'feature', value : 'auto', description : 'MPEG 2 video option('sidplay', type : 'feature', value : 'auto', description : 'Commodore 64 audio decoder plugin') option('x264', type : 'feature', value : 'auto', description : 'H.264 video encoder plugin') -# Common options +# Common feature options option('nls', type : 'feature', value : 'auto', yield: true, description : 'Enable native language support (translations)') option('orc', type : 'feature', value : 'auto', yield : true) +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') +option('glib-asserts', type : 'feature', value : 'enabled', yield : true, + description: 'Enable GLib assertion (auto = enabled for development, disabled for stable releases') + +# Common options option('package-name', type : 'string', yield : true, description : 'package name to use in plugins') option('package-origin', type : 'string', value : 'Unknown package origin', yield: true,