-
Notifications
You must be signed in to change notification settings - Fork 6.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[gtk] Bump to gtk+-3.24.10 which is the first version using meson build #9154
Conversation
- Fixes microsoft#7412 by using gtk 3.24.10. - Possibly fixes microsoft#6554, microsoft#7827, microsoft#8103 as now all the missing assets are correctly copied into installed/<triplet>/share/ and should be deployed with the final application. This simplify the gtk port and correctly generate the missing files. The source of the problem is with the underlying build system, as these files were installed by the demo `icon-browser`, but the gtk-update-icon-cache were executed by the main gtk project, failing if the demo wasn't built or installed. - This also fixes microsoft#7641 as now the meson build will correctly generate the missing .pc files. - This also fixes microsoft#9035, microsoft#7150 by fixing `vcpkg_configure_meson.cmake` which fails on Linux/OSX because it indiscriminately try to pass msvc cl arguments to the cmake c/xx flags. Although this works, it is not the ideal fix. The correct fix would be to do as suggested in issue microsoft#8271. Also see issue microsoft#8630.
I was also working on improving a lot meson/pkgconfig here on vcpkg. I might already import your commit in my PR to fix gtk (one of the many libraries that are not in a very good shape here when built in *nix) |
Need to hold on this as Meson is basically useless on windows. I need do some hacks to get this to find all its dependencies as meson tries pkg_config and some other cmake instance elsewhere, which in turns fail to find the right paths. |
Is it possible that this also fixes #3339 ? |
Unfortunately no. But looking there, the fix referenced in there is probably your best bet. I suggest taking that and doing a PR since the person don't want to. |
Homepage: https://www.gtk.org/ | ||
Description: Portable library for creating graphical user interfaces. | ||
Build-Depends: glib, atk, gdk-pixbuf, pango, cairo, libepoxy, gettext | ||
Build-Depends: tool-meson, glib, atk, gdk-pixbuf, pango, cairo, gettext, libepoxy |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why were the last two items swapped?
install(FILES gdk/win32/gdkwin32.h DESTINATION include/gdk) | ||
install(FILES gdk/gdk.h DESTINATION include/gdk) | ||
install(FILES gdk/gdk-autocleanup.h DESTINATION include/gdk) | ||
install(FILES gdk/gdkapplaunchcontext.h DESTINATION include/gdk) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Having this file dropped seems like a real good action!
-Dexamples=false | ||
-Dtests=false | ||
--backend=ninja | ||
#-Ddemos=false # WE NEED demos, because the icons come from here, otherwise the update icon cache will fail to build! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As a pragmatic approach I suggest to leave demos = true, and put a TODO in this code with a reference to an issue in the GTK sourcecode which addresses this bug in the upstream package.
We will then have a solution which works.
/azp run |
Pull request contains merge conflicts. |
@fungos Any progress in this PR? |
Unfortunately, I do not have anymore interest on GTK at all due their own lack of interest in improving their build system. |
WORK-IN-PROGRESS - I still need to do more tests on Windows.
If your issue is mentioned here, please help review and test this PR.
Fixes [gtk] update to 3.22.30 #7412 by using gtk 3.24.10.
Possibly fixes gtk missing resources #6554, Missing window button icons from the GTK+ application built using vcpkg environment #7827, gtkmm comes without schemas #8103 as now all the missing assets are
correctly copied into installed//share/ and should be deployed
with the final application.
This simplify the gtk port and correctly generate the missing files.
The source of the problem is with the underlying build system, as these
files were installed by the demo
icon-browser
, but thegtk-update-icon-cache were executed by the main gtk project, failing if
the demo wasn't built or installed.
This also fixes [gtk] missing
.pc
file for pkg-config #7641 as now the meson build will correctly generatethe missing .pc files.
This also fixes fribidi build failure on Linux #9035, meson builds fail on OS X with clang due to Windows / MSVC-specific C(XX)FLAGS #7150 by fixing
vcpkg_configure_meson.cmake
which fails on Linux/OSX because it indiscriminately try to pass msvc
cl arguments to the cmake c/xx flags. Although this works, it is not
the ideal fix. The correct fix would be to do as suggested in
issue [vcpkg] vcpkg_configure_meson not respecting VCPKG_C(XX)_FLAGS? #8271. Also see issue mesonbuild - Update to 0.52.0 #8639.