On 5/3/21 10:17 AM, Pavel Hrdina wrote:
On Fri, Apr 30, 2021 at 07:18:49AM +0200, Michal Privoznik wrote:
> So far we have three places where glib version is recorded:
> meson.build and then in config.h. The latter is so well hidden
> that it's easy to miss when bumping minimal glib version in the
> former. With a bit of python^Wmeson string magic
> GLIB_VERSION_MIN_REQUIRED and GLIB_VERSION_MAX_ALLOWED macros can
> be defined to match glib_version from meson.build.
>
> Signed-off-by: Michal Privoznik <mprivozn(a)redhat.com>
> ---
> config.h | 10 ----------
> meson.build | 7 +++++++
> 2 files changed, 7 insertions(+), 10 deletions(-)
>
> diff --git a/config.h b/config.h
> index ca6720f37d..0eacfd139d 100644
> --- a/config.h
> +++ b/config.h
> @@ -51,13 +51,3 @@
> #else
> # error You either need at least GCC 4.8 or Clang 3.4 or XCode Clang 5.1 to compile
libvirt
> #endif
> -
> -/* Ask for warnings for anything that was marked deprecated in
> - * the defined version, or before. It is a candidate for rewrite.
> - */
> -#define GLIB_VERSION_MIN_REQUIRED GLIB_VERSION_2_48
> -
> -/* Ask for warnings if code tries to use function that did not
> - * exist in the defined version. These risk breaking builds
> - */
> -#define GLIB_VERSION_MAX_ALLOWED GLIB_VERSION_2_48
> diff --git a/meson.build b/meson.build
> index 951da67896..597e5d8a13 100644
> --- a/meson.build
> +++ b/meson.build
> @@ -949,6 +949,13 @@ endif
> glib_dep = declare_dependency(
> dependencies: [ glib_dep, gobject_dep, gio_dep ],
> )
> +glib_version_arr=glib_version.split('.')
s/=/ = /
In the spirit of removing duplicated code how about having another
variable:
glib_version_str = 'GLIB_VERSION_@0@_@1(a)'.format(glib_version_arr[0],
glib_version_arr[1])
and using it in the following code?
Sounds good. I was happy that it worked and did not think that much
about it. Let me send v2.
Michal