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 @@ command.")
(define-public tzdata
(package
(name "tzdata")
(version "2017c")
(version "2018c")
(source (origin
(method url-fetch)
(uri (string-append
@ -1099,8 +1099,81 @@ command.")
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 @@ command.")
(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 @@ and daylight-saving rules.")
(base32
"1dvrq0b2hz7cjqdyd7x21wpy4qcng3rvysr61ij0c2g64fyb9s41")))))))))
(define-public libiconv
(package
(name "libiconv")

View File

@ -71,7 +71,7 @@ makes a few sacrifices to acquire fast full and incremental build times.")
(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 @@ makes a few sacrifices to acquire fast full and incremental build times.")
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 @@ resembles Python.")
(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 @@
#: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 @@
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 @@
(("\\\"/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-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 @@
"nss-" version ".tar.gz")))
(sha256
(base32
"1ypn68z9ncbbshi3184ywrhx5i846lyd72gps1grzqzdkgh7s4pl"))))
"1580qc0a4s8v3k3vg7zz4xly4alkjrw7qq9zy2nf6p4v56wcfg53"))))
(build-system gnu-build-system)
(outputs '("out"))
(native-inputs
@ -102,8 +102,10 @@
(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 @@
;; "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 @@ Executable and Linkable Format (@dfn{ELF}). This includes @command{ld},
;; 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 @@
#: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 @@ freedesktop.org project.")
(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 @@ other applications that need to directly deal with input devices.")
(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 @@ also known as DXTn or DXTC) for Mesa.")
(define-public mesa
(package
(name "mesa")
(version "17.3.1")
(version "17.3.6")
(source
(origin
(method url-fetch)
@ -234,7 +234,7 @@ also known as DXTn or DXTC) for 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 @@ OpenGL graphics API.")
(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 @@ OpenGL graphics API.")
version "/libepoxy-" version ".tar.xz"))
(sha256
(base32
"19hsyap2p0sflj75ycf4af9bsp453bamymbcgnmrphigabsspil8"))))
"1md58amxyp34yjnw4xa185hw5jm0hnb2xnhdc28zdsx6k19rk52c"))))
(arguments
`(#:phases
(modify-phases %standard-phases
@ -575,10 +575,6 @@ OpenGL graphics API.")
(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 @@ XML/CSS rendering engine.")
(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 @@ XML/CSS rendering engine.")
name "-" version ".tar.xz"))
(sha256
(base32
"1lq87wnrsjbjafpk3c8xwd56gqx319fhck9xkg2da88hd9c9h2qm"))))
"1hhdz0ymda26q6bl5ygickkgrh998lxqq4z9i8dzpcvqna3zpzr9"))))
(build-system gnu-build-system)
(native-inputs
`(("intltool" ,intltool)
@ -2265,18 +2265,20 @@ configuration storage systems.")
(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 @@ Exchange, Last.fm, IMAP/SMTP, Jabber, SIP and Kerberos.")
(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 @@ Exchange, Last.fm, IMAP/SMTP, Jabber, SIP and Kerberos.")
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 @@ desktop. It supports world clock, stop watch, alarms, and count down timer.")
(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 @@ desktop. It supports world clock, stop watch, alarms, and count down timer.")
name "-" version ".tar.xz"))
(sha256
(base32
"03n51mvlc0vabr1rx9577z927icl3mrxrrv8zckfjav6p4vwg8hr"))))
"1clnfvvsaqw9vpxrs6qrxzmgpaw9x2nkjik2x2vwvm07pdvhddxn"))))
(build-system meson-build-system)
(arguments
'(#:glib-or-gtk? #t
@ -6189,6 +6208,7 @@ desktop. It supports multiple calendars, month, week and year view.")
(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 @@ in C/C++.")
(define-public nspr
(package
(name "nspr")
(version "4.17")
(version "4.19")
(source (origin
(method url-fetch)
(uri (string-append
@ -258,7 +258,7 @@ in C/C++.")
version "/src/nspr-" version ".tar.gz"))
(sha256
(base32
"158hdn285dsb5rys8wl1wi32dd1axwhqq0r8fwny4aj157m0l2jr"))))
"0agpv3f17h8kmzi0ifibaaxc1k3xc0q61wqw3l6r2xr2z8bmkn9f"))))
(build-system gnu-build-system)
(native-inputs
`(("perl" ,perl)))
@ -268,6 +268,10 @@ in C/C++.")
(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 @@ in the Mozilla clients.")
(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 @@ in the Mozilla clients.")
"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 @@ is part of the GNOME accessibility project.")
(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 @@ is part of the GNOME accessibility project.")
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 @@ application suites.")
(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 @@ application suites.")
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 @@ error-resilience, a Java-viewer for j2k-images, ...")
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 @@ intercept and print the system calls executed by the program.")
(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 @@ intercept and print the system calls executed by the program.")
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 @@ MIDI functionality to the Linux-based operating system.")
(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 @@ MIDI functionality to the Linux-based operating system.")
(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 @@ Bluetooth audio output devices like headphones or loudspeakers.")
(define-public bluez
(package
(name "bluez")
(version "5.47")
(version "5.49")
(source (origin
(method url-fetch)
(uri (string-append
@ -3009,7 +3009,7 @@ Bluetooth audio output devices like headphones or loudspeakers.")
version ".tar.xz"))
(sha256
(base32
"1j22hfjz0fp4pgclgz9mfcwjbr4wqgah3gd2qhfg4r6msmybyxfg"))))
"15ffsaz7l3fgdg03l7g1xx9jw7xgs6pc548zxqsxawsca5x1sc1k"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags

View File

@ -48,6 +48,8 @@
(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-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 @@
version ".tar.xz"))
(sha256
(base32
"1x9rb5y82rzg8b67lh42yy9ag9xr7kzibz566lffd41g37xghqhx"))))
"08dvsk1b5m1r7qqzsm849h4glq67mngf8zw7bg0102ff1jwywipk"))))
(build-system gnu-build-system)
(arguments
'(#:phases

View File

@ -47,7 +47,6 @@
(define-public libsndfile
(package
(name "libsndfile")
(replacement libsndfile/fixed)
(version "1.0.28")
(source (origin
(method url-fetch)
@ -55,7 +54,8 @@
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 @@ SPARC. Hopefully the design of the library will also make it easy to extend
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 @@ complexity of Python source code.")
(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 @@ ignoring formatting changes.")
"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 @@ libebml is a C++ library to read and write EBML files.")
(define-public libva
(package
(name "libva")
(version "2.0.0")
(version "2.1.0")
(source
(origin
(method url-fetch)
@ -553,7 +553,7 @@ libebml is a C++ library to read and write EBML files.")
(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 @@ applications.")
(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 @@ rasterisation.")
(define-public libdrm
(package
(name "libdrm")
(version "2.4.89")
(version "2.4.91")
(source
(origin
(method url-fetch)
@ -329,7 +329,7 @@ rasterisation.")
".tar.bz2"))
(sha256
(base32
"0bm06vqqjbb06mlz2f2h4man0xp0dz928pyycs8q1d5vma19g7v2"))
"0068dn47c478vm1lyyhy02gilrpsma0xmcblhvs0dzqyrk80wjk3"))
(patches (search-patches "libdrm-symbol-check.patch"))))
(build-system gnu-build-system)
(arguments
@ -885,14 +885,14 @@ Escape key when Left Control is pressed and released on its own.")
(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 @@ Wacom tablet applet.")
(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 @@ Wacom tablet applet.")
name "-" version ".tar.bz2"))
(sha256
(base32
"0za44snc0zirq65a4lxsmg7blp1bynj6j835hm459x8yx1qhmxjm"))))
"1xi39hl8ddgj9m7m2k2ll2r3wh0k0aq45fvrsv43651bhz9cbrza"))))
(arguments
`(#:configure-flags
(list (string-append "--with-sdkdir="

View File

@ -57,14 +57,14 @@
(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 @@ of new capabilities and controls for text keyboards.")
(define-public libxshmfence
(package
(name "libxshmfence")
(version "1.2")
(version "1.3")
(source (origin
(method url-fetch)
(uri (string-append
@ -1036,7 +1036,7 @@ of new capabilities and controls for text keyboards.")
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 @@ alternative implementations like XRandR or TwinView.")
(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 @@ alternative implementations like XRandR or TwinView.")
".tar.bz2"))
(sha256
(base32
"0syfc6zscvai824mzihlnrqxhkcr27dzkpy8zndavi83iischsdw"))))
"0djp7bb0ch2ddwmc1bkg4fddxdvamiiz375x0r0ni5dcb37w93bl"))))
(build-system gnu-build-system)
(inputs
`(("xproto" ,xproto)
@ -3821,7 +3821,7 @@ extension to the X11 protocol. It includes:
(define-public xkeyboard-config
(package
(name "xkeyboard-config")
(version "2.22")
(version "2.23.1")
(source
(origin
(method url-fetch)
@ -3831,7 +3831,7 @@ extension to the X11 protocol. It includes:
".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 @@
(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 @@ has a 'meson.build' file."
#: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 @@
,(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))))