[gtk] Update to 4.22.0#48982
Conversation
0a22baf to
9e3b4e6
Compare
|
Requires |
|
This is a known blocker. |
0960b26 to
4aa18e9
Compare
|
Got a working build locally (just Still draft as I need to review the dependencies due to the big version jump. |
9b2d0b0 to
8a78ed0
Compare
| "introspection": { | ||
| "description": "Build with introspection", | ||
| "supports": "!static", | ||
| "supports": "!static & !windows", |
There was a problem hiding this comment.
just read the initial post. same for the other comment.
There was a problem hiding this comment.
@dg0yt I think @SunBlack is referring to
- DirectX-Headers is required since GTK 4.19.2, but doesn't work in combination with
introspection. Therefore disallow this combination.ERROR: can't resolve libraries to shared libraries: dxguid, DirectX-Headers, DirectX-Guids
There was a problem hiding this comment.
Yeah, that's what I figured. I did read that in december, and I just didn't recheck yesterday during a cursory look.
What I can say is that gobject-introspection tries to find the actuall DLL names from the actual import libs.
https://github.com/GNOME/gobject-introspection/blob/43ae0b53c23b39b0a700b66a9640c1180b10de00/giscanner/ccompiler.py#L397-L488
I don't know why it fails for these libs: Either the step doesn't find the import libs, or it fails to determine the DLL names. (Does DirectX-Headers come with libs?)
I don't know if this implies a permanent "unsupported by upstream", but at least it seems untested.
There was a problem hiding this comment.
Only DirectX-Headers.lib & DirectX-Guids.lib. There exists a dxguids.h, but nothing only called dxguid (even not in the build directory of directx-headers). I think he search for it due to this.
I don't know if this implies a permanent "unsupported by upstream", but at least it seems untested.
I think this too. And this is just an optional feature I think it is okay to disable it for windows, as long no one request it explicitly and want spent time in it.
| +#include <gtk/gtk.h> | ||
|
|
||
|
|
||
| #ifndef DOXYGEN_SHOULD_SKIP_THIS | ||
| -using GtkIconPaintable = struct _GtkIconPaintable; | ||
| -using GtkIconPaintableClass = struct _GtkIconPaintableClass; |
There was a problem hiding this comment.
Does the include logically replace the using?
If yes, couldn't the patch reflect that, literally.
There was a problem hiding this comment.
I don't think my question was really answered by the initial post.
What I see now is that this file is a generated source which exists in the gtkmm tarball but not in git. Instead of the original nitpick, my question is now if gtkmm should be update together with gtk here.
|
I would like to see dg0yt's feedback responded to. |
|
Just a small think: 4.21.5 is no stable version, but 4.20.3 would require to patch the librsvg issue. Therefore wait for 4.22? |
I think that's up to you since you did the work :) |
BillyONeal
left a comment
There was a problem hiding this comment.
Just a small think: 4.21.5 is no stable version, but 4.20.3 would require to patch the librsvg issue. Therefore wait for 4.22?
Since I'm not sure if this means you actually want me to merge this or not I'm drafting it but I think this is mergable.
Sorry, I didn't had time yesterday to check whether patching is easily possible or not. Since the method signature has changed (see 4.19.1 vs 4.19.2 and I don't know whether reverting to the old method will change the behavior, and since the version 4.21.5 looks completely different (the method doesn't even exist there), I would say that the 4.20 release series is out of the question for us. Therefore, I currently see only three options:
I would leave the decision to the maintainers here as to whether you want to have a devel version in there (which is the case for some ports, but as far as I know is not the preferred version) and if not, whether other ports should be updated to the non-latest version so that we have the appropriate version for GTK4, even if it is not the latest version. |
./vcpkg x-add-version --alland committing the result.Patch is from a diff with gtkmm-4.21.1, so can maybe removed with #48980 later
Some notes collected during testing it locally:
introspection. Therefore disallow this combination.rsvg_handle_set_stylesheet(librsvg 2.48), but they missed this code in the librsvg 2.40 compatibility code. This was still present in GTK 4.21.4. In GTK 4.21.5 they dropped librsvg.atkis already not anymore required since GTK 4.0