gnu: glib: Update to 2.54.1.

See <https://bugzilla.gnome.org/show_bug.cgi?id=776504> for the license change.

* gnu/packages/patches/glib-respect-datadir.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/glib.scm (glib): Update to 2.54.1.
[source](patches): Add 'glib-respect-datadir.patch'.
[arguments]<#:phases>: Re-enable timezone test.
[license]: Change to LGPL2.1+.
This commit is contained in:
Marius Bakke 2017-10-07 14:15:55 +02:00
parent 4bc2f9dca3
commit c60ecc35da
No known key found for this signature in database
GPG Key ID: A2A06DF2A33A54FA
3 changed files with 28 additions and 10 deletions

View File

@ -653,6 +653,7 @@ dist_patch_DATA = \
%D%/packages/patches/ghostscript-no-header-creationdate.patch \ %D%/packages/patches/ghostscript-no-header-creationdate.patch \
%D%/packages/patches/ghostscript-runpath.patch \ %D%/packages/patches/ghostscript-runpath.patch \
%D%/packages/patches/glib-networking-ssl-cert-file.patch \ %D%/packages/patches/glib-networking-ssl-cert-file.patch \
%D%/packages/patches/glib-respect-datadir.patch \
%D%/packages/patches/glib-tests-timer.patch \ %D%/packages/patches/glib-tests-timer.patch \
%D%/packages/patches/glibc-CVE-2015-5180.patch \ %D%/packages/patches/glibc-CVE-2015-5180.patch \
%D%/packages/patches/glibc-CVE-2015-7547.patch \ %D%/packages/patches/glibc-CVE-2015-7547.patch \

View File

@ -137,7 +137,7 @@ shared NFS home directories.")
(define glib (define glib
(package (package
(name "glib") (name "glib")
(version "2.52.3") (version "2.54.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/" (uri (string-append "mirror://gnome/sources/"
@ -145,8 +145,9 @@ shared NFS home directories.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0a71wkkhkvad84gm30w13micxxgqqw3sxhybj7nd9z60lwspdvi5")) "18s7rw127wrvb107bkmxd1lmh62b2v19ww5rz7xi0krj34a1ph2h"))
(patches (search-patches "glib-tests-timer.patch")))) (patches (search-patches "glib-respect-datadir.patch"
"glib-tests-timer.patch"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(outputs '("out" ; everything (outputs '("out" ; everything
"bin" ; glib-mkenums, gtester, etc.; depends on Python "bin" ; glib-mkenums, gtester, etc.; depends on Python
@ -247,12 +248,7 @@ shared NFS home directories.")
("gio/tests/gdbus-unix-addresses.c" ("gio/tests/gdbus-unix-addresses.c"
(;; Requires /etc/machine-id. (;; Requires /etc/machine-id.
"/gdbus/x11-autolaunch")) "/gdbus/x11-autolaunch")))))
("glib/tests/gdatetime.c"
(;; Assumes that the Brasilian time zone is named 'BRT',
;; which is no longer true as of tzdata-2017a.
"/GDateTime/new_full")))))
(and-map (lambda (x) (apply disable x)) failing-tests))))) (and-map (lambda (x) (apply disable x)) failing-tests)))))
;; Note: `--docdir' and `--htmldir' are not honored, so work around it. ;; Note: `--docdir' and `--htmldir' are not honored, so work around it.
@ -284,7 +280,7 @@ shared NFS home directories.")
and interfaces for such runtime functionality as an event loop, threads, and interfaces for such runtime functionality as an event loop, threads,
dynamic loading, and an object system.") dynamic loading, and an object system.")
(home-page "https://developer.gnome.org/glib/") (home-page "https://developer.gnome.org/glib/")
(license license:lgpl2.0+))) ; some files are under lgpl2.1+ (license license:lgpl2.1+)))
(define gobject-introspection (define gobject-introspection
(package (package

View File

@ -0,0 +1,21 @@
On Guix, Python modules are in a different output from the executables,
so searching "../share/glib-2.0" will not work.
This patch restores behaviour prior to this commit:
<https://git.gnome.org/browse/glib/commit/?id=fe2a9887a8ccb14f2386e01b14834e97a33bc2d7>
--- a/gio/gdbus-2.0/codegen/gdbus-codegen.in
+++ b/gio/gdbus-2.0/codegen/gdbus-codegen.in
@@ -25,9 +25,12 @@
srcdir = os.getenv('UNINSTALLED_GLIB_SRCDIR', None)
filedir = os.path.dirname(__file__)
+datadir = os.path.join('@datadir@', 'glib-2.0')
if srcdir is not None:
path = os.path.join(srcdir, 'gio', 'gdbus-2.0')
+elif os.path.exists(os.path.join(datadir, 'codegen')):
+ path = datadir
elif os.path.basename(filedir) == 'bin':
# Make the prefix containing gdbus-codegen 'relocatable' at runtime by
# adding /some/prefix/bin/../share/glib-2.0 to the python path