From: Raghav Gururajan <raghavgururajan@disroot.org>
To: 42958@debbugs.gnu.org
Subject: [bug#42958] [PATCH core-updates 03/29] gnu: glib: Update package definition.
Date: Thu, 24 Sep 2020 08:28:45 -0400 [thread overview]
Message-ID: <5acf11ff-2410-d336-4037-8e7665c78083@disroot.org> (raw)
In-Reply-To: <20200820150914.9443-1-dannym@scratchpost.org>
[-- Attachment #1: Type: text/plain, Size: 62 bytes --]
@Danny
Please find the attached split patches.
Regards,
RG.
[-- Attachment #2: 0009-gnu-glib-Make-some-cosmetic-changes.patch --]
[-- Type: text/x-patch, Size: 19789 bytes --]
From 8cd190b19c52da07c6b400be1a703f27ceaf142d Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <raghavgururajan@disroot.org>
Date: Thu, 24 Sep 2020 04:34:05 -0400
Subject: [PATCH 09/11] gnu: glib: Make some cosmetic changes.
* gnu/packages/glib.scm (glib): Make some cosmetic changes.
---
gnu/packages/glib.scm | 390 ++++++++++++++++++++----------------------
1 file changed, 185 insertions(+), 205 deletions(-)
diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
index ca037d3b24..21b39b94e8 100644
--- a/gnu/packages/glib.scm
+++ b/gnu/packages/glib.scm
@@ -176,213 +176,193 @@ shared NFS home directories.")
(define glib
(package
- (name "glib")
- (version "2.62.6")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnome/sources/"
- name "/" (string-take version 4) "/"
- name "-" version ".tar.xz"))
- (sha256
- (base32
- "174bsmbmcvaw69ff9g60q5sx0fn23rkhqcwqz17h5s7sprps4kqh"))
- (patches (search-patches "glib-tests-timer.patch"))
- (modules '((guix build utils)))
- (snippet
- '(begin
- (substitute* "tests/spawn-test.c"
- (("/bin/sh") "sh"))
- #t))))
- (build-system meson-build-system)
- (outputs '("out" ; everything
- "bin")) ; glib-mkenums, gtester, etc.; depends on Python
- (propagated-inputs
- `(("pcre" ,pcre) ; in the Requires.private field of glib-2.0.pc
- ("libffi" ,libffi) ; in the Requires.private field of gobject-2.0.pc
- ;; These are in the Requires.private field of gio-2.0.pc
- ("util-linux" ,util-linux "lib") ;for libmount
- ("libselinux" ,libselinux)
- ("zlib" ,zlib)))
- (native-inputs
- `(("gettext" ,gettext-minimal)
- ("m4" ,m4) ; for installing m4 macros
- ("dbus" ,dbus) ; for GDBus tests
- ("pkg-config" ,pkg-config)
- ("python" ,python-wrapper)
- ("perl" ,perl) ; needed by GIO tests
- ("tzdata" ,tzdata-for-tests))) ; for tests/gdatetime.c
- (arguments
- `(#:disallowed-references (,tzdata-for-tests)
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'patch-dbus-launch-path
- (lambda* (#:key inputs #:allow-other-keys)
- (let ((dbus (assoc-ref inputs "dbus")))
- (substitute* "gio/gdbusaddress.c"
- (("command_line = g_strdup_printf \\(\"dbus-launch")
- (string-append "command_line = g_strdup_printf (\""
- dbus "/bin/dbus-launch")))
- #t)))
- (add-after 'unpack 'patch-gio-launch-desktop
- (lambda* (#:key outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out")))
- ;; See also <https://gitlab.gnome.org/GNOME/glib/issues/1633>
- ;; for another future fix.
- (substitute* "gio/gdesktopappinfo.c"
- (("gio-launch-desktop")
- (string-append out "/libexec/gio-launch-desktop")))
- #t)))
- (add-before 'build 'pre-build
- (lambda* (#:key inputs outputs #:allow-other-keys)
- ;; For tests/gdatetime.c.
- (setenv "TZDIR"
- (string-append (assoc-ref inputs "tzdata")
- "/share/zoneinfo"))
-
- ;; Some tests want write access there.
- (setenv "HOME" (getcwd))
- (setenv "XDG_CACHE_HOME" (getcwd))
- #t))
- (add-after 'unpack 'disable-failing-tests
- (lambda _
- (let ((disable
- (lambda (test-file test-paths)
- (define pattern+procs
- (map (lambda (test-path)
- (cons
- ;; XXX: only works for single line statements.
- (format #f "g_test_add_func.*\"~a\".*" test-path)
- (const "")))
- test-paths))
- (substitute test-file pattern+procs)))
- (failing-tests
- '(("glib/tests/thread.c"
- (;; prlimit(2) returns ENOSYS on Linux 2.6.32-5-xen-amd64
- ;; as found on hydra.gnu.org, and strace(1) doesn't
- ;; recognize it.
- "/thread/thread4"))
-
- ;; This tries to find programs in FHS directories.
- ("glib/tests/utils.c"
- ("/utils/find-program"))
-
- ;; This fails because "glib/tests/echo-script" cannot be
- ;; found.
- ("glib/tests/spawn-singlethread.c"
- ("/gthread/spawn-script"))
-
- ("glib/tests/timer.c"
- (;; fails if compiler optimizations are enabled, which they
- ;; are by default.
- "/timer/stop"))
-
- ("gio/tests/gapplication.c"
- (;; XXX: proven to be unreliable. See:
- ;; <https://bugs.debian.org/756273>
- ;; <http://bugs.gnu.org/18445>
- "/gapplication/quit"
-
- ;; XXX: fails randomly for unknown reason. See:
- ;; <https://lists.gnu.org/archive/html/guix-devel/2016-04/msg00215.html>
- "/gapplication/local-actions"))
-
- ("gio/tests/contenttype.c"
- (;; XXX: requires shared-mime-info.
- "/contenttype/guess"
- "/contenttype/guess_svg_from_data"
- "/contenttype/subtype"
- "/contenttype/list"
- "/contenttype/icon"
- "/contenttype/symbolic-icon"
- "/contenttype/tree"))
-
- ("gio/tests/appinfo.c"
- (;; XXX: requires update-desktop-database.
- "/appinfo/associations"))
-
- ("gio/tests/desktop-app-info.c"
- (;; XXX: requires update-desktop-database.
- "/desktop-app-info/delete"
- "/desktop-app-info/default"
- "/desktop-app-info/fallback"
- "/desktop-app-info/lastused"
- "/desktop-app-info/search"))
-
- ("gio/tests/gdbus-peer.c"
- (;; Requires /etc/machine-id.
- "/gdbus/codegen-peer-to-peer"))
-
- ("gio/tests/gdbus-address-get-session.c"
- (;; Requires /etc/machine-id.
- "/gdbus/x11-autolaunch"))
-
- ("gio/tests/gsocketclient-slow.c"
- (;; These tests tries to resolve "localhost", and fails.
- "/socket-client/happy-eyeballs/slow"
- "/socket-client/happy-eyeballs/cancellation/delayed"))
-
- )))
- (for-each (lambda (x) (apply disable x)) failing-tests)
- #t)))
- (replace 'check
- (lambda _
- (setenv "MESON_TESTTHREADS"
- (number->string (parallel-job-count)))
- ;; Do not run tests marked as "flaky".
- (invoke "meson" "test" "--no-suite" "flaky")))
- ;; TODO: meson does not permit the bindir to be outside of prefix.
- ;; See https://github.com/mesonbuild/meson/issues/2561
- ;; We can remove this once meson is patched.
- (add-after 'install 'move-executables
- (lambda* (#:key outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out"))
- (bin (assoc-ref outputs "bin")))
- (mkdir-p bin)
- (rename-file (string-append out "/bin")
- (string-append bin "/bin"))
- ;; This one is an implementation detail of glib.
- ;; It is wrong that that's in "/bin" in the first place,
- ;; but that's what upstream is doing right now.
- ;; See <https://gitlab.gnome.org/GNOME/glib/issues/1633>.
- (mkdir (string-append out "/libexec"))
- (rename-file (string-append bin "/bin/gio-launch-desktop")
- (string-append out "/libexec/gio-launch-desktop"))
- ;; Do not refer to "bindir", which points to "${prefix}/bin".
- ;; We don't patch "bindir" to point to "$bin/bin", because that
- ;; would create a reference cycle between the "out" and "bin"
- ;; outputs.
- (substitute* (list (string-append out "/lib/pkgconfig/gio-2.0.pc")
- (string-append out "/lib/pkgconfig/glib-2.0.pc"))
- (("bindir=\\$\\{prefix\\}/bin") "")
- (("=\\$\\{bindir\\}/") "="))
- #t))))))
- ;; TODO: see above for explanation.
- ;; #:configure-flags (list (string-append "--bindir="
- ;; (assoc-ref %outputs "bin")
- ;; "/bin"))
-
- (native-search-paths
- ;; This variable is not really "owned" by GLib, but several related
- ;; packages refer to it: gobject-introspection's tools use it as a search
- ;; path for .gir files, and it's also a search path for schemas produced
- ;; by 'glib-compile-schemas'.
- (list (search-path-specification
- (variable "XDG_DATA_DIRS")
- (files '("share")))
- ;; To load extra gio modules from glib-networking, etc.
- (search-path-specification
- (variable "GIO_EXTRA_MODULES")
- (files '("lib/gio/modules")))))
- (search-paths native-search-paths)
- (properties '((hidden? . #t)))
-
- (synopsis "Thread-safe general utility library; basis of GTK+ and GNOME")
- (description
- "GLib provides data structure handling for C, portability wrappers,
+ (properties '((hidden? . #t)))
+ (name "glib")
+ (version "2.62.6")
+ (source
+ (origin
+ (method url-fetch)
+ (uri
+ (string-append "mirror://gnome/sources/"
+ name "/" (string-take version 4) "/"
+ name "-" version ".tar.xz"))
+ (sha256
+ (base32 "174bsmbmcvaw69ff9g60q5sx0fn23rkhqcwqz17h5s7sprps4kqh"))
+ (patches (search-patches "glib-tests-timer.patch"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ (substitute* "tests/spawn-test.c"
+ (("/bin/sh") "sh"))
+ #t))))
+ (build-system meson-build-system)
+ (outputs '("out" "bin"))
+ (arguments
+ `(#:disallowed-references (,tzdata-for-tests)
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch-dbus-launch-path
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((dbus (assoc-ref inputs "dbus")))
+ (substitute* "gio/gdbusaddress.c"
+ (("command_line = g_strdup_printf \\(\"dbus-launch")
+ (string-append "command_line = g_strdup_printf (\""
+ dbus "/bin/dbus-launch")))
+ #t)))
+ (add-after 'unpack 'patch-gio-launch-desktop
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ ;; See also <https://gitlab.gnome.org/GNOME/glib/issues/1633>
+ ;; for another future fix.
+ (substitute* "gio/gdesktopappinfo.c"
+ (("gio-launch-desktop")
+ (string-append out "/libexec/gio-launch-desktop")))
+ #t)))
+ (add-before 'build 'pre-build
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ ;; For tests/gdatetime.c.
+ (setenv "TZDIR"
+ (string-append (assoc-ref inputs "tzdata")
+ "/share/zoneinfo"))
+ ;; Some tests want write access there.
+ (setenv "HOME" (getcwd))
+ (setenv "XDG_CACHE_HOME" (getcwd))
+ #t))
+ (add-after 'unpack 'disable-failing-tests
+ (lambda _
+ (let ((disable
+ (lambda (test-file test-paths)
+ (define pattern+procs
+ (map (lambda (test-path)
+ (cons
+ ;; XXX: only works for single line statements.
+ (format #f "g_test_add_func.*\"~a\".*" test-path)
+ (const "")))
+ test-paths))
+ (substitute test-file pattern+procs)))
+ (failing-tests
+ '(("glib/tests/thread.c"
+ ( ;; prlimit(2) returns ENOSYS on Linux 2.6.32-5-xen-amd64
+ ;; as found on hydra.gnu.org, and strace(1) doesn't
+ ;; recognize it.
+ "/thread/thread4"))
+ ;; This tries to find programs in FHS directories.
+ ("glib/tests/utils.c"
+ ("/utils/find-program"))
+ ;; This fails because "glib/tests/echo-script" cannot be
+ ;; found.
+ ("glib/tests/spawn-singlethread.c"
+ ("/gthread/spawn-script"))
+ ("glib/tests/timer.c"
+ ( ;; fails if compiler optimizations are enabled, which they
+ ;; are by default.
+ "/timer/stop"))
+ ("gio/tests/gapplication.c"
+ ( ;; XXX: proven to be unreliable. See:
+ ;; <https://bugs.debian.org/756273>
+ ;; <http://bugs.gnu.org/18445>
+ "/gapplication/quit"
+ ;; XXX: fails randomly for unknown reason. See:
+ ;; <https://lists.gnu.org/archive/html/guix-devel/2016-04/msg00215.html>
+ "/gapplication/local-actions"))
+ ("gio/tests/contenttype.c"
+ ( ;; XXX: requires shared-mime-info.
+ "/contenttype/guess"
+ "/contenttype/guess_svg_from_data"
+ "/contenttype/subtype"
+ "/contenttype/list"
+ "/contenttype/icon"
+ "/contenttype/symbolic-icon"
+ "/contenttype/tree"))
+ ("gio/tests/appinfo.c"
+ ( ;; XXX: requires update-desktop-database.
+ "/appinfo/associations"))
+ ("gio/tests/desktop-app-info.c"
+ ( ;; XXX: requires update-desktop-database.
+ "/desktop-app-info/delete"
+ "/desktop-app-info/default"
+ "/desktop-app-info/fallback"
+ "/desktop-app-info/lastused"
+ "/desktop-app-info/search"))
+ ("gio/tests/gdbus-peer.c"
+ ( ;; Requires /etc/machine-id.
+ "/gdbus/codegen-peer-to-peer"))
+ ("gio/tests/gdbus-address-get-session.c"
+ ( ;; Requires /etc/machine-id.
+ "/gdbus/x11-autolaunch"))
+ ("gio/tests/gsocketclient-slow.c"
+ ( ;; These tests tries to resolve "localhost", and fails.
+ "/socket-client/happy-eyeballs/slow"
+ "/socket-client/happy-eyeballs/cancellation/delayed"))
+ )))
+ (for-each (lambda (x) (apply disable x)) failing-tests)
+ #t)))
+ (replace 'check
+ (lambda _
+ (setenv "MESON_TESTTHREADS"
+ (number->string (parallel-job-count)))
+ ;; Do not run tests marked as "flaky".
+ (invoke "meson" "test" "--no-suite" "flaky")))
+ ;; TODO: meson does not permit the bindir to be outside of prefix.
+ ;; See https://github.com/mesonbuild/meson/issues/2561
+ ;; We can remove this once meson is patched.
+ (add-after 'install 'move-executables
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out"))
+ (bin (assoc-ref outputs "bin")))
+ (mkdir-p bin)
+ (rename-file (string-append out "/bin")
+ (string-append bin "/bin"))
+ ;; This one is an implementation detail of glib.
+ ;; It is wrong that that's in "/bin" in the first place,
+ ;; but that's what upstream is doing right now.
+ ;; See <https://gitlab.gnome.org/GNOME/glib/issues/1633>.
+ (mkdir (string-append out "/libexec"))
+ (rename-file (string-append bin "/bin/gio-launch-desktop")
+ (string-append out "/libexec/gio-launch-desktop"))
+ ;; Do not refer to "bindir", which points to "${prefix}/bin".
+ ;; We don't patch "bindir" to point to "$bin/bin", because that
+ ;; would create a reference cycle between the "out" and "bin"
+ ;; outputs.
+ (substitute* (list (string-append out "/lib/pkgconfig/gio-2.0.pc")
+ (string-append out "/lib/pkgconfig/glib-2.0.pc"))
+ (("bindir=\\$\\{prefix\\}/bin") "")
+ (("=\\$\\{bindir\\}/") "="))
+ #t))))))
+ (native-inputs
+ `(("gettext" ,gettext-minimal)
+ ("m4" ,m4)
+ ("dbus" ,dbus)
+ ("pkg-config" ,pkg-config)
+ ("python" ,python-wrapper)
+ ("perl" ,perl)
+ ("tzdata" ,tzdata-for-tests)))
+ (propagated-inputs
+ `(("pcre" ,pcre)
+ ("libffi" ,libffi)
+ ("util-linux" ,util-linux "lib")
+ ("libselinux" ,libselinux)
+ ("zlib" ,zlib)))
+ (native-search-paths
+ ;; This variable is not really "owned" by GLib, but several related
+ ;; packages refer to it: gobject-introspection's tools use it as a search
+ ;; path for .gir files, and it's also a search path for schemas produced
+ ;; by 'glib-compile-schemas'.
+ (list (search-path-specification
+ (variable "XDG_DATA_DIRS")
+ (files '("share")))
+ ;; To load extra gio modules from glib-networking, etc.
+ (search-path-specification
+ (variable "GIO_EXTRA_MODULES")
+ (files '("lib/gio/modules")))))
+ (search-paths native-search-paths)
+ (synopsis "Thread-safe general utility library; basis of GTK+ and GNOME")
+ (description
+ "GLib provides data structure handling for C, portability wrappers,
and interfaces for such runtime functionality as an event loop, threads,
dynamic loading, and an object system.")
- (home-page "https://developer.gnome.org/glib/")
- (license license:lgpl2.1+)))
+ (home-page "https://developer.gnome.org/glib/")
+ (license license:lgpl2.1+)))
(define-public glib-with-documentation
;; glib's doc must be built in a separate package since it requires gtk-doc,
--
2.28.0
[-- Attachment #3: 0010-gnu-glib-Update-to-2.64.3.patch --]
[-- Type: text/x-patch, Size: 16842 bytes --]
From 67bad944e2b775ebe2bd0101220b78b2a07c8bdf Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <raghavgururajan@disroot.org>
Date: Thu, 24 Sep 2020 04:44:59 -0400
Subject: [PATCH 10/11] gnu: glib: Update to 2.64.3.
* gnu/packages/glib.scm (glib) [version]: Update to 2.64.3.
[source]<origin>[sha256]: Modify base32.
[patches]: Add glib-disable-failing-tests.patch.
Remove glib-tests-timer.patch.
[arguments]<#:disallowed-references>: Remove argument.
<#:phases>['patch-python-references]: New phase.
['pre-check]: New phase.
['move-bin]: New phase.
['patch-dbus-launch-path]: Remove phase.
['patch-gio-launch-desktop]: Remove phase.
['pre-build]: Remove phase.
['disable-failing-tests]: Remove phase.
['check]: Remove phase.
['move-executables]: Remove phase.
[native-inputs]: Add intltool, python, libxml2 and libxslt.
Remove dbus.
[inputs]: Add dbus and libelf.
* gnu/packages/patches/glib-disable-failing-tests.patch: New file.
* gnu/packages/patches/glib-tests-timer.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Adjust.
---
gnu/local.mk | 2 +-
gnu/packages/glib.scm | 179 +++++-------------
.../patches/glib-disable-failing-tests.patch | 84 ++++++++
gnu/packages/patches/glib-tests-timer.patch | 15 --
4 files changed, 136 insertions(+), 144 deletions(-)
create mode 100644 gnu/packages/patches/glib-disable-failing-tests.patch
delete mode 100644 gnu/packages/patches/glib-tests-timer.patch
diff --git a/gnu/local.mk b/gnu/local.mk
index f3b5b17e84..2fc47ca2ec 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1034,7 +1034,7 @@ dist_patch_DATA = \
%D%/packages/patches/ghostscript-no-header-id.patch \
%D%/packages/patches/ghostscript-no-header-uuid.patch \
%D%/packages/patches/ghostscript-no-header-creationdate.patch \
- %D%/packages/patches/glib-tests-timer.patch \
+ %D%/packages/patches/glib-disable-failing-tests.patch \
%D%/packages/patches/glibc-CVE-2018-11236.patch \
%D%/packages/patches/glibc-CVE-2018-11237.patch \
%D%/packages/patches/glibc-CVE-2019-7309.patch \
diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
index 21b39b94e8..be5d45596d 100644
--- a/gnu/packages/glib.scm
+++ b/gnu/packages/glib.scm
@@ -178,7 +178,7 @@ shared NFS home directories.")
(package
(properties '((hidden? . #t)))
(name "glib")
- (version "2.62.6")
+ (version "2.64.3")
(source
(origin
(method url-fetch)
@@ -187,8 +187,9 @@ shared NFS home directories.")
name "/" (string-take version 4) "/"
name "-" version ".tar.xz"))
(sha256
- (base32 "174bsmbmcvaw69ff9g60q5sx0fn23rkhqcwqz17h5s7sprps4kqh"))
- (patches (search-patches "glib-tests-timer.patch"))
+ (base32 "08pbgiv5m3rica4ydvwvpq5mrxbyswx7l1jzjc2ch52xjabvr77y"))
+ (patches
+ (search-patches "glib-disable-failing-tests.patch"))
(modules '((guix build utils)))
(snippet
'(begin
@@ -198,27 +199,23 @@ shared NFS home directories.")
(build-system meson-build-system)
(outputs '("out" "bin"))
(arguments
- `(#:disallowed-references (,tzdata-for-tests)
- #:phases
+ `(#:phases
(modify-phases %standard-phases
- (add-after 'unpack 'patch-dbus-launch-path
+ ;; Python references are not being patched in patch-phase of build,
+ ;; despite using python-wrapper as input. So we patch them manually.
+ (add-after 'unpack 'patch-python-references
(lambda* (#:key inputs #:allow-other-keys)
- (let ((dbus (assoc-ref inputs "dbus")))
- (substitute* "gio/gdbusaddress.c"
- (("command_line = g_strdup_printf \\(\"dbus-launch")
- (string-append "command_line = g_strdup_printf (\""
- dbus "/bin/dbus-launch")))
- #t)))
- (add-after 'unpack 'patch-gio-launch-desktop
- (lambda* (#:key outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out")))
- ;; See also <https://gitlab.gnome.org/GNOME/glib/issues/1633>
- ;; for another future fix.
- (substitute* "gio/gdesktopappinfo.c"
- (("gio-launch-desktop")
- (string-append out "/libexec/gio-launch-desktop")))
- #t)))
- (add-before 'build 'pre-build
+ (substitute* '("gio/gdbus-2.0/codegen/gdbus-codegen.in"
+ "glib/gtester-report.in"
+ "gobject/glib-genmarshal.in"
+ "gobject/glib-mkenums.in")
+ (("@PYTHON@")
+ (string-append (assoc-ref inputs "python")
+ "/bin/python"
+ ,(version-major+minor
+ (package-version python)))))
+ #t))
+ (add-before 'check 'pre-check
(lambda* (#:key inputs outputs #:allow-other-keys)
;; For tests/gdatetime.c.
(setenv "TZDIR"
@@ -228,133 +225,59 @@ shared NFS home directories.")
(setenv "HOME" (getcwd))
(setenv "XDG_CACHE_HOME" (getcwd))
#t))
- (add-after 'unpack 'disable-failing-tests
- (lambda _
- (let ((disable
- (lambda (test-file test-paths)
- (define pattern+procs
- (map (lambda (test-path)
- (cons
- ;; XXX: only works for single line statements.
- (format #f "g_test_add_func.*\"~a\".*" test-path)
- (const "")))
- test-paths))
- (substitute test-file pattern+procs)))
- (failing-tests
- '(("glib/tests/thread.c"
- ( ;; prlimit(2) returns ENOSYS on Linux 2.6.32-5-xen-amd64
- ;; as found on hydra.gnu.org, and strace(1) doesn't
- ;; recognize it.
- "/thread/thread4"))
- ;; This tries to find programs in FHS directories.
- ("glib/tests/utils.c"
- ("/utils/find-program"))
- ;; This fails because "glib/tests/echo-script" cannot be
- ;; found.
- ("glib/tests/spawn-singlethread.c"
- ("/gthread/spawn-script"))
- ("glib/tests/timer.c"
- ( ;; fails if compiler optimizations are enabled, which they
- ;; are by default.
- "/timer/stop"))
- ("gio/tests/gapplication.c"
- ( ;; XXX: proven to be unreliable. See:
- ;; <https://bugs.debian.org/756273>
- ;; <http://bugs.gnu.org/18445>
- "/gapplication/quit"
- ;; XXX: fails randomly for unknown reason. See:
- ;; <https://lists.gnu.org/archive/html/guix-devel/2016-04/msg00215.html>
- "/gapplication/local-actions"))
- ("gio/tests/contenttype.c"
- ( ;; XXX: requires shared-mime-info.
- "/contenttype/guess"
- "/contenttype/guess_svg_from_data"
- "/contenttype/subtype"
- "/contenttype/list"
- "/contenttype/icon"
- "/contenttype/symbolic-icon"
- "/contenttype/tree"))
- ("gio/tests/appinfo.c"
- ( ;; XXX: requires update-desktop-database.
- "/appinfo/associations"))
- ("gio/tests/desktop-app-info.c"
- ( ;; XXX: requires update-desktop-database.
- "/desktop-app-info/delete"
- "/desktop-app-info/default"
- "/desktop-app-info/fallback"
- "/desktop-app-info/lastused"
- "/desktop-app-info/search"))
- ("gio/tests/gdbus-peer.c"
- ( ;; Requires /etc/machine-id.
- "/gdbus/codegen-peer-to-peer"))
- ("gio/tests/gdbus-address-get-session.c"
- ( ;; Requires /etc/machine-id.
- "/gdbus/x11-autolaunch"))
- ("gio/tests/gsocketclient-slow.c"
- ( ;; These tests tries to resolve "localhost", and fails.
- "/socket-client/happy-eyeballs/slow"
- "/socket-client/happy-eyeballs/cancellation/delayed"))
- )))
- (for-each (lambda (x) (apply disable x)) failing-tests)
- #t)))
- (replace 'check
- (lambda _
- (setenv "MESON_TESTTHREADS"
- (number->string (parallel-job-count)))
- ;; Do not run tests marked as "flaky".
- (invoke "meson" "test" "--no-suite" "flaky")))
- ;; TODO: meson does not permit the bindir to be outside of prefix.
- ;; See https://github.com/mesonbuild/meson/issues/2561
- ;; We can remove this once meson is patched.
- (add-after 'install 'move-executables
+ ;; Meson does not permit the bindir to be outside of prefix.
+ (add-after 'install 'move-bin
(lambda* (#:key outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out"))
- (bin (assoc-ref outputs "bin")))
+ (let* ((out (assoc-ref outputs "out"))
+ (bin (assoc-ref outputs "bin")))
(mkdir-p bin)
- (rename-file (string-append out "/bin")
- (string-append bin "/bin"))
- ;; This one is an implementation detail of glib.
- ;; It is wrong that that's in "/bin" in the first place,
- ;; but that's what upstream is doing right now.
- ;; See <https://gitlab.gnome.org/GNOME/glib/issues/1633>.
- (mkdir (string-append out "/libexec"))
- (rename-file (string-append bin "/bin/gio-launch-desktop")
- (string-append out "/libexec/gio-launch-desktop"))
+ (rename-file
+ (string-append out "/bin")
+ (string-append bin "/bin"))
;; Do not refer to "bindir", which points to "${prefix}/bin".
;; We don't patch "bindir" to point to "$bin/bin", because that
;; would create a reference cycle between the "out" and "bin"
;; outputs.
- (substitute* (list (string-append out "/lib/pkgconfig/gio-2.0.pc")
- (string-append out "/lib/pkgconfig/glib-2.0.pc"))
+ (substitute*
+ (list
+ (string-append out "/lib/pkgconfig/gio-2.0.pc")
+ (string-append out "/lib/pkgconfig/glib-2.0.pc"))
(("bindir=\\$\\{prefix\\}/bin") "")
(("=\\$\\{bindir\\}/") "="))
#t))))))
(native-inputs
`(("gettext" ,gettext-minimal)
+ ("libintl" ,intltool)
("m4" ,m4)
- ("dbus" ,dbus)
- ("pkg-config" ,pkg-config)
- ("python" ,python-wrapper)
("perl" ,perl)
- ("tzdata" ,tzdata-for-tests)))
+ ("pkg-config" ,pkg-config)
+ ("python-wrapper" ,python-wrapper)
+ ("python" ,python) ; For 'patch-python-references
+ ("tzdata" ,tzdata-for-tests)
+ ("xmllint" ,libxml2)
+ ("xsltproc" ,libxslt)))
+ (inputs
+ `(("dbus" ,dbus)
+ ("libelf" ,libelf)))
(propagated-inputs
- `(("pcre" ,pcre)
- ("libffi" ,libffi)
- ("util-linux" ,util-linux "lib")
+ `(("libffi" ,libffi)
("libselinux" ,libselinux)
+ ("pcre" ,pcre)
+ ("util-linux" ,util-linux "lib")
("zlib" ,zlib)))
(native-search-paths
;; This variable is not really "owned" by GLib, but several related
;; packages refer to it: gobject-introspection's tools use it as a search
;; path for .gir files, and it's also a search path for schemas produced
;; by 'glib-compile-schemas'.
- (list (search-path-specification
- (variable "XDG_DATA_DIRS")
- (files '("share")))
- ;; To load extra gio modules from glib-networking, etc.
- (search-path-specification
- (variable "GIO_EXTRA_MODULES")
- (files '("lib/gio/modules")))))
+ (list
+ (search-path-specification
+ (variable "XDG_DATA_DIRS")
+ (files '("share")))
+ ;; To load extra gio modules from glib-networking, etc.
+ (search-path-specification
+ (variable "GIO_EXTRA_MODULES")
+ (files '("lib/gio/modules")))))
(search-paths native-search-paths)
(synopsis "Thread-safe general utility library; basis of GTK+ and GNOME")
(description
diff --git a/gnu/packages/patches/glib-disable-failing-tests.patch b/gnu/packages/patches/glib-disable-failing-tests.patch
new file mode 100644
index 0000000000..3601c42030
--- /dev/null
+++ b/gnu/packages/patches/glib-disable-failing-tests.patch
@@ -0,0 +1,84 @@
+From a2e6783f2278ed32b1e552691ec5d67d6940757e Mon Sep 17 00:00:00 2001
+From: Raghav Gururajan <raghavgururajan@disroot.org>
+Date: Tue, 9 Jun 2020 05:17:53 -0400
+Subject: [PATCH] PATCH: Disable failing tests.
+
+---
+ gio/tests/meson.build | 19 -------------------
+ glib/tests/meson.build | 2 --
+ 2 files changed, 21 deletions(-)
+
+diff --git a/gio/tests/meson.build b/gio/tests/meson.build
+index c7c3e3035..6e38eb39e 100644
+--- a/gio/tests/meson.build
++++ b/gio/tests/meson.build
+@@ -34,7 +34,6 @@ gio_tests = {
+ 'buffered-output-stream' : {},
+ 'cancellable' : {},
+ 'contexts' : {},
+- 'contenttype' : {},
+ 'converter-stream' : {},
+ 'credentials' : {},
+ 'data-input-stream' : {},
+@@ -78,7 +77,6 @@ gio_tests = {
+ 'tls-certificate' : {'extra_sources' : ['gtesttlsbackend.c']},
+ 'tls-interaction' : {'extra_sources' : ['gtesttlsbackend.c']},
+ 'tls-database' : {'extra_sources' : ['gtesttlsbackend.c']},
+- 'gdbus-address-get-session' : {},
+ 'win32-appinfo' : {},
+ }
+
+@@ -135,10 +133,6 @@ endif
+ if host_machine.system() != 'windows'
+ gio_tests += {
+ 'file' : {},
+- 'gdbus-peer' : {
+- 'dependencies' : [libgdbus_example_objectmanager_dep],
+- 'install_rpath' : installed_tests_execdir
+- },
+ 'gdbus-peer-object-manager' : {},
+ 'live-g-file' : {},
+ 'socket-address' : {},
+@@ -173,19 +167,6 @@ if host_machine.system() != 'windows'
+ }
+ endif
+
+- # Uninstalled because of the check-for-executable logic in DesktopAppInfo
+- # unable to find the installed executable
+- if not glib_have_cocoa
+- gio_tests += {
+- 'appinfo' : {
+- 'install' : false,
+- },
+- 'desktop-app-info' : {
+- 'install' : false,
+- },
+- }
+- endif
+-
+ test_extra_programs += {
+ 'basic-application' : {},
+ 'dbus-launch' : {},
+diff --git a/glib/tests/meson.build b/glib/tests/meson.build
+index 8da477d19..9fa24dd49 100644
+--- a/glib/tests/meson.build
++++ b/glib/tests/meson.build
+@@ -103,7 +103,6 @@ glib_tests = {
+ 'utf8-pointer' : {},
+ 'utf8-validate' : {},
+ 'utf8-misc' : {},
+- 'utils' : {},
+ 'unicode' : {},
+ 'uri' : {},
+ '1bit-mutex' : {},
+@@ -151,7 +150,6 @@ if host_machine.system() == 'windows'
+ else
+ glib_tests += {
+ 'include' : {},
+- 'unix' : {},
+ }
+ if have_rtld_next
+ glib_tests += {
+--
+2.26.2
+
diff --git a/gnu/packages/patches/glib-tests-timer.patch b/gnu/packages/patches/glib-tests-timer.patch
deleted file mode 100644
index e37425c0c8..0000000000
--- a/gnu/packages/patches/glib-tests-timer.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-* On i686 floating-point roundoff errors could sometimes cause this check to
- fail depending on the elapsed microseconds. Improve rounding by adding a
- fractional bit.
-
---- glib-2.40.0/glib/tests/timer.c 2014-03-05 08:05:42.000000000 -0600
-+++ glib-2.40.0/glib/tests/timer.c 2014-07-10 16:33:12.746862822 -0500
-@@ -35,7 +35,7 @@
- elapsed = g_timer_elapsed (timer, µs);
-
- g_assert_cmpfloat (elapsed, <, 1.0);
-- g_assert_cmpuint (micros, ==, ((guint64)(elapsed * 1e6)) % 1000000);
-+ g_assert_cmpuint (micros, ==, ((guint64)(elapsed * 1e6 + 0.5)) % 1000000);
-
- g_timer_destroy (timer);
- }
--
2.28.0
[-- Attachment #4: 0011-gnu-glib-Update-synopsis-and-description.patch --]
[-- Type: text/x-patch, Size: 1467 bytes --]
From 2976c0ac467b692da996332f719df3abf90c2a9e Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <raghavgururajan@disroot.org>
Date: Thu, 24 Sep 2020 08:16:48 -0400
Subject: [PATCH 11/11] gnu: glib: Update synopsis and description.
* gnu/packages/glib.scm (glib) [synopsis]: Modify.
[description]: Modify.
---
gnu/packages/glib.scm | 11 +++++------
1 file changed, 5 insertions(+), 6 deletions(-)
diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
index be5d45596d..2cda6cd000 100644
--- a/gnu/packages/glib.scm
+++ b/gnu/packages/glib.scm
@@ -279,12 +279,11 @@ shared NFS home directories.")
(variable "GIO_EXTRA_MODULES")
(files '("lib/gio/modules")))))
(search-paths native-search-paths)
- (synopsis "Thread-safe general utility library; basis of GTK+ and GNOME")
- (description
- "GLib provides data structure handling for C, portability wrappers,
-and interfaces for such runtime functionality as an event loop, threads,
-dynamic loading, and an object system.")
- (home-page "https://developer.gnome.org/glib/")
+ (synopsis "Low-level core library for GNOME projects")
+ (description "GLib provides data structure handling for C, portability
+wrappers, and interfaces for such runtime functionality as an event loop,
+threads, dynamic loading, and an object system.")
+ (home-page "https://wiki.gnome.org/Projects/GLib")
(license license:lgpl2.1+)))
(define-public glib-with-documentation
--
2.28.0
next prev parent reply other threads:[~2020-09-24 12:30 UTC|newest]
Thread overview: 68+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-08-20 15:09 [bug#42958] [PATCH core-updates 00/29] Big changes from wip-desktop Danny Milosavljevic
2020-08-20 15:10 ` [bug#42958] [PATCH core-updates 01/29] gnu: yelp-xsl: Update package definition Danny Milosavljevic
2020-08-20 15:10 ` [bug#42958] [PATCH core-updates 02/29] gnu: yelp-tools: " Danny Milosavljevic
2020-08-30 20:54 ` Ludovic Courtès
2020-08-20 15:10 ` [bug#42958] [PATCH core-updates 03/29] gnu: glib: " Danny Milosavljevic
2020-08-20 15:10 ` [bug#42958] [PATCH core-updates 04/29] gnu: glib-with-documentation: " Danny Milosavljevic
2020-08-20 15:10 ` [bug#42958] [PATCH core-updates 05/29] gnu: gobject-introspection: " Danny Milosavljevic
2020-09-23 13:40 ` Danny Milosavljevic
2020-09-23 13:45 ` Danny Milosavljevic
2020-09-24 11:36 ` Danny Milosavljevic
2020-08-20 15:10 ` [bug#42958] [PATCH core-updates 06/29] gnu: gobject-introspection: Propagate glib Danny Milosavljevic
2020-08-20 15:10 ` [bug#42958] [PATCH core-updates 07/29] gnu: gobject-introspection: Add patches back Danny Milosavljevic
2020-08-20 15:10 ` [bug#42958] [PATCH core-updates 08/29] gnu: pixman: Update package definition Danny Milosavljevic
2020-08-20 15:10 ` [bug#42958] [PATCH core-updates 09/29] gnu: openjpeg: " Danny Milosavljevic
2020-08-20 16:45 ` Danny Milosavljevic
2020-08-20 15:10 ` [bug#42958] [PATCH core-updates 10/29] gnu: cairo: " Danny Milosavljevic
2020-08-20 15:10 ` [bug#42958] [PATCH core-updates 11/29] gnu: pango: " Danny Milosavljevic
2020-08-20 16:27 ` Danny Milosavljevic
2020-08-20 16:29 ` Danny Milosavljevic
2020-08-20 15:10 ` [bug#42958] [PATCH core-updates 12/29] gnu: gdk-pixbuf: " Danny Milosavljevic
2020-08-24 0:19 ` Danny Milosavljevic
2020-08-20 15:10 ` [bug#42958] [PATCH core-updates 13/29] gnu: gdk-pixbuf: Disable failing tests Danny Milosavljevic
2020-08-20 15:10 ` [bug#42958] [PATCH core-updates 14/29] gnu: gdk-pixbuf+svg: Update package definition Danny Milosavljevic
2020-08-20 15:10 ` [bug#42958] [PATCH core-updates 15/29] gnu: vala: " Danny Milosavljevic
2020-08-20 15:10 ` [bug#42958] [PATCH core-updates 16/29] gnu: libgsf: " Danny Milosavljevic
2020-08-20 15:10 ` [bug#42958] [PATCH core-updates 17/29] gnu: librsvg@2.40.21: " Danny Milosavljevic
2020-08-20 15:10 ` [bug#42958] [PATCH core-updates 18/29] gnu: atk: Update to 2.36.0 Danny Milosavljevic
2020-08-20 15:10 ` [bug#42958] [PATCH core-updates 19/29] gnu: gtk+-2: Update package definition Danny Milosavljevic
2020-08-20 15:10 ` [bug#42958] [PATCH core-updates 20/29] gnu: wayland: " Danny Milosavljevic
2020-08-20 15:10 ` [bug#42958] [PATCH core-updates 21/29] gnu: wayland-protocols: " Danny Milosavljevic
2020-08-20 15:10 ` [bug#42958] [PATCH core-updates 22/29] gnu: atkmm: " Danny Milosavljevic
2020-08-20 16:45 ` Danny Milosavljevic
2020-08-20 16:48 ` Danny Milosavljevic
2020-08-20 15:10 ` [bug#42958] [PATCH core-updates 23/29] gnu: gtk-doc: " Danny Milosavljevic
2020-08-20 15:10 ` [bug#42958] [PATCH core-updates 24/29] gnu: json-glib: " Danny Milosavljevic
2020-08-20 15:10 ` [bug#42958] [PATCH core-updates 25/29] gnu: at-spi2-core: " Danny Milosavljevic
2020-08-20 15:10 ` [bug#42958] [PATCH core-updates 26/29] gnu: at-spi2-atk: Update to 2.34.2 Danny Milosavljevic
2020-08-20 15:10 ` [bug#42958] [PATCH core-updates 27/29] gnu: gtk+: Update package definition Danny Milosavljevic
2020-08-20 16:44 ` Danny Milosavljevic
2020-08-20 15:10 ` [bug#42958] [PATCH core-updates 28/29] gnu: gtk+: Propagate libcloudproviders Danny Milosavljevic
2020-08-20 15:10 ` [bug#42958] [PATCH core-updates 29/29] gnu: gtk+: Add missing input Danny Milosavljevic
2020-09-24 12:26 ` [bug#42958] [PATCH core-updates 01/29] gnu: yelp-xsl: Update package definition Raghav Gururajan
2020-09-24 12:27 ` [bug#42958] [PATCH core-updates 02/29] gnu: yelp-tools: " Raghav Gururajan
2020-09-24 12:28 ` Raghav Gururajan [this message]
2020-09-24 12:55 ` [bug#42958] [PATCH core-updates 03/29] gnu: glib: " Efraim Flashner
2020-11-29 12:21 ` Danny Milosavljevic
2020-12-04 6:08 ` [bug#42958] Raghav Gururajan via Guix-patches via
2020-09-27 10:12 ` [bug#42958] [PATCH core-updates 03/29] gnu: glib: Update package definition Danny Milosavljevic
2020-09-24 12:41 ` [bug#42958] [PATCH core-updates 04/29] gnu: glib-with-documentation: Update, " Raghav Gururajan
2020-09-24 12:50 ` Efraim Flashner
2020-09-24 13:14 ` [bug#42958] [PATCH core-updates 05/29] gnu: gobject-introspection: Update package, definition Raghav Gururajan
2020-09-24 13:32 ` Raghav Gururajan
2020-09-24 13:52 ` Danny Milosavljevic
2020-09-24 14:17 ` Raghav Gururajan
2020-09-24 13:20 ` [bug#42958] [PATCH core-updates 06/29] gnu: gobject-introspection: Propagate glib Raghav Gururajan
2020-09-24 13:33 ` [bug#42958] [PATCH core-updates 07/29] gnu: gobject-introspection: Add patches, back Raghav Gururajan
2020-09-24 14:33 ` [bug#42958] [PATCH core-updates 08/29] gnu: pixman: Update package definition Raghav Gururajan
2020-09-24 15:03 ` [bug#42958] [PATCH core-updates 09/29] gnu: openjpeg: " Raghav Gururajan
2020-09-24 15:35 ` [bug#42958] [PATCH core-updates 10/29] gnu: cairo: " Raghav Gururajan
[not found] ` <handler.42958.B.159793618623098.ack@debbugs.gnu.org>
2020-12-01 21:07 ` [bug#42958] ([PATCH core-updates 00/29] Big changes from wip-desktop.) Danny Milosavljevic
2021-03-11 14:45 ` [bug#42958] Raghav Gururajan via Guix-patches via
2021-03-12 16:37 ` [bug#42958] Big changes from wip-desktop Raghav Gururajan via Guix-patches via
2021-03-12 17:19 ` Raghav Gururajan via Guix-patches via
2021-03-25 12:08 ` Raghav Gururajan via Guix-patches via
2021-03-26 1:00 ` Raghav Gururajan via Guix-patches via
2021-03-26 20:12 ` Raghav Gururajan via Guix-patches via
2021-03-26 20:38 ` Raghav Gururajan via Guix-patches via
2021-03-26 21:22 ` bug#42958: " Léo Le Bouter via Guix-patches via
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://guix.gnu.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5acf11ff-2410-d336-4037-8e7665c78083@disroot.org \
--to=raghavgururajan@disroot.org \
--cc=42958@debbugs.gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/guix.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).