Merge branch 'staging'

This commit is contained in:
Marius Bakke 2018-03-20 14:13:05 +01:00
commit dc7e07c9b9
No known key found for this signature in database
GPG key ID: A2A06DF2A33A54FA
28 changed files with 591 additions and 223 deletions

View file

@ -700,6 +700,7 @@ dist_patch_DATA = \
%D%/packages/patches/ghostscript-no-header-uuid.patch \
%D%/packages/patches/ghostscript-no-header-creationdate.patch \
%D%/packages/patches/ghostscript-runpath.patch \
%D%/packages/patches/giflib-make-reallocarray-private.patch \
%D%/packages/patches/gimp-CVE-2017-17784.patch \
%D%/packages/patches/gimp-CVE-2017-17785.patch \
%D%/packages/patches/gimp-CVE-2017-17786.patch \
@ -728,6 +729,7 @@ dist_patch_DATA = \
%D%/packages/patches/glog-gcc-5-demangling.patch \
%D%/packages/patches/gmp-arm-asm-nothumb.patch \
%D%/packages/patches/gmp-faulty-test.patch \
%D%/packages/patches/gnome-todo-libical-compat.patch \
%D%/packages/patches/gnome-tweak-tool-search-paths.patch \
%D%/packages/patches/gnucash-price-quotes-perl.patch \
%D%/packages/patches/gnutls-skip-trust-store-test.patch \
@ -754,7 +756,6 @@ dist_patch_DATA = \
%D%/packages/patches/gtk2-respect-GUIX_GTK2_PATH.patch \
%D%/packages/patches/gtk2-respect-GUIX_GTK2_IM_MODULE_FILE.patch \
%D%/packages/patches/gtk2-theme-paths.patch \
%D%/packages/patches/gtk2-fix-failing-test.patch \
%D%/packages/patches/gtk3-respect-GUIX_GTK3_PATH.patch \
%D%/packages/patches/gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch \
%D%/packages/patches/gtkglext-disable-disable-deprecated.patch \
@ -796,6 +797,7 @@ dist_patch_DATA = \
%D%/packages/patches/java-xerces-xjavac_taskdef.patch \
%D%/packages/patches/jemalloc-arm-address-bits.patch \
%D%/packages/patches/jbig2dec-ignore-testtest.patch \
%D%/packages/patches/json-glib-fix-tests-32bit.patch \
%D%/packages/patches/jq-CVE-2015-8863.patch \
%D%/packages/patches/kdbusaddons-kinit-file-name.patch \
%D%/packages/patches/khmer-use-libraries.patch \

View file

@ -1091,7 +1091,7 @@ (define-public glibc/hurd-headers
(define-public tzdata
(package
(name "tzdata")
(version "2017c")
(version "2018c")
(source (origin
(method url-fetch)
(uri (string-append
@ -1099,8 +1099,81 @@ (define-public tzdata
version ".tar.gz"))
(sha256
(base32
"02yrrfj0p7ar885ja41ylijzbr8wc6kz6kzlw8c670i9m693ym6n"))))
"1xik57rdi7kqa0wb5jbz7vyjyxpr88lw1g4kscj0ylpgnzjc6998"))))
(build-system gnu-build-system)
(arguments
'(#:tests? #f
#:make-flags (let ((out (assoc-ref %outputs "out"))
(tmp (getenv "TMPDIR")))
(list (string-append "TOPDIR=" out)
(string-append "TZDIR=" out "/share/zoneinfo")
(string-append "TZDEFAULT=" out
"/share/zoneinfo/localtime")
;; Likewise for the C library routines.
(string-append "LIBDIR=" tmp "/lib")
(string-append "MANDIR=" tmp "/man")
"AWK=awk"
"CC=gcc"))
#:modules ((guix build utils)
(guix build gnu-build-system)
(srfi srfi-1))
#:phases
(modify-phases %standard-phases
(replace 'unpack
(lambda* (#:key source inputs #:allow-other-keys)
(and (zero? (system* "tar" "xvf" source))
(zero? (system* "tar" "xvf" (assoc-ref inputs "tzcode"))))))
(add-after 'install 'post-install
(lambda* (#:key outputs #:allow-other-keys)
;; Move data in the right place.
(let ((out (assoc-ref outputs "out")))
;; Discard zic, dump, and tzselect, already
;; provided by glibc.
(delete-file-recursively (string-append out "/usr"))
(symlink (string-append out "/share/zoneinfo")
(string-append out "/share/zoneinfo/posix"))
(delete-file-recursively
(string-append out "/share/zoneinfo-posix"))
(copy-recursively (string-append out "/share/zoneinfo-leaps")
(string-append out "/share/zoneinfo/right"))
(delete-file-recursively
(string-append out "/share/zoneinfo-leaps")))))
(delete 'configure))))
(inputs `(("tzcode" ,(origin
(method url-fetch)
(uri (string-append
"http://www.iana.org/time-zones/repository/releases/tzcode"
version ".tar.gz"))
(sha256
(base32
"0rg6s1vlgwd8sjhla55hx2h5m2xbx0shm347pkbg4vsaz707zyii"))))))
(home-page "https://www.iana.org/time-zones")
(synopsis "Database of current and historical time zones")
(description "The Time Zone Database (often called tz or zoneinfo)
contains code and data that represent the history of local time for many
representative locations around the globe. It is updated periodically to
reflect changes made by political bodies to time zone boundaries, UTC offsets,
and daylight-saving rules.")
(license public-domain)))
;;; A "fixed" version of tzdata, which is used in the test suites of glib and R
;;; and a few other places. We can update this whenever we are able to rebuild
;;; thousands of packages (for example, in a core-updates rebuild). This package
;;; will typically be obsolete and should never be referred to by a built
;;; package.
(define-public tzdata-for-tests
(hidden-package (package (inherit tzdata)
(version "2017c")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.iana.org/time-zones/repository"
"/releases/tzdata" version ".tar.gz"))
(sha256
(base32
"02yrrfj0p7ar885ja41ylijzbr8wc6kz6kzlw8c670i9m693ym6n"))))
(arguments
'(#:tests? #f
#:make-flags (let ((out (assoc-ref %outputs "out"))
@ -1140,39 +1213,6 @@ (define-public tzdata
(delete-file-recursively
(string-append out "/share/zoneinfo-leaps")))))
(delete 'configure))))
(inputs `(("tzcode" ,(origin
(method url-fetch)
(uri (string-append
"http://www.iana.org/time-zones/repository/releases/tzcode"
version ".tar.gz"))
(sha256
(base32
"1dvrq0b2hz7cjqdyd7x21wpy4qcng3rvysr61ij0c2g64fyb9s41"))))))
(home-page "https://www.iana.org/time-zones")
(synopsis "Database of current and historical time zones")
(description "The Time Zone Database (often called tz or zoneinfo)
contains code and data that represent the history of local time for many
representative locations around the globe. It is updated periodically to
reflect changes made by political bodies to time zone boundaries, UTC offsets,
and daylight-saving rules.")
(license public-domain)))
;;; A "fixed" version of tzdata, which is used in the test suites of glib and R
;;; and a few other places. We can update this whenever we are able to rebuild
;;; thousands of packages (for example, in a core-updates rebuild). This package
;;; will typically be obsolete and should never be referred to by a built
;;; package.
(define-public tzdata-for-tests
(hidden-package (package (inherit tzdata)
(version "2017c")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.iana.org/time-zones/repository"
"/releases/tzdata" version ".tar.gz"))
(sha256
(base32
"02yrrfj0p7ar885ja41ylijzbr8wc6kz6kzlw8c670i9m693ym6n"))))
(inputs `(("tzcode" ,(origin
(method url-fetch)
(uri (string-append
@ -1182,7 +1222,6 @@ (define-public tzdata-for-tests
(base32
"1dvrq0b2hz7cjqdyd7x21wpy4qcng3rvysr61ij0c2g64fyb9s41")))))))))
(define-public libiconv
(package
(name "libiconv")

View file

@ -71,7 +71,7 @@ (define-public bam
(define-public meson
(package
(name "meson")
(version "0.44.0")
(version "0.45.0")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/mesonbuild/meson/"
@ -79,8 +79,17 @@ (define-public meson
version ".tar.gz"))
(sha256
(base32
"06r8limj38mv884s5riiz6lpzw37cvhbf9jd0smzcbi7fwmv3yah"))))
"1r3wlimllakrswx2rb4mbdk1iricqk6myvdvib6dkyx362yanm9l"))))
(build-system python-build-system)
(arguments
`(;; FIXME: Tests require many additional inputs, a fix for the RUNPATH
;; patch in meson-for-build, and patching many hard-coded file system
;; locations in "run_unittests.py".
#:tests? #f
#:phases (modify-phases %standard-phases
;; Meson calls the various executables in out/bin through the
;; Python interpreter, so we cannot use the shell wrapper.
(delete 'wrap))))
(inputs `(("ninja" ,ninja)))
(propagated-inputs `(("python" ,python)))
(home-page "https://mesonbuild.com/")
@ -98,15 +107,8 @@ (define-public meson-for-build
(package
(inherit meson)
(name "meson-for-build")
(version "0.42.1")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/mesonbuild/meson/"
"archive/" version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"1494hdnd40g2v6pky34j0f2iwc6kwn51vck37qwz7nl2xr17b18q"))
(inherit (package-source meson))
(patches (search-patches "meson-for-build-rpath.patch"))))
;; People should probably install "meson", not "meson-for-build".

View file

@ -35,16 +35,19 @@ (define-module (gnu packages calendar)
#:use-module (gnu packages databases)
#:use-module (gnu packages dav)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages glib)
#:use-module (gnu packages icu4c)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages time)
#:use-module (gnu packages xml)
#:use-module (srfi srfi-26))
(define-public libical
(package
(name "libical")
(version "2.0.0")
(version "3.0.3")
(source (origin
(method url-fetch)
(uri (string-append
@ -52,15 +55,18 @@ (define-public libical
version "/libical-" version ".tar.gz"))
(sha256
(base32
"1njn2kr0rrjqv5g3hdhpdzrhankyj4fl1bgn76z3g4n1b7vi2k35"))))
"0hcjyf35b8rrvy8xziqxc4imi28mmkixb09gknisvp6jsa5fp4av"))))
(build-system cmake-build-system)
(arguments
'(#:tests? #f ; test suite appears broken
#:configure-flags '("-DSHARED_ONLY=true")
#:phases
(modify-phases %standard-phases
(add-before 'configure 'patch-paths
(lambda _
(let ((tzdata (assoc-ref %build-inputs "tzdata")))
(lambda* (#:key inputs #:allow-other-keys)
;; FIXME: This should be patched to use TZDIR so we can drop
;; the tzdata dependency.
(let ((tzdata (assoc-ref inputs "tzdata")))
(substitute* "src/libical/icaltz-util.c"
(("\\\"/usr/share/zoneinfo\\\",")
(string-append "\"" tzdata "/share/zoneinfo\""))
@ -69,16 +75,22 @@ (define-public libical
(("\\\"/usr/share/lib/zoneinfo\\\"") "")))
#t)))))
(native-inputs
`(("perl" ,perl)))
`(("perl" ,perl)
("pkg-config" ,pkg-config)))
(inputs
`(("icu4c" ,icu4c)
`(("glib" ,glib)
("libxml2" ,libxml2)
("tzdata" ,tzdata)))
(propagated-inputs
;; In Requires.private of libical.pc.
`(("icu4c" ,icu4c)))
(home-page "https://libical.github.io/libical/")
(synopsis "iCalendar protocols and data formats implementation")
(description
"Libical is an implementation of the iCalendar protocols and protocol
data units.")
(license license:lgpl2.1)))
;; Can be used with either license. See COPYING.
(license (list license:lgpl2.1 license:mpl2.0))))
(define-public khal
(package

View file

@ -75,7 +75,7 @@ (define certdata2pem
(define-public nss-certs
(package
(name "nss-certs")
(version "3.35")
(version "3.36")
(source (origin
(method url-fetch)
(uri (let ((version-with-underscores
@ -86,7 +86,7 @@ (define-public nss-certs
"nss-" version ".tar.gz")))
(sha256
(base32
"1ypn68z9ncbbshi3184ywrhx5i846lyd72gps1grzqzdkgh7s4pl"))))
"1580qc0a4s8v3k3vg7zz4xly4alkjrw7qq9zy2nf6p4v56wcfg53"))))
(build-system gnu-build-system)
(outputs '("out"))
(native-inputs
@ -102,8 +102,10 @@ (define-public nss-certs
(srfi srfi-26)
(ice-9 regex))
#:phases
(alist-cons-after
'unpack 'install
(modify-phases
(map (cut assq <> %standard-phases)
'(set-paths install-locale unpack))
(add-after 'unpack 'install
(lambda _
(let ((certsdir (string-append %output "/etc/ssl/certs/"))
(trusted-rx (make-regexp "^# openssl-trust=[a-zA-Z]"
@ -131,10 +133,9 @@ (define (maybe-install-cert file)
;; "Usage error; try -help."
;; This looks like a bug in openssl-1.0.2, but we can also
;; switch into the target directory.
(system* "c_rehash" "."))))
(invoke "c_rehash" "."))
#t))))))
(map (cut assq <> %standard-phases)
'(set-paths install-locale unpack)))))
(synopsis "CA certificates from Mozilla")
(description
"This package provides certificates for Certification Authorities (CA)

View file

@ -22,6 +22,7 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages elf)
#:use-module (guix utils)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix build-system gnu)
@ -121,20 +122,18 @@ (define-public patchelf
;; patch makes significant changes to the algorithm, possibly
;; introducing bugs. So, we apply the patch only on ARM systems.
(inputs
(if (string-prefix? "arm" (or (%current-target-system) (%current-system)))
(if (target-arm32?)
`(("patch/rework-for-arm" ,(search-patch
"patchelf-rework-for-arm.patch")))
'()))
(arguments
(if (string-prefix? "arm" (or (%current-target-system) (%current-system)))
`(#:phases (alist-cons-after
'unpack 'patch/rework-for-arm
(lambda* (#:key inputs #:allow-other-keys)
(let ((patch-file
(assoc-ref inputs "patch/rework-for-arm")))
(zero? (system* "patch" "--force" "-p1"
"--input" patch-file))))
%standard-phases))
(if (target-arm32?)
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch/rework-for-arm
(lambda* (#:key inputs #:allow-other-keys)
(let ((patch-file (assoc-ref inputs "patch/rework-for-arm")))
(invoke "patch" "--force" "-p1" "--input" patch-file))))))
'()))
(home-page "https://nixos.org/patchelf.html")

View file

@ -8,7 +8,7 @@
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Kei Kebreau <kkebreau@posteo.net>
;;; Copyright © 2017 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2017, 2018 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2017 Brendan Tildesley <brendan.tildesley@openmailbox.org>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
@ -30,10 +30,12 @@
(define-module (gnu packages freedesktop)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix utils)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix build-system gnu)
#:use-module (guix build-system meson)
#:use-module (guix build-system perl)
#:use-module (guix build-system python)
#:use-module (gnu packages acl)
@ -68,11 +70,13 @@ (define-module (gnu packages freedesktop)
#:use-module (gnu packages perl)
#:use-module (gnu packages perl-check)
#:use-module (gnu packages python)
#:use-module (gnu packages valgrind)
#:use-module (gnu packages w3m)
#:use-module (gnu packages web)
#:use-module (gnu packages xml)
#:use-module (gnu packages xdisorg)
#:use-module (gnu packages xorg))
#:use-module (gnu packages xorg)
#:use-module (srfi srfi-1))
(define-public xdg-utils
(package
@ -142,26 +146,31 @@ (define-public xdg-utils
(define-public libinput
(package
(name "libinput")
(version "1.7.3")
(version "1.10.2")
(source (origin
(method url-fetch)
(uri (string-append "https://freedesktop.org/software/libinput/"
name "-" version ".tar.xz"))
(sha256
(base32
"07fbzxddvhjcch43hdxb24sj7ri96zzpcjalvsicmw0i4wnn2v89"))))
(build-system gnu-build-system)
"1fbv354ii1g4wc4k7d7gbnalqjpzmk9zlpi8linqrzlf6inpc28m"))))
(build-system meson-build-system)
(arguments
`(#:configure-flags '("-Ddocumentation=false")))
(native-inputs
`(("cairo" ,cairo)
("gtk+" ,gtk+)
("pkg-config" ,pkg-config)))
`(("check" ,check)
("pkg-config" ,pkg-config)
("valgrind" ,valgrind)))
(propagated-inputs
`(("libudev" ,eudev))) ; required by libinput.pc
(inputs
`(("glib" ,glib)
`(;; In Requires.private of libinput.pc.
("libevdev" ,libevdev)
("mtdev" ,mtdev)
("libwacom" ,libwacom)))
("libudev" ,eudev)
("libwacom" ,libwacom)
("mtdev" ,mtdev)))
(inputs
`(("cairo" ,cairo)
("glib" ,glib)
("gtk+" ,gtk+)))
(home-page "https://www.freedesktop.org/wiki/Software/libinput/")
(synopsis "Input devices handling library")
(description
@ -172,14 +181,15 @@ (define-public libinput
(define-public libinput-minimal
(package (inherit libinput)
(name "libinput-minimal")
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs
`(("libevdev" ,libevdev)
("mtdev" ,mtdev)))
(inputs '())
(propagated-inputs
(alist-delete "libwacom" (package-propagated-inputs libinput)))
(arguments
`(#:configure-flags
'("--disable-libwacom")))))
(substitute-keyword-arguments (package-arguments libinput)
((#:configure-flags flags ''())
`(cons* "-Dlibwacom=false"
"-Ddebug-gui=false" ;requires gtk+@3
,flags))))))
(define-public libxdg-basedir
(package

View file

@ -8,7 +8,7 @@
;;; Copyright © 2016 David Thompson <davet@gnu.org>
;;; Copyright © 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2017, 2018 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
;;; This file is part of GNU Guix.
@ -222,7 +222,7 @@ (define libva-without-mesa
(define-public mesa
(package
(name "mesa")
(version "17.3.1")
(version "17.3.6")
(source
(origin
(method url-fetch)
@ -234,7 +234,7 @@ (define-public mesa
version "/mesa-" version ".tar.xz")))
(sha256
(base32
"1h94m2nkxa1y4n415d5idk2x2lkgbvjcikv6r2r6yn4ak7h0grls"))
"1y7vawz2sbpzdqk4b60w8kfrxb2rfkdjkifyxxfx1jaasj05d4g5"))
(patches
(search-patches "mesa-wayland-egl-symbols-check-mips.patch"
"mesa-skip-disk-cache-test.patch"))))
@ -556,7 +556,7 @@ (define (dynamic-link-substitute file lib input)
(define-public libepoxy
(package
(name "libepoxy")
(version "1.4.1")
(version "1.5.0")
(source (origin
(method url-fetch)
(uri (string-append
@ -564,7 +564,7 @@ (define-public libepoxy
version "/libepoxy-" version ".tar.xz"))
(sha256
(base32
"19hsyap2p0sflj75ycf4af9bsp453bamymbcgnmrphigabsspil8"))))
"1md58amxyp34yjnw4xa185hw5jm0hnb2xnhdc28zdsx6k19rk52c"))))
(arguments
`(#:phases
(modify-phases %standard-phases
@ -575,10 +575,6 @@ (define-public libepoxy
(mesa (assoc-ref inputs "mesa")))
(substitute* "src/gen_dispatch.py"
(("/usr/bin/env python") python))
;; Add support for aarch64, see upstream:
;; https://github.com/anholt/libepoxy/pull/114
(substitute* "test/dlwrap.c"
(("GLIBC_2.4") "GLIBC_2.17\", \"GLIBC_2.4"))
(substitute* (find-files "." "\\.[ch]$")
(("libGL.so.1") (string-append mesa "/lib/libGL.so.1"))
(("libEGL.so.1") (string-append mesa "/lib/libEGL.so.1")))

View file

@ -1157,7 +1157,7 @@ (define-public libcroco
(define-public libgsf
(package
(name "libgsf")
(version "1.14.41")
(version "1.14.42")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
@ -1165,7 +1165,7 @@ (define-public libgsf
name "-" version ".tar.xz"))
(sha256
(base32
"1lq87wnrsjbjafpk3c8xwd56gqx319fhck9xkg2da88hd9c9h2qm"))))
"1hhdz0ymda26q6bl5ygickkgrh998lxqq4z9i8dzpcvqna3zpzr9"))))
(build-system gnu-build-system)
(native-inputs
`(("intltool" ,intltool)
@ -2265,18 +2265,20 @@ (define-public dconf
(define-public json-glib
(package
(name "json-glib")
(version "1.2.8")
(version "1.4.2")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
(version-major+minor version) "/"
name "-" version ".tar.xz"))
(patches (search-patches "json-glib-fix-tests-32bit.patch"))
(sha256
(base32
"02pl0wl3mf47c038bgv2r4pa6pr6y3shjhxn1l7s3rrrgl1sjmgx"))))
(build-system gnu-build-system)
"1j3dd2xj1l9fi12m1gpmfgf5p4c1w0i970m6k62k3is98yj0jxrd"))))
(build-system meson-build-system)
(native-inputs
`(("glib" ,glib "bin") ;for glib-mkenums and glib-genmarshal
`(("gettext" ,gettext-minimal)
("glib" ,glib "bin") ;for glib-mkenums and glib-genmarshal
("gobject-introspection" ,gobject-introspection)
("pkg-config" ,pkg-config)))
(propagated-inputs
@ -4873,7 +4875,7 @@ (define-public gnome-online-accounts
(define-public evolution-data-server
(package
(name "evolution-data-server")
(version "3.24.3")
(version "3.26.6")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
@ -4881,27 +4883,44 @@ (define-public evolution-data-server
name "-" version ".tar.xz"))
(sha256
(base32
"1jj1q81bl3r0c8rnsfqi83igqlprzdcjim1fvygbyfy7b8gigqqk"))))
"1v0hwlrlm23bz5dmamdavm771f4gs64fyq82argrc0nwgn2a2fp4"))))
(build-system cmake-build-system)
(arguments
'(;; XXX FIXME: 11/85 tests are failing.
#:tests? #f
#:configure-flags
(list "-DENABLE_UOA=OFF" ;disable Ubuntu Online Accounts support
"-DENABLE_GOOGLE=OFF" ;disable Google Contacts support
"-DENABLE_GOOGLE_AUTH=OFF" ;disable Google authentication
"-DENABLE_VALA_BINDINGS=ON"
;; FIXME: Building against ICU 60 requires C++11 or higher. Remove
;; this when our default compiler is >= GCC6.
"-DCMAKE_CXX_FLAGS=-std=gnu++11"
"-DENABLE_INTROSPECTION=ON") ;required for Vala bindings
(let* ((lib (string-append (assoc-ref %outputs "out")
"/lib"))
(runpaths (map (lambda (s) (string-append
lib "/evolution-data-server/" s))
'("addressbook-backends" "calendar-backends"
"camel-providers" "credential-modules"
"registry-modules"))))
(list "-DENABLE_UOA=OFF" ;disable Ubuntu Online Accounts support
"-DENABLE_GOOGLE=OFF" ;disable Google Contacts support
"-DENABLE_GOOGLE_AUTH=OFF" ;disable Google authentication
"-DENABLE_VALA_BINDINGS=ON"
;; FIXME: Building against ICU 60 requires C++11 or higher. Remove
;; this when our default compiler is >= GCC6.
"-DCMAKE_CXX_FLAGS=-std=gnu++11"
(string-append "-DCMAKE_INSTALL_RPATH=" lib ";"
(string-append lib "/evolution-data-server;")
(string-join runpaths ";"))
"-DENABLE_INTROSPECTION=ON")) ;required for Vala bindings
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-paths
(lambda _
(substitute* "tests/test-server-utils/e-test-server-utils.c"
(("/bin/rm") (which "rm")))
#t)))))
#t))
(add-before 'configure 'dont-override-rpath
(lambda _
(substitute* "CMakeLists.txt"
;; CMakeLists.txt hard-codes runpath to just the libdir.
;; Remove it so the configure flag is respected.
(("SET\\(CMAKE_INSTALL_RPATH .*") ""))
#t)))))
(native-inputs
`(("glib:bin" ,glib "bin") ; for glib-mkenums, etc.
("gobject-introspection" ,gobject-introspection)
@ -6149,7 +6168,7 @@ (define-public gnome-clocks
(define-public gnome-calendar
(package
(name "gnome-calendar")
(version "3.26.2")
(version "3.26.3")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
@ -6157,7 +6176,7 @@ (define-public gnome-calendar
name "-" version ".tar.xz"))
(sha256
(base32
"03n51mvlc0vabr1rx9577z927icl3mrxrrv8zckfjav6p4vwg8hr"))))
"1clnfvvsaqw9vpxrs6qrxzmgpaw9x2nkjik2x2vwvm07pdvhddxn"))))
(build-system meson-build-system)
(arguments
'(#:glib-or-gtk? #t
@ -6189,6 +6208,7 @@ (define-public gnome-todo
(uri (string-append "mirror://gnome/sources/" name "/"
(version-major+minor version) "/"
name "-" version ".tar.xz"))
(patches (search-patches "gnome-todo-libical-compat.patch"))
(sha256
(base32
"106xx1w18pxjmj5k0k2qjzi6b3c3kaz7b5kyrpknykibnr401ff9"))))

View file

@ -7,7 +7,7 @@
;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
;;; Copyright © 2017 ng0 <ng0@infotropique.org>
;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
;;; This file is part of GNU Guix.
;;;
@ -250,7 +250,7 @@ (define-public mozjs-38
(define-public nspr
(package
(name "nspr")
(version "4.17")
(version "4.19")
(source (origin
(method url-fetch)
(uri (string-append
@ -258,7 +258,7 @@ (define-public nspr
version "/src/nspr-" version ".tar.gz"))
(sha256
(base32
"158hdn285dsb5rys8wl1wi32dd1axwhqq0r8fwny4aj157m0l2jr"))))
"0agpv3f17h8kmzi0ifibaaxc1k3xc0q61wqw3l6r2xr2z8bmkn9f"))))
(build-system gnu-build-system)
(native-inputs
`(("perl" ,perl)))
@ -268,6 +268,10 @@ (define-public nspr
(string-append "LDFLAGS=-Wl,-rpath="
(assoc-ref %outputs "out")
"/lib"))
;; Use fixed timestamps for reproducibility.
#:make-flags '("SH_DATE='1970-01-01 00:00:01'"
;; This is epoch 1 in microseconds.
"SH_NOW=100000")
#:phases (modify-phases %standard-phases
(add-before 'configure 'chdir
(lambda _ (chdir "nspr") #t)))))
@ -282,7 +286,7 @@ (define-public nspr
(define-public nss
(package
(name "nss")
(version "3.34.1")
(version "3.36")
(source (origin
(method url-fetch)
(uri (let ((version-with-underscores
@ -293,7 +297,7 @@ (define-public nss
"nss-" version ".tar.gz")))
(sha256
(base32
"186x33wsk4mzjz7dzbn8p0py9a0nzkgzpfkdv4rlyy5gghv5vhd3"))
"1580qc0a4s8v3k3vg7zz4xly4alkjrw7qq9zy2nf6p4v56wcfg53"))
;; Create nss.pc and nss-config.
(patches (search-patches "nss-pkgconfig.patch"
"nss-increase-test-timeout.patch"))))

View file

@ -594,7 +594,7 @@ (define-public at-spi2-atk
(define-public gtk+-2
(package
(name "gtk+")
(version "2.24.31")
(version "2.24.32")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
@ -602,11 +602,10 @@ (define-public gtk+-2
name "-" version ".tar.xz"))
(sha256
(base32
"0n26jm09n03nqbd00d2ij63xrby3vik56sk5yj6w1vy768kr5hb8"))
"0bjq7ja9gwcv6n5q4qkvdjjx40wsdiikksz1zqxvxsm5vlyskj5n"))
(patches (search-patches "gtk2-respect-GUIX_GTK2_PATH.patch"
"gtk2-respect-GUIX_GTK2_IM_MODULE_FILE.patch"
"gtk2-theme-paths.patch"
"gtk2-fix-failing-test.patch"))))
"gtk2-theme-paths.patch"))))
(build-system gnu-build-system)
(outputs '("out" "doc"))
(propagated-inputs
@ -660,7 +659,7 @@ (define-public gtk+
(name "gtk+")
;; NOTE: When updating the version of 'gtk+', the hash of 'mate-themes' in
;; mate.scm will also need to be updated.
(version "3.22.26")
(version "3.22.28")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
@ -668,7 +667,7 @@ (define-public gtk+
name "-" version ".tar.xz"))
(sha256
(base32
"0rxrsh6bcp13hihxxs8f0m9xwniby4lmfi7y5mp9fhg5439z1vk1"))
"07syy63d2q12b7mkbhqpirq270365fsql5l9qsrdgzlc04mn36fj"))
(patches (search-patches "gtk3-respect-GUIX_GTK3_PATH.patch"
"gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch"))))
(outputs '("out" "bin" "doc"))

View file

@ -574,7 +574,9 @@ (define-public giflib
version ".tar.bz2"))
(sha256
(base32
"1md83dip8rf29y40cm5r7nn19705f54iraz6545zhwa6y8zyq9yz"))))
"1md83dip8rf29y40cm5r7nn19705f54iraz6545zhwa6y8zyq9yz"))
(patches (search-patches
"giflib-make-reallocarray-private.patch"))))
(build-system gnu-build-system)
(outputs '("bin" ; utility programs
"out")) ; library

View file

@ -970,7 +970,7 @@ (define-public ltrace
(define-public alsa-lib
(package
(name "alsa-lib")
(version "1.1.4.1")
(version "1.1.5")
(source (origin
(method url-fetch)
(uri (string-append
@ -978,7 +978,7 @@ (define-public alsa-lib
version ".tar.bz2"))
(sha256
(base32
"0xjvi381105gldhv0z872a0x58sghznyx19j45lw5iyi2h68gfwi"))))
"1rhacnlj0grvfagjx5qzsnbhw7m7lyccghqs4jsv0dnsqv9qmxpl"))))
(build-system gnu-build-system)
(home-page "https://www.alsa-project.org/")
(synopsis "The Advanced Linux Sound Architecture libraries")
@ -990,14 +990,14 @@ (define-public alsa-lib
(define-public alsa-utils
(package
(name "alsa-utils")
(version "1.1.4")
(version "1.1.5")
(source (origin
(method url-fetch)
(uri (string-append "ftp://ftp.alsa-project.org/pub/utils/"
name "-" version ".tar.bz2"))
(sha256
(base32
"17cxih9ibjp1193dyd79j50pyfa9dvrs6r9kpwrvzicjvr2110x7"))))
"1s727md6mb408y2cfwzjkx23abxhampyrjdkgpyygdhxx62x42rj"))))
(build-system gnu-build-system)
(arguments
;; XXX: Disable man page creation until we have DocBook.
@ -1037,14 +1037,14 @@ (define-public alsa-utils
(define-public alsa-plugins
(package
(name "alsa-plugins")
(version "1.1.4")
(version "1.1.5")
(source (origin
(method url-fetch)
(uri (string-append "ftp://ftp.alsa-project.org/pub/plugins/"
name "-" version ".tar.bz2"))
(sha256
(base32
"12hsvm6rpinjkg06pa9hzndkdrbfw6wk6yk00cm8y1gbv8xiq3ak"))))
"073zpgvj4pldmzqq97l40wngvbqnvrkc8yw153mgny9kypwaazbr"))))
(build-system gnu-build-system)
;; TODO: Split libavcodec and speex if possible. It looks like they can not
;; be split, there are references to both in files.
@ -3001,7 +3001,7 @@ (define-public sbc
(define-public bluez
(package
(name "bluez")
(version "5.47")
(version "5.49")
(source (origin
(method url-fetch)
(uri (string-append
@ -3009,7 +3009,7 @@ (define-public bluez
version ".tar.xz"))
(sha256
(base32
"1j22hfjz0fp4pgclgz9mfcwjbr4wqgah3gd2qhfg4r6msmybyxfg"))))
"15ffsaz7l3fgdg03l7g1xx9jw7xgs6pc548zxqsxawsca5x1sc1k"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags

View file

@ -48,6 +48,8 @@ (define-public ninja
(lambda _
(substitute* "src/subprocess-posix.cc"
(("/bin/sh") (which "sh")))
(substitute* "src/subprocess_test.cc"
(("/bin/echo") (which "echo")))
#t))
(replace 'build
(lambda _

View file

@ -0,0 +1,120 @@
Move the declaration from gif_lib.h to gif_lib_private.h to solve
conflicts when some .c-file #includes both stdlib.h and gif_lib.h.
See also https://sourceforge.net/p/giflib/bugs/110/
diff -ur giflib-5.1.4.orig/lib/dgif_lib.c giflib-5.1.4/lib/dgif_lib.c
--- giflib-5.1.4.orig/lib/dgif_lib.c 2018-02-28 20:31:02.294682673 +0100
+++ giflib-5.1.4/lib/dgif_lib.c 2018-02-28 22:38:11.659126414 +0100
@@ -396,7 +396,7 @@
if (GifFile->SavedImages) {
SavedImage* new_saved_images =
- (SavedImage *)reallocarray(GifFile->SavedImages,
+ (SavedImage *)giflib_private_reallocarray(GifFile->SavedImages,
(GifFile->ImageCount + 1), sizeof(SavedImage));
if (new_saved_images == NULL) {
GifFile->Error = D_GIF_ERR_NOT_ENOUGH_MEM;
@@ -1108,7 +1108,7 @@
if (ImageSize > (SIZE_MAX / sizeof(GifPixelType))) {
return GIF_ERROR;
}
- sp->RasterBits = (unsigned char *)reallocarray(NULL, ImageSize,
+ sp->RasterBits = (unsigned char *)giflib_private_reallocarray(NULL, ImageSize,
sizeof(GifPixelType));
if (sp->RasterBits == NULL) {
diff -ur giflib-5.1.4.orig/lib/gifalloc.c giflib-5.1.4/lib/gifalloc.c
--- giflib-5.1.4.orig/lib/gifalloc.c 2018-02-28 20:31:02.294682673 +0100
+++ giflib-5.1.4/lib/gifalloc.c 2018-02-28 22:38:11.657126423 +0100
@@ -8,7 +8,7 @@
#include <stdio.h>
#include <string.h>
-#include "gif_lib.h"
+#include "gif_lib_private.h"
#define MAX(x, y) (((x) > (y)) ? (x) : (y))
@@ -188,7 +188,7 @@
/* perhaps we can shrink the map? */
if (RoundUpTo < ColorUnion->ColorCount) {
- GifColorType *new_map = (GifColorType *)reallocarray(Map,
+ GifColorType *new_map = (GifColorType *)giflib_private_reallocarray(Map,
RoundUpTo, sizeof(GifColorType));
if( new_map == NULL ) {
GifFreeMapObject(ColorUnion);
@@ -232,7 +232,7 @@
if (*ExtensionBlocks == NULL)
*ExtensionBlocks=(ExtensionBlock *)malloc(sizeof(ExtensionBlock));
else {
- ExtensionBlock* ep_new = (ExtensionBlock *)reallocarray
+ ExtensionBlock* ep_new = (ExtensionBlock *)giflib_private_reallocarray
(*ExtensionBlocks, (*ExtensionBlockCount + 1),
sizeof(ExtensionBlock));
if( ep_new == NULL )
@@ -325,7 +325,7 @@
if (GifFile->SavedImages == NULL)
GifFile->SavedImages = (SavedImage *)malloc(sizeof(SavedImage));
else
- GifFile->SavedImages = (SavedImage *)reallocarray(GifFile->SavedImages,
+ GifFile->SavedImages = (SavedImage *)giflib_private_reallocarray(GifFile->SavedImages,
(GifFile->ImageCount + 1), sizeof(SavedImage));
if (GifFile->SavedImages == NULL)
@@ -355,7 +355,7 @@
}
/* next, the raster */
- sp->RasterBits = (unsigned char *)reallocarray(NULL,
+ sp->RasterBits = (unsigned char *)giflib_private_reallocarray(NULL,
(CopyFrom->ImageDesc.Height *
CopyFrom->ImageDesc.Width),
sizeof(GifPixelType));
@@ -369,7 +369,7 @@
/* finally, the extension blocks */
if (sp->ExtensionBlocks != NULL) {
- sp->ExtensionBlocks = (ExtensionBlock *)reallocarray(NULL,
+ sp->ExtensionBlocks = (ExtensionBlock *)giflib_private_reallocarray(NULL,
CopyFrom->ExtensionBlockCount,
sizeof(ExtensionBlock));
if (sp->ExtensionBlocks == NULL) {
diff -ur giflib-5.1.4.orig/lib/gif_lib.h giflib-5.1.4/lib/gif_lib.h
--- giflib-5.1.4.orig/lib/gif_lib.h 2018-02-28 20:31:02.294682673 +0100
+++ giflib-5.1.4/lib/gif_lib.h 2018-02-28 20:31:43.135716712 +0100
@@ -244,9 +244,6 @@
GifPixelType ColorTransIn2[]);
extern int GifBitSize(int n);
-extern void *
-reallocarray(void *optr, size_t nmemb, size_t size);
-
/******************************************************************************
Support for the in-core structures allocation (slurp mode).
******************************************************************************/
diff -ur giflib-5.1.4.orig/lib/gif_lib_private.h giflib-5.1.4/lib/gif_lib_private.h
--- giflib-5.1.4.orig/lib/gif_lib_private.h 2018-02-28 20:31:02.294682673 +0100
+++ giflib-5.1.4/lib/gif_lib_private.h 2018-02-28 22:38:11.657126423 +0100
@@ -54,6 +54,9 @@
bool gif89;
} GifFilePrivateType;
+extern void *
+giflib_private_reallocarray(void *optr, size_t nmemb, size_t size);
+
#endif /* _GIF_LIB_PRIVATE_H */
/* end */
diff -ur giflib-5.1.4.orig/lib/openbsd-reallocarray.c giflib-5.1.4/lib/openbsd-reallocarray.c
--- giflib-5.1.4.orig/lib/openbsd-reallocarray.c 2018-02-28 20:31:02.295682659 +0100
+++ giflib-5.1.4/lib/openbsd-reallocarray.c 2018-02-28 22:38:11.656126428 +0100
@@ -27,7 +27,7 @@
#define MUL_NO_OVERFLOW ((size_t)1 << (sizeof(size_t) * 4))
void *
-reallocarray(void *optr, size_t nmemb, size_t size)
+giflib_private_reallocarray(void *optr, size_t nmemb, size_t size)
{
if ((nmemb >= MUL_NO_OVERFLOW || size >= MUL_NO_OVERFLOW) &&
nmemb > 0 && SIZE_MAX / nmemb < size) {

View file

@ -0,0 +1,17 @@
Fix compatibility with libical 3.0.
Patch copied from Arch Linux:
https://git.archlinux.org/svntogit/packages.git/tree/trunk/gnome-todo-3.26.2-libical-3.0.patch?h=packages/gnome-todo
diff -up gnome-todo-3.26.2/src/gtd-task.c.libical-3.0 gnome-todo-3.26.2/src/gtd-task.c
--- gnome-todo-3.26.2/src/gtd-task.c.libical-3.0 2017-11-08 14:53:53.484294926 +0100
+++ gnome-todo-3.26.2/src/gtd-task.c 2017-11-08 14:53:57.208294874 +0100
@@ -778,7 +778,7 @@ gtd_task_set_complete (GtdTask *task,
dt->minute = g_date_time_get_minute (now);
dt->second = g_date_time_get_seconds (now);
dt->is_date = 0;
- dt->is_utc = 1;
+ dt->zone = icaltimezone_get_utc_timezone ();
/* convert timezone
*

View file

@ -1,39 +0,0 @@
From 12d8b4e8f2f9c9a7707d1d3fccba382732212e3c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?G=C3=A1bor=20Boskovits?= <boskovits@gmail.com>
Date: Tue, 5 Dec 2017 20:06:36 +0100
Subject: [PATCH] Fix test failing on new GLib versions.
This test fails on newer GLib version, because GLib exports a new public marshaller.
The additional symbol making the test fail is:
g_cclosure_marshal_BOOLEAN__BOXED_BOXED
The fix makes the test ignore non-gtk related abi.
This ensures if future marshallers are added to glib those will not pose a problem.
The fix also ensures that the test still checks the gtk abi for identity, and
that the library provides a superset of the required abi.
Upstream reponse to this problem was:
GLib added a new marshaller in its public API
And the `abicheck.sh`in GTK+ 2.24 hasn't been updated because GTK+ 2.24 is in deep
maintenance mode and very few people test it against newer versions of GLib
---
gtk/abicheck.sh | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gtk/abicheck.sh b/gtk/abicheck.sh
index 0d033fb..53b7bfe 100755
--- a/gtk/abicheck.sh
+++ b/gtk/abicheck.sh
@@ -1,5 +1,5 @@
#! /bin/sh
cpp -DINCLUDE_VARIABLES -P -DG_OS_UNIX -DGTK_WINDOWING_X11 -DALL_FILES ${srcdir:-.}/gtk.symbols | sed -e '/^$/d' -e 's/ G_GNUC.*$//' -e 's/ PRIVATE//' | sort > expected-abi
-nm -D -g --defined-only .libs/libgtk-x11-2.0.so | cut -d ' ' -f 3 | egrep -v '^(__bss_start|_edata|_end)' | sort > actual-abi
+nm -D -g --defined-only .libs/libgtk-x11-2.0.so | cut -d ' ' -f 3 | egrep -v '^(__bss_start|_edata|_end)' | egrep '^gtk_' | sort > actual-abi
diff -u expected-abi actual-abi && rm -f expected-abi actual-abi
--
2.15.0

View file

@ -0,0 +1,174 @@
Fix floating point issues on 32-bit platforms:
https://gitlab.gnome.org/GNOME/json-glib/issues/27
This is an amalgamation of the following upstream commits:
https://gitlab.gnome.org/GNOME/json-glib/commit/70e2648e02232c1a439a7418388f18fee9afb3fe
https://gitlab.gnome.org/GNOME/json-glib/commit/675e27505776a1d77fa1ffd1974284890caec1f4
diff --git a/json-glib/tests/json-test-utils.h b/json-glib/tests/json-test-utils.h
new file mode 100644
index 0000000..83a02c6
--- /dev/null
+++ b/json-glib/tests/json-test-utils.h
@@ -0,0 +1,21 @@
+#include <string.h>
+#include <math.h>
+#include <float.h>
+#include <glib.h>
+#include <json-glib/json-glib.h>
+
+#define json_fuzzy_equals(n1,n2,epsilon) \
+ (((n1) > (n2) ? ((n1) - (n2)) : ((n2) - (n1))) < (epsilon))
+
+#define json_assert_fuzzy_equals(n1,n2,epsilon) \
+ G_STMT_START { \
+ double __n1 = (n1), __n2 = (n2), __epsilon = (epsilon); \
+ if (json_fuzzy_equals (__n1, __n2, __epsilon)) ; else { \
+ g_assertion_message_cmpnum (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, \
+ #n1 " == " #n2 " (+/- " #epsilon ")", \
+ __n1, "==", __n2, 'f'); \
+ } \
+ } G_STMT_END
+
+#define json_assert_almost_equals(n1,n2) \
+ json_assert_fuzzy_equals (n1, n2, DBL_EPSILON)
diff --git a/json-glib/tests/array.c b/json-glib/tests/array.c
index 98afeab..426cd72 100644
--- a/json-glib/tests/array.c
+++ b/json-glib/tests/array.c
@@ -1,9 +1,4 @@
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include <glib.h>
-#include <json-glib/json-glib.h>
+#include "json-test-utils.h"
static void
test_empty_array (void)
@@ -37,7 +32,7 @@ test_add_element (void)
json_array_add_double_element (array, 3.14);
g_assert_cmpint (json_array_get_length (array), ==, 3);
- g_assert_cmpfloat (json_array_get_double_element (array, 2), ==, 3.14);
+ json_assert_fuzzy_equals (json_array_get_double_element (array, 2), 3.14, 0.001);
json_array_add_boolean_element (array, TRUE);
g_assert_cmpint (json_array_get_length (array), ==, 4);
diff --git a/json-glib/tests/node.c b/json-glib/tests/node.c
index 23bda63..80beb78 100644
--- a/json-glib/tests/node.c
+++ b/json-glib/tests/node.c
@@ -1,6 +1,4 @@
-#include <glib.h>
-#include <json-glib/json-glib.h>
-#include <string.h>
+#include "json-test-utils.h"
static void
test_init_int (void)
@@ -19,7 +17,7 @@ test_init_double (void)
JsonNode *node = json_node_new (JSON_NODE_VALUE);
json_node_set_double (node, 3.14159);
- g_assert_cmpfloat (json_node_get_double (node), ==, 3.14159);
+ json_assert_fuzzy_equals (json_node_get_double (node), 3.14159, 0.00001);
json_node_free (node);
}
@@ -119,13 +117,13 @@ test_get_int (void)
json_node_set_int (node, 0);
g_assert_cmpint (json_node_get_int (node), ==, 0);
- g_assert_cmpfloat (json_node_get_double (node), ==, 0.0);
+ json_assert_almost_equals (json_node_get_double (node), 0.0);
g_assert (!json_node_get_boolean (node));
g_assert (!json_node_is_null (node));
json_node_set_int (node, 42);
g_assert_cmpint (json_node_get_int (node), ==, 42);
- g_assert_cmpfloat (json_node_get_double (node), ==, 42.0);
+ json_assert_almost_equals (json_node_get_double (node), 42.0);
g_assert (json_node_get_boolean (node));
g_assert (!json_node_is_null (node));
@@ -138,7 +136,7 @@ test_get_double (void)
JsonNode *node = json_node_new (JSON_NODE_VALUE);
json_node_set_double (node, 3.14);
- g_assert_cmpfloat (json_node_get_double (node), ==, 3.14);
+ json_assert_fuzzy_equals (json_node_get_double (node), 3.14, 0.001);
g_assert_cmpint (json_node_get_int (node), ==, 3);
g_assert (json_node_get_boolean (node));
@@ -232,9 +230,9 @@ test_gvalue_autopromotion (void)
g_print ("Expecting a gdouble, got a %s\n", g_type_name (G_VALUE_TYPE (&check)));
g_assert_cmpint (G_VALUE_TYPE (&check), ==, G_TYPE_DOUBLE);
- g_assert_cmpfloat ((float) g_value_get_double (&check), ==, 3.14159f);
+ json_assert_fuzzy_equals (g_value_get_double (&check), 3.14159, 0.00001);
g_assert_cmpint (G_VALUE_TYPE (&value), !=, G_VALUE_TYPE (&check));
- g_assert_cmpfloat ((gdouble) g_value_get_float (&value), ==, g_value_get_double (&check));
+ json_assert_almost_equals (g_value_get_float (&value), g_value_get_double (&check));
g_value_unset (&value);
g_value_unset (&check);
diff --git a/json-glib/tests/parser.c b/json-glib/tests/parser.c
index f71584a..8c52a1d 100644
--- a/json-glib/tests/parser.c
+++ b/json-glib/tests/parser.c
@@ -1,11 +1,5 @@
-#include "config.h"
-
+#include "json-test-utils.h"
#include <stdlib.h>
-#include <stdio.h>
-
-#include <glib.h>
-
-#include <json-glib/json-glib.h>
static const gchar *test_empty_string = "";
static const gchar *test_empty_array_string = "[ ]";
@@ -38,13 +32,13 @@ verify_string_value (JsonNode *node)
static void
verify_double_value (JsonNode *node)
{
- g_assert_cmpfloat (10.2e3, ==, json_node_get_double (node));
+ json_assert_fuzzy_equals (10.2e3, json_node_get_double (node), 0.1);
}
static void
verify_negative_double_value (JsonNode *node)
{
- g_assert_cmpfloat (-3.14, ==, json_node_get_double (node));
+ json_assert_fuzzy_equals (-3.14, json_node_get_double (node), 0.01);
}
static const struct {
diff --git a/json-glib/tests/reader.c b/json-glib/tests/reader.c
index 43a6aac..9bab312 100644
--- a/json-glib/tests/reader.c
+++ b/json-glib/tests/reader.c
@@ -1,9 +1,4 @@
-#include <stdlib.h>
-#include <stdio.h>
-
-#include <glib.h>
-
-#include <json-glib/json-glib.h>
+#include "json-test-utils.h"
static const gchar *test_base_array_data =
"[ 0, true, null, \"foo\", 3.14, [ false ], { \"bar\" : 42 } ]";
@@ -78,7 +73,7 @@ test_base_object (void)
g_assert (json_reader_get_error (reader) == NULL);
json_reader_read_member (reader, "double");
- g_assert_cmpfloat (json_reader_get_double_value (reader), ==, 42.47);
+ json_assert_fuzzy_equals (json_reader_get_double_value (reader), 42.47, 0.01);
json_reader_end_element (reader);
g_object_unref (reader);

View file

@ -1,6 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014, 2015, 2017 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
;;; This file is part of GNU Guix.
;;;
@ -30,7 +31,7 @@ (define-module (gnu packages pciutils)
(define-public pciutils
(package
(name "pciutils")
(version "3.5.5")
(version "3.5.6")
(source (origin
(method url-fetch)
(uri (string-append
@ -38,7 +39,7 @@ (define-public pciutils
version ".tar.xz"))
(sha256
(base32
"1x9rb5y82rzg8b67lh42yy9ag9xr7kzibz566lffd41g37xghqhx"))))
"08dvsk1b5m1r7qqzsm849h4glq67mngf8zw7bg0102ff1jwywipk"))))
(build-system gnu-build-system)
(arguments
'(#:phases

View file

@ -47,7 +47,6 @@ (define-module (gnu packages pulseaudio)
(define-public libsndfile
(package
(name "libsndfile")
(replacement libsndfile/fixed)
(version "1.0.28")
(source (origin
(method url-fetch)
@ -55,7 +54,8 @@ (define-public libsndfile
version ".tar.gz"))
(patches (search-patches "libsndfile-armhf-type-checks.patch"
"libsndfile-CVE-2017-8361-8363-8365.patch"
"libsndfile-CVE-2017-8362.patch"))
"libsndfile-CVE-2017-8362.patch"
"libsndfile-CVE-2017-12562.patch"))
(sha256
(base32
"1afzm7jx34jhqn32clc5xghyjglccam2728yxlx37yj2y0lkkwqz"))))
@ -81,15 +81,6 @@ (define-public libsndfile
for reading and writing new sound file formats.")
(license l:gpl2+)))
(define libsndfile/fixed
(package
(inherit libsndfile)
(source (origin
(inherit (package-source libsndfile))
(patches (append
(origin-patches (package-source libsndfile))
(search-patches "libsndfile-CVE-2017-12562.patch")))))))
(define-public libsamplerate
(package
(name "libsamplerate") ; aka. Secret Rabbit Code (SRC)

View file

@ -5488,7 +5488,7 @@ (define-public python2-flake8
(package (inherit base)
(propagated-inputs
`(("python2-configparser" ,python2-configparser)
("python2-enum" ,python2-enum)
("python2-enum34" ,python2-enum34)
,@(package-propagated-inputs base))))))
;; python-hacking requires flake8 <2.6.0.
@ -12101,18 +12101,10 @@ (define-public python-tqdm
"Make loops show a progress bar on the console by just wrapping any
iterable with @code{|tqdm(iterable)|}. Offers many options to define
design and layout.")
(license (list license:mpl2.0 license:expat))
(properties `((python2-variant . ,(delay python2-tqdm))))))
(license (list license:mpl2.0 license:expat))))
(define-public python2-tqdm
(let ((tqdm (package-with-python2
(strip-python2-variant python-tqdm))))
(package
(inherit tqdm)
(native-inputs
;; FIXME: This should be propagated from python2-flake8 instead.
`(("python2-enum34" ,python2-enum34)
,@(package-native-inputs tqdm))))))
(package-with-python2 python-tqdm))
(define-public python-pkginfo
(package

View file

@ -541,7 +541,7 @@ (define-public libmatroska
(define-public libva
(package
(name "libva")
(version "2.0.0")
(version "2.1.0")
(source
(origin
(method url-fetch)
@ -553,7 +553,7 @@ (define-public libva
(string-append "https://www.freedesktop.org/software/vaapi/releases/"
"libva/libva-" version "/libva-" version ".tar.bz2")))
(sha256
(base32 "0cz5i62jnibmnx0i80i9yipq39v16qr6fw461f6hvrh9lbwh21mv"))))
(base32 "03sb1b3fxw8myf9kz6rxw5f3v1p0vfmk34779qx0q8fk24x9bypk"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))

View file

@ -3508,15 +3508,18 @@ (define-public perl-test-www-mechanize-psgi
(define-public perl-uri
(package
(name "perl-uri")
(version "1.71")
(version "1.73")
(source (origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/E/ET/ETHER/"
"URI-" version ".tar.gz"))
(sha256
(base32
"05a1ck1bhvqkkk690xhsxf7276dnagk96qkh2jy4prrrgw6wm3lw"))))
"04z4xwiryrbxxi48bwbkgq9q9pwfgqry3wp0ramcrwv3dx5ap9yc"))))
(build-system perl-build-system)
(native-inputs
;; For tests.
`(("perl-test-needs" ,perl-test-needs)))
(license l:perl-license)
(synopsis "Perl Uniform Resource Identifiers (absolute and relative)")
(description

View file

@ -319,7 +319,7 @@ (define-public pixman
(define-public libdrm
(package
(name "libdrm")
(version "2.4.89")
(version "2.4.91")
(source
(origin
(method url-fetch)
@ -329,7 +329,7 @@ (define-public libdrm
".tar.bz2"))
(sha256
(base32
"0bm06vqqjbb06mlz2f2h4man0xp0dz928pyycs8q1d5vma19g7v2"))
"0068dn47c478vm1lyyhy02gilrpsma0xmcblhvs0dzqyrk80wjk3"))
(patches (search-patches "libdrm-symbol-check.patch"))))
(build-system gnu-build-system)
(arguments
@ -885,14 +885,14 @@ (define-public xcape
(define-public libwacom
(package
(name "libwacom")
(version "0.26")
(version "0.29")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/linuxwacom/libwacom/"
name "-" version ".tar.bz2"))
(sha256
(base32
"0xpvkjvzaj9blcmw8ha46616bzfivj99kwzvr91clxd6iaf11r63"))))
"1diklgcjhmvcxi9p1ifp6wcnyr6k7z9jhrlzfhzjqd6zipk01slw"))))
(build-system glib-or-gtk-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
@ -917,7 +917,7 @@ (define-public libwacom
(define-public xf86-input-wacom
(package
(name "xf86-input-wacom")
(version "0.35.0")
(version "0.36.0")
(source (origin
(method url-fetch)
(uri (string-append
@ -925,7 +925,7 @@ (define-public xf86-input-wacom
name "-" version ".tar.bz2"))
(sha256
(base32
"0za44snc0zirq65a4lxsmg7blp1bynj6j835hm459x8yx1qhmxjm"))))
"1xi39hl8ddgj9m7m2k2ll2r3wh0k0aq45fvrsv43651bhz9cbrza"))))
(arguments
`(#:configure-flags
(list (string-append "--with-sdkdir="

View file

@ -57,14 +57,14 @@ (define-module (gnu packages xiph)
(define libogg
(package
(name "libogg")
(version "1.3.2")
(version "1.3.3")
(source (origin
(method url-fetch)
(uri (string-append "http://downloads.xiph.org/releases/ogg/libogg-"
version ".tar.xz"))
(sha256
(base32
"16z74q422jmprhyvy7c9x909li8cqzmvzyr8cgbm52xcsp6pqs1z"))))
"022wjlzn8fx7mfby4pcgyjwx8zir7jr7cizichh3jgaki8bwcgsg"))))
(build-system gnu-build-system)
(synopsis "Library for manipulating the ogg multimedia format")
(description

View file

@ -1028,7 +1028,7 @@ (define-public libdmx
(define-public libxshmfence
(package
(name "libxshmfence")
(version "1.2")
(version "1.3")
(source (origin
(method url-fetch)
(uri (string-append
@ -1036,7 +1036,7 @@ (define-public libxshmfence
name "-" version ".tar.bz2"))
(sha256
(base32
"032b0nlkdrpbimdld4gqvhqx53rzn8fawvf1ybhzn7lcswgjs6yj"))))
"1ir0j92mnd1nk37mrv9bz5swnccqldicgszvfsh62jd14q6k115q"))))
(build-system gnu-build-system)
(native-inputs `(("pkg-config" ,pkg-config)))
(inputs `(("xproto" ,xproto)))
@ -3707,7 +3707,7 @@ (define-public xinput
(define xkbcomp-intermediate ; used as input for xkeyboard-config
(package
(name "xkbcomp-intermediate")
(version "1.4.0")
(version "1.4.1")
(source
(origin
(method url-fetch)
@ -3717,7 +3717,7 @@ (define xkbcomp-intermediate ; used as input for xkeyboard-config
".tar.bz2"))
(sha256
(base32
"0syfc6zscvai824mzihlnrqxhkcr27dzkpy8zndavi83iischsdw"))))
"0djp7bb0ch2ddwmc1bkg4fddxdvamiiz375x0r0ni5dcb37w93bl"))))
(build-system gnu-build-system)
(inputs
`(("xproto" ,xproto)
@ -3821,7 +3821,7 @@ (define-public xkbutils
(define-public xkeyboard-config
(package
(name "xkeyboard-config")
(version "2.22")
(version "2.23.1")
(source
(origin
(method url-fetch)
@ -3831,7 +3831,7 @@ (define-public xkeyboard-config
".tar.bz2"))
(sha256
(base32
"1garmbyfjp0han04l2l90zzwlfbdgdxl6r1qnic36i5wkycckbny"))))
"1wq27cs1c9y7d1d7zp5yhq29paj9smajdb68lyvm28d2zq2vqjra"))))
(build-system gnu-build-system)
(inputs
`(("gettext" ,gettext-minimal)

View file

@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2017 Peter Mikkelsen <petermikkelsen10@gmail.com>
;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -80,8 +81,15 @@ (define private-keywords
(system system)
(build-inputs `(("meson" ,meson)
("ninja" ,ninja)
;; Add patchelf for (guix build rpath) to work.
("patchelf" ,(default-patchelf))
;; XXX PatchELF fails to build on armhf, so we skip
;; the 'fix-runpath' phase there for now. It is used
;; to avoid superfluous entries in RUNPATH as described
;; in <https://bugs.gnu.org/28444#46>, so armhf may now
;; have different runtime dependencies from other arches.
,@(if (not (string-prefix? "arm" (or (%current-target-system)
(%current-system))))
`(("patchelf" ,(default-patchelf)))
'())
,@native-inputs))
(host-inputs `(,@(if source
`(("source" ,source))
@ -139,7 +147,11 @@ (define builder
#:inputs %build-inputs
#:search-paths ',(map search-path-specification->sexp
search-paths)
#:phases build-phases
#:phases
(if (string-prefix? "arm" ,(or (%current-target-system)
(%current-system)))
(modify-phases build-phases (delete 'fix-runpath))
build-phases)
#:configure-flags ,configure-flags
#:build-type ,build-type
#:tests? ,tests?

View file

@ -46,6 +46,15 @@ (define* (configure #:key outputs configure-flags build-type
,(string-append "--buildtype=" build-type)
,@configure-flags
,source-dir)))
;; Meson lacks good facilities for dealing with RUNPATH, so we
;; add the output "lib" directory here to avoid doing that in
;; many users. Related issues:
;; * <https://github.com/mesonbuild/meson/issues/314>
;; * <https://github.com/mesonbuild/meson/issues/3038>
;; * <https://github.com/NixOS/nixpkgs/issues/31222>
(setenv "LDFLAGS" (string-append "-Wl,-rpath=" out "/lib"))
(mkdir build-dir)
(chdir build-dir)
(zero? (apply system* "meson" args))))