On Tue, Sep 27, 2022 at 06:27:08PM +0200, Laszlo Ersek wrote:
On 09/27/22 17:59, Daniel P. Berrangé wrote:
On Tue, Sep 27, 2022 at 04:53:08PM +0200, Laszlo Ersek wrote:
On 09/26/22 14:09, Daniel P. Berrangé wrote:
On Mon, Sep 26, 2022 at 12:59:21PM +0100, Richard W.M. Jones wrote:
Apart from Dan's suggestions in patch 1, the series looks good to me.
FWIW RHEL 7 (the earliest distro with PCRE 2) has glib2 2.56.1 & gtk3 3.22.30, so supporting any earlier versions also seems pointless, so that might be another thing to review. We could make USE_POPOVERS unconditional, and make gui-gtk3-compat.h considerably less complicated.
Say you pick 3.22 as your official min and check this with pkg-config in configure, then you can further define
GDK_VERSION_MIN_REQUIRED=GDK_VERSION_3_22 GDK_VERSION_MAX_ALLOWED=GDK_VERSION_3_22
The former will give you warnings if you use any API that was already deprecated in 3.22 - this is something that should be re-written to use the recommended modern alternative API.
Is "GDK" a muscle-memory typo (because "GDK" does exist)? Did you mean GTK?
It looks odd, but I really do mean GDK here. It affects both the GDK and GTK include files (GDK is a layer below GTK).
Right, I've found a diagram here:
https://en.wikipedia.org/wiki/GDK
What I didn't know was that the GTK and GDK versions were supposed to be in sync. In virt-p2v, we care about GTK (and maybe glib); I've not been aware that we care about APIs at the GDK level. So enforcing a GDK version seemed strange, as a proxy for the GTK version.
Practically speaking in terms of configure/meson checks it is sufficient to merely check for GTK, as GTK's pkg-config file has a dependancy on GDK's pkg-config file. It should be impossible end up with mis-matched versions of GTK & GDK unless you've gone out of your way to intentionally break their installation in some way. It does mean you end up with the strange scenario, where you refer to GTK for the pkg-config test, but for the API version checking #defines I describe, you refer to GDK instead. With regards, Daniel -- |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o- https://fstop138.berrange.com :| |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|