gnu: gtk: Update to 4.6.1.

* gnu/local.mk (dist_patch_DATA): Remove gtk-introspection-test.patch.
* gnu/packages/patches/gtk-introspection-test.patch: Remove.
* gnu/packages/gtk.scm (gtk): Update to 4.6.1.
[source]: Remove stale patch.
[arguments]<phases>: Add 'patch-rst2man' phase, correct the binary name of
rst2man to 'rst2man.py'
[inputs]: Add libjpeg-turbo, libpng, libtiff.
[native-inputs]: Add python-docutils.
[propagated-inputs]: Use pango-next.
* gnu/packages/fcitx5.scm (fcitx5-gtk)[arguments]: Disable GTK4 build.
<configure-flags>: Add "-DENABLE_GTK_IM_MODULE=OFF".
<phases>: In phase "patch-install-prefix", Remove GTK4 code.
[inputs]: Remove package gtk.
[outputs]: Remove output "gtk4".

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
This commit is contained in:
Zhu Zihao 2022-03-05 22:40:46 +08:00 committed by Ludovic Courtès
parent 4df7fe14ff
commit ef3cae59a2
No known key found for this signature in database
GPG key ID: 090B11993D9AEBB5
4 changed files with 18 additions and 37 deletions

View file

@ -1247,7 +1247,6 @@ dist_patch_DATA = \
%D%/packages/patches/gtk3-respect-GUIX_GTK3_PATH.patch \
%D%/packages/patches/gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch \
%D%/packages/patches/gtk-doc-respect-xml-catalog.patch \
%D%/packages/patches/gtk-introspection-test.patch \
%D%/packages/patches/gtk4-respect-GUIX_GTK4_PATH.patch \
%D%/packages/patches/gtkglext-disable-disable-deprecated.patch \
%D%/packages/patches/gtksourceview-2-add-default-directory.patch \

View file

@ -205,7 +205,8 @@ (define-public fcitx5-gtk
#~(list (string-append "-DGOBJECT_INTROSPECTION_GIRDIR="
#$output "/share/gir-1.0")
(string-append "-DGOBJECT_INTROSPECTION_TYPELIBDIR="
#$output "/lib/girepository-1.0"))
#$output "/lib/girepository-1.0")
"-DENABLE_GTK4_IM_MODULE=OFF")
#:phases
#~(modify-phases %standard-phases
(add-before 'configure 'patch-install-prefix
@ -218,11 +219,10 @@ (define (split-immodule gtk-version output)
(string-append output "/lib"))))
(let ((gtk2 #$output:gtk2)
(gtk3 #$output:gtk3)
(gtk4 #$output:gtk4))
(gtk3 #$output:gtk3))
(for-each split-immodule
'("gtk2" "gtk3" "gtk4")
(list gtk2 gtk3 gtk4))))))))
'("gtk2" "gtk3")
(list gtk2 gtk3))))))))
(inputs
(list fcitx5
fmt
@ -232,12 +232,11 @@ (define (split-immodule gtk-version output)
gobject-introspection
gtk+-2
gtk+
gtk
glib))
(native-inputs
(list extra-cmake-modules pkg-config
`(,glib "bin"))) ;for glib-genmarshal
(outputs '("out" "gtk2" "gtk3" "gtk4"))
(outputs '("out" "gtk2" "gtk3"))
(home-page "https://github.com/fcitx/fcitx5-gtk")
(synopsis "GLib-based D-Bus client and GTK IM module for Fcitx 5")
(description "Fcitx5-gtk provides the following functionality in the
@ -250,8 +249,6 @@ (define (split-immodule gtk-version output)
IM module for GTK+2 applications.
@item gtk3
IM module for GTK+3 applications.
@item gtk4
IM module for GTK4 applications.
@end table")
(license license:lgpl2.1+)))

View file

@ -1076,7 +1076,7 @@ (define-public gtk+
(define-public gtk
(package
(name "gtk")
(version "4.4.1")
(version "4.6.1")
(source
(origin
(method url-fetch)
@ -1084,10 +1084,9 @@ (define-public gtk
(version-major+minor version) "/"
name "-" version ".tar.xz"))
(sha256
(base32 "1x6xlc063nqp7cg6py4kq1kpw9pkq49ifk5kki0brc667ncdmahg"))
(base32 "0pzcs24j67f90kjcp6apgn6rffynxksjm1m7d3an7kdv3k90hmfq"))
(patches
(search-patches "gtk4-respect-GUIX_GTK4_PATH.patch"
"gtk-introspection-test.patch"))))
(search-patches "gtk4-respect-GUIX_GTK4_PATH.patch"))))
(build-system meson-build-system)
(outputs '("out" "bin" "doc"))
(arguments
@ -1117,6 +1116,10 @@ (define-public gtk
(add-after 'unpack 'generate-gdk-pixbuf-loaders-cache-file
(assoc-ref glib-or-gtk:%standard-phases
'generate-gdk-pixbuf-loaders-cache-file))
(add-after 'unpack 'patch-rst2man
(lambda _
(substitute* "docs/reference/gtk/meson.build"
(("find_program\\('rst2man'") "find_program('rst2man.py'"))))
(add-after 'unpack 'patch
(lambda* (#:key inputs native-inputs outputs #:allow-other-keys)
;; Correct DTD resources of docbook.
@ -1194,6 +1197,7 @@ (define-public gtk
("pkg-config" ,pkg-config)
("python-pygobject" ,python-pygobject)
;; These python modules are required for building documentation.
("python-docutils" ,python-docutils)
("python-jinja2" ,python-jinja2)
("python-markdown" ,python-markdown)
("python-markupsafe" ,python-markupsafe)
@ -1216,7 +1220,10 @@ (define-public gtk
iso-codes
json-glib
libcloudproviders ;for cloud-providers support
libjpeg-turbo
libpng
librsvg
libtiff
python
rest
tracker)) ;for filechooser search support
@ -1239,7 +1246,7 @@ (define-public gtk
("libxkbcommon" ,libxkbcommon)
("libxrandr" ,libxrandr)
("libxrender" ,libxrender)
("pango" ,pango)
("pango" ,pango-next)
("vulkan-headers" ,vulkan-headers)
("vulkan-loader" ,vulkan-loader) ;for vulkan graphics API support
("wayland" ,wayland) ;for wayland display-backend

View file

@ -1,22 +0,0 @@
# Extend rather than stomp environment variables.
# Upstream status: https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/4268
diff --git a/testsuite/introspection/meson.build b/testsuite/introspection/meson.build
index 6202fb7446..b59191eb0f 100644
--- a/testsuite/introspection/meson.build
+++ b/testsuite/introspection/meson.build
@@ -1,9 +1,10 @@
+env = environment()
+env.prepend('GI_TYPELIB_PATH',
+ join_paths(project_build_root, 'gtk'),
+ gi_dep.get_pkgconfig_variable('typelibdir'))
+env.prepend('LD_PRELOAD', join_paths(project_build_root, 'gtk', 'libgtk-4.so'))
test('api',
find_program('api.py', dirs: meson.current_source_dir()),
suite: ['introspection'],
- env: [
- 'GI_TYPELIB_PATH=@0@/gtk:@1@'.format(project_build_root,
- gi_dep.get_pkgconfig_variable('typelibdir')),
- 'LD_PRELOAD=@0@/gtk/libgtk-4.so'.format(project_build_root),
- ])
+ env: env)