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@xxxxxxxxxx> >> --- >> 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@'.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