Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions ports/gtk/0001-build.patch
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
diff --git a/meson.build b/meson.build
index 5efd8a9..d51af19 100644
index 713d87a531..e2e86726a2 100644
--- a/meson.build
+++ b/meson.build
@@ -857,7 +857,7 @@ subdir('po')
@@ -1008,7 +1008,7 @@ if os_unix
endif

subdir('docs/reference')

-if not meson.is_cross_build()
+if false
gnome.post_install(
glib_compile_schemas: true,
gio_querymodules: gio_module_dirs,
gtk_update_icon_cache: get_option('build-demos'),
12 changes: 0 additions & 12 deletions ports/gtk/fix_vulkan_enabled.patch

This file was deleted.

5 changes: 2 additions & 3 deletions ports/gtk/portfile.cmake
Original file line number Diff line number Diff line change
@@ -1,20 +1,19 @@
# It installs only shared libs, regardless build type.
vcpkg_check_linkage(ONLY_DYNAMIC_LIBRARY)

string(REGEX MATCH [[^[0-9][0-9]*\.[1-9][0-9]*]] VERSION_MAJOR_MINOR ${VERSION})
string(REGEX MATCH [[^[0-9][0-9]*\.[1-9][0-9]*]] VERSION_MAJOR_MINOR "${VERSION}")
vcpkg_download_distfile(ARCHIVE
URLS
"https://download.gnome.org/sources/${PORT}/${VERSION_MAJOR_MINOR}/${PORT}-${VERSION}.tar.xz"
"https://www.mirrorservice.org/sites/ftp.gnome.org/pub/GNOME/sources/${PORT}/${VERSION_MAJOR_MINOR}/${PORT}-${VERSION}.tar.xz"
FILENAME "GNOME-${PORT}-${VERSION}.tar.xz"
SHA512 7a6f4c48ea57c7cd1946bd33c9fdacfbb4a5ed9c02034f3cd483099539d6bcd5448144fe13f66815cdd51a693ccb317872accf1b150730404fb2d618222a78ca
SHA512 bfea8825c5cdaaaea95055bf522c384b23bb26e9b8205081d055f85dc5df5d357827139115a4b7efe4d42418714b2ac062349459f761b383bed170354ecfa7f4
)

vcpkg_extract_source_archive(SOURCE_PATH
ARCHIVE "${ARCHIVE}"
PATCHES
0001-build.patch
fix_vulkan_enabled.patch
)

vcpkg_find_acquire_program(PKGCONFIG)
Expand Down
17 changes: 6 additions & 11 deletions ports/gtk/vcpkg.json
Original file line number Diff line number Diff line change
@@ -1,13 +1,11 @@
{
"name": "gtk",
"version": "4.16.3",
"port-version": 4,
"version": "4.22.0",
"description": "Portable library for creating graphical user interfaces.",
"homepage": "https://www.gtk.org/",
"license": "LGPL-2.0-only",
"supports": "!android & !xbox & !(arm64 & windows)",
"dependencies": [
"atk",
{
"name": "cairo",
"default-features": false,
Expand All @@ -23,6 +21,10 @@
],
"platform": "linux"
},
{
"name": "directx-headers",
"platform": "windows"
},
"gdk-pixbuf",
{
"name": "gettext",
Expand Down Expand Up @@ -59,15 +61,8 @@
"features": {
"introspection": {
"description": "Build with introspection",
"supports": "!static",
"supports": "!static & !windows",
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please explain.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

just read the initial post. same for the other comment.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@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
    

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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.

"dependencies": [
{
"name": "atk",
"default-features": false,
"features": [
"introspection"
]
},
{
"name": "gdk-pixbuf",
"default-features": false,
Expand Down
17 changes: 17 additions & 0 deletions ports/gtkmm/gtk.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
diff --git a/untracked/gtk/gtkmm/iconpaintable.h b/untracked/gtk/gtkmm/iconpaintable.h
index b659ed22..c4c56600 100644
--- "a/untracked/gtk/gtkmm/iconpaintable.h"
+++ "b/untracked/gtk/gtkmm/iconpaintable.h"
@@ -29,11 +29,10 @@
#include <glibmm/object.h>
#include <gdkmm/paintable.h>
#include <giomm/file.h>
+#include <gtk/gtk.h>


#ifndef DOXYGEN_SHOULD_SKIP_THIS
-using GtkIconPaintable = struct _GtkIconPaintable;
-using GtkIconPaintableClass = struct _GtkIconPaintableClass;
Comment on lines +9 to +14
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does the include logically replace the using?
If yes, couldn't the patch reflect that, literally.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

They changed it here. And yep, gtkmm will get an update after via #48980.

#endif /* DOXYGEN_SHOULD_SKIP_THIS */


2 changes: 2 additions & 0 deletions ports/gtkmm/portfile.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,8 @@ vcpkg_download_distfile(ARCHIVE
vcpkg_extract_source_archive(
SOURCE_PATH
ARCHIVE ${ARCHIVE}
PATCHES
gtk.patch
)

vcpkg_configure_meson(
Expand Down
1 change: 1 addition & 0 deletions ports/gtkmm/vcpkg.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
{
"name": "gtkmm",
"version": "4.14.0",
"port-version": 1,
"description": "gtkmm is the official C++ interface for the popular GUI library GTK+.",
"homepage": "https://www.gtkmm.org/",
"license": "LGPL-3.0-or-later",
Expand Down
6 changes: 3 additions & 3 deletions versions/baseline.json
Original file line number Diff line number Diff line change
Expand Up @@ -3581,16 +3581,16 @@
"port-version": 2
},
"gtk": {
"baseline": "4.16.3",
"port-version": 4
"baseline": "4.22.0",
"port-version": 0
},
"gtk3": {
"baseline": "3.24.51",
"port-version": 3
},
"gtkmm": {
"baseline": "4.14.0",
"port-version": 0
"port-version": 1
},
"gtl": {
"baseline": "1.2.0",
Expand Down
5 changes: 5 additions & 0 deletions versions/g-/gtk.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "a00d8b7fc33fb6fa4794606fa5a83d682dc94e70",
"version": "4.22.0",
"port-version": 0
},
{
"git-tree": "3c9c787bf4bf79bce87f1aaaa434a66b12ebc430",
"version": "4.16.3",
Expand Down
5 changes: 5 additions & 0 deletions versions/g-/gtkmm.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "2b05ebe5f3e9df8f79f113375600b813f247648b",
"version": "4.14.0",
"port-version": 1
},
{
"git-tree": "89805ce5526aad3b7b6b1f1242204959c61b4ddb",
"version": "4.14.0",
Expand Down