Browse Source

Merge branch 'staging'

wip-ipfs
Marius Bakke 4 years ago
parent
commit
a7bc1588e6
No known key found for this signature in database GPG Key ID: A2A06DF2A33A54FA
  1. 3
      gnu/local.mk
  2. 8
      gnu/packages/audio.scm
  3. 15
      gnu/packages/backup.scm
  4. 4
      gnu/packages/build-tools.scm
  5. 149
      gnu/packages/databases.scm
  6. 8
      gnu/packages/freedesktop.scm
  7. 4
      gnu/packages/gl.scm
  8. 12
      gnu/packages/gnome.scm
  9. 44
      gnu/packages/gstreamer.scm
  10. 5
      gnu/packages/java.scm
  11. 9
      gnu/packages/llvm.scm
  12. 29
      gnu/packages/maths.scm
  13. 37
      gnu/packages/patches/mariadb-client-test-32bit.patch
  14. 33
      gnu/packages/patches/meson-for-build-rpath.patch
  15. 35
      gnu/packages/patches/openblas-fix-tests-i686.patch
  16. 67
      gnu/packages/patches/pulseaudio-glibc-2.27.patch
  17. 4
      gnu/packages/pciutils.scm
  18. 14
      gnu/packages/pdf.scm
  19. 34
      gnu/packages/pulseaudio.scm
  20. 24
      gnu/packages/python.scm
  21. 4
      gnu/packages/video.scm
  22. 4
      gnu/packages/web.scm
  23. 8
      gnu/packages/xorg.scm
  24. 20
      guix/build-system/meson.scm
  25. 6
      guix/build/ant-build-system.scm
  26. 23
      guix/build/meson-build-system.scm

3
gnu/local.mk

@ -934,6 +934,7 @@ dist_patch_DATA = \
%D%/packages/patches/make-glibc-compat.patch \
%D%/packages/patches/make-impure-dirs.patch \
%D%/packages/patches/mariadb-gcc-ice.patch \
%D%/packages/patches/mariadb-client-test-32bit.patch \
%D%/packages/patches/mars-install.patch \
%D%/packages/patches/mars-sfml-2.3.patch \
%D%/packages/patches/maxima-defsystem-mkdir.patch \
@ -990,7 +991,6 @@ dist_patch_DATA = \
%D%/packages/patches/ola-readdir-r.patch \
%D%/packages/patches/openbabel-fix-crash-on-nwchem-output.patch \
%D%/packages/patches/opencascade-oce-glibc-2.26.patch \
%D%/packages/patches/openblas-fix-tests-i686.patch \
%D%/packages/patches/openexr-missing-samples.patch \
%D%/packages/patches/openfoam-4.1-cleanup.patch \
%D%/packages/patches/openldap-CVE-2017-9287.patch \
@ -1051,7 +1051,6 @@ dist_patch_DATA = \
%D%/packages/patches/psm-ldflags.patch \
%D%/packages/patches/psm-repro.patch \
%D%/packages/patches/pulseaudio-fix-mult-test.patch \
%D%/packages/patches/pulseaudio-glibc-2.27.patch \
%D%/packages/patches/pulseaudio-longer-test-timeout.patch \
%D%/packages/patches/pybugz-encode-error.patch \
%D%/packages/patches/pybugz-stty.patch \

8
gnu/packages/audio.scm

@ -1395,6 +1395,14 @@ especially for creating reverb effects. It supports impulse responses with 1,
(base32
"0i6l25dmfk2ji2lrakqq9icnwjxklgcjzzk65dmsff91z2zva5rm"))))
(build-system gnu-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
(add-after 'unpack 'patch-configure
(lambda _
(substitute* "configure"
;; Install to <out/lib> regardless of platform.
(("libnn=lib64") "libnn=lib"))
#t)))))
(inputs
`(("alsa-lib" ,alsa-lib)
("readline" ,readline)))

15
gnu/packages/backup.scm

@ -495,8 +495,21 @@ detection, and lossless compression.")
(modules '((guix build utils)))
(snippet
'(begin
;; Delete files generated by Cython. We used to have a regex
;; that created the list of generated files but Borg has
;; added new non-generated C files that cause the regex to
;; generate the wrong list.
(for-each delete-file
(find-files "borg" "^(c|h|p).*\\.c$"))
'("src/borg/algorithms/checksums.c"
"src/borg/chunker.c"
"src/borg/compress.c"
"src/borg/crypto/low_level.c"
"src/borg/hashindex.c"
"src/borg/item.c"
"src/borg/platform/darwin.c"
"src/borg/platform/freebsd.c"
"src/borg/platform/linux.c"
"src/borg/platform/posix.c"))
;; Remove bundled shared libraries.
(with-directory-excursion "src/borg/algorithms"
(for-each delete-file-recursively

4
gnu/packages/build-tools.scm

@ -101,7 +101,7 @@ generate such a compilation database.")
(define-public meson
(package
(name "meson")
(version "0.46.1")
(version "0.47.1")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/mesonbuild/meson/"
@ -109,7 +109,7 @@ generate such a compilation database.")
version ".tar.gz"))
(sha256
(base32
"0y7f5hhy16q99l7x06x8sid9p9dbg6d7i60zs7c07cz5ww1plj8r"))))
"19mdap2ncvczajx220bd73xmwhd8x906382y18cn9c5syxwxwwyn"))))
(build-system python-build-system)
(arguments
`(;; FIXME: Tests require many additional inputs, a fix for the RUNPATH

149
gnu/packages/databases.scm

@ -627,7 +627,7 @@ Language.")
(define-public mariadb
(package
(name "mariadb")
(version "10.1.33")
(version "10.1.35")
(source (origin
(method url-fetch)
(uri (string-append "https://downloads.mariadb.org/f/"
@ -635,7 +635,22 @@ Language.")
name "-" version ".tar.gz"))
(sha256
(base32
"0bax748j4srsyhw5cs5jvwigndh0zwmf4r2cjvhja31ckx8jqccl"))))
"0k9walaglwmwdwmkq48ir17g98n83vliyyg5wck22rjgxn2xk4cy"))
(patches (search-patches "mariadb-gcc-ice.patch"
"mariadb-client-test-32bit.patch"))
(modules '((guix build utils)))
(snippet
'(begin
;; Delete bundled snappy and xz.
(delete-file-recursively "storage/tokudb/PerconaFT/third_party")
;; Preserve CMakeLists.txt for these.
(for-each (lambda (file)
(unless (string-suffix? "CMakeLists.txt" file)
(delete-file file)))
(append (find-files "extra/yassl")
(find-files "pcre") (find-files "zlib")))
#t))))
(build-system cmake-build-system)
(arguments
`(#:configure-flags
@ -649,6 +664,12 @@ Language.")
;; For now, disable the features that that use libarchive (xtrabackup).
"-DWITH_LIBARCHIVE=OFF"
;; Ensure the system libraries are used.
"-DWITH_JEMALLOC=yes"
"-DWITH_PCRE=system"
"-DWITH_SSL=system"
"-DWITH_ZLIB=system"
"-DDEFAULT_CHARSET=utf8"
"-DDEFAULT_COLLATION=utf8_general_ci"
"-DMYSQL_DATADIR=/var/lib/mysql"
@ -662,26 +683,89 @@ Language.")
"-DINSTALL_SUPPORTFILESDIR=share/mysql/support-files"
"-DINSTALL_MYSQLSHAREDIR=share/mysql"
"-DINSTALL_DOCDIR=share/mysql/docs"
"-DINSTALL_SHAREDIR=share/mysql")
"-DINSTALL_SHAREDIR=share")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'unbundle
(lambda _
;; The bundled PCRE in MariaDB has a patch that was upstreamed
;; in version 8.34. Unfortunately the upstream patch behaves
;; slightly differently and the build system fails to detect it.
;; See <https://bugs.exim.org/show_bug.cgi?id=2173>.
;; XXX: Consider patching PCRE instead.
(substitute* "cmake/pcre.cmake"
((" OR NOT PCRE_STACK_SIZE_OK") ""))
(substitute* "storage/tokudb/PerconaFT/ft/CMakeLists.txt"
;; Remove dependency on these CMake targets.
((" build_lzma build_snappy") ""))
(substitute* "storage/tokudb/PerconaFT/CMakeLists.txt"
;; This file checks that the bundled sources are present and
;; declares build procedures for them. We don't need that.
(("^include\\(TokuThirdParty\\)") ""))
;; Apply this patch that's only needed on ARM.
,@(if (and (not (%current-target-system))
(string=? "armhf-linux" (%current-system)))
`((add-after 'unpack 'apply-patch
(lambda* (#:key inputs #:allow-other-keys)
(let ((patch (assoc-ref inputs "gcc-ice-patch")))
(invoke "patch" "-p1" "--force"
"--input" patch)
#t))))
'())
(add-before
'configure 'pre-configure
(lambda _
(setenv "CONFIG_SHELL" (which "sh"))
#t))
#t))
(add-after 'unpack 'adjust-tests
(lambda _
(let ((disabled-tests
'(;; These fail because root@hostname == root@localhost in
;; the build environment, causing a user count mismatch.
;; See <https://jira.mariadb.org/browse/MDEV-7761>.
"main.join_cache"
"main.explain_non_select"
"roles.acl_statistics"
;; FIXME: This test fails on i686:
;; -myisampack: Can't create/write to file (Errcode: 17 "File exists")
;; +myisampack: Can't create/write to file (Errcode: 17 "File exists)
;; When running "myisampack --join=foo/t3 foo/t1 foo/t2"
;; (all three tables must exist and be identical)
;; in a loop it produces the same error around 1/240 times.
;; montywi on #maria suggested removing the real_end check in
;; "strings/my_vsnprintf.c" on line 503, yet it still does not
;; reach the ending quote occasionally. Disable it for now.
"main.myisampack"
;; FIXME: This test fails on armhf-linux:
"mroonga/storage.index_read_multiple_double"))
;; This file contains a list of known-flaky tests for this
;; release. Append our own items.
(unstable-tests (open-file "mysql-test/unstable-tests" "a")))
(for-each (lambda (test)
(format unstable-tests "~a : ~a\n"
test "Disabled in Guix"))
disabled-tests)
(close-port unstable-tests)
(substitute* "mysql-test/mysql-test-run.pl"
(("/bin/ls") (which "ls"))
(("/bin/sh") (which "sh")))
#t)))
(add-before 'configure 'disable-plugins
(lambda _
(let ((disable-plugin (lambda (name)
(call-with-output-file
(string-append "plugin/" name
"/CMakeLists.txt")
(lambda (port)
(format port "\n")))))
(disabled-plugins '(;; XXX: Causes a test failure.
"disks")))
(for-each disable-plugin disabled-plugins)
#t)))
(replace 'check
(lambda* (#:key (tests? #t) #:allow-other-keys)
(if tests?
(with-directory-excursion "mysql-test"
(invoke "./mtr" "--verbose"
"--retry=3"
"--testcase-timeout=40"
"--suite-timeout=600"
"--parallel" (number->string (parallel-job-count))
"--skip-test-list=unstable-tests"))
(format #t "test suite not run~%"))
#t))
(add-after
'install 'post-install
(lambda* (#:key outputs #:allow-other-keys)
@ -694,14 +778,15 @@ Language.")
(with-directory-excursion out
(for-each delete-file-recursively
'("data" "mysql-test" "sql-bench"
"share/man/man1/mysql-test-run.pl.1")))
"share/man/man1/mysql-test-run.pl.1"))
;; Delete huge mysqltest executables.
(for-each delete-file (find-files "bin" "test"))
;; And static libraries.
(for-each delete-file (find-files "lib" "\\.a$")))
#t))))))
(native-inputs
`(("bison" ,bison)
("perl" ,perl)
,@(if (string=? "armhf-linux" (%current-system))
`(("gcc-ice-patch" ,(search-patch "mariadb-gcc-ice.patch")))
'())))
("perl" ,perl)))
(inputs
`(("jemalloc" ,jemalloc)
("libaio" ,libaio)
@ -709,7 +794,12 @@ Language.")
("ncurses" ,ncurses)
("openssl" ,openssl)
("pcre" ,pcre)
("snappy" ,snappy)
("xz" ,xz)
("zlib" ,zlib)))
;; The test suite is very resource intensive and can take more than three
;; hours on a x86_64 system. Give slow and busy machines some leeway.
(properties '((timeout . 64800))) ;18 hours
(home-page "https://mariadb.org/")
(synopsis "SQL database server")
(description
@ -721,14 +811,14 @@ as a drop-in replacement of MySQL.")
(define-public postgresql
(package
(name "postgresql")
(version "10.4")
(version "10.5")
(source (origin
(method url-fetch)
(uri (string-append "https://ftp.postgresql.org/pub/source/v"
version "/postgresql-" version ".tar.bz2"))
(sha256
(base32
"0j000bcs9w8wrllg8m7j1lxsd3n2x0yzkack5p35cmxx20iq2q0v"))))
"04a07jkvc5s6zgh6jr78149kcjmsxclizsqabjw44ld4j5n633kc"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags '("--with-uuid=e2fs")
@ -1442,7 +1532,7 @@ valid SQL query.")
(define-public unixodbc
(package
(name "unixodbc")
(version "2.3.4")
(version "2.3.6")
(source (origin
(method url-fetch)
(uri
@ -1450,7 +1540,7 @@ valid SQL query.")
"ftp://ftp.unixodbc.org/pub/unixODBC/unixODBC-"
version ".tar.gz"))
(sha256
(base32 "0f8y88rcc2akjvjv5y66yx7k0ms9h1s0vbcfy25j93didflhj59f"))))
(base32 "0sads5b8cmmj526gyjba7ccknl1vbhkslfqshv1yqln08zv3gdl8"))))
(build-system gnu-build-system)
(synopsis "Data source abstraction library")
(description "Unixodbc is a library providing an API with which to access
@ -2077,6 +2167,9 @@ and web services platform functionality.")
`(("pkg-config" ,pkg-config)))
(inputs
`(("mariadb" ,mariadb)
;; FIXME: This should be propagated from MariaDB, but add it here
;; for now to prevent a large rebuild.
("openssl" ,openssl)
("zlib" ,zlib)))
(propagated-inputs
`(("r-dbi" ,r-dbi)))

8
gnu/packages/freedesktop.scm

@ -148,14 +148,14 @@ freedesktop.org project.")
(define-public libinput
(package
(name "libinput")
(version "1.11.1")
(version "1.11.3")
(source (origin
(method url-fetch)
(uri (string-append "https://freedesktop.org/software/libinput/"
name "-" version ".tar.xz"))
(sha256
(base32
"1z7i8vk0i61npkdqwsk85wp9v4yjlvylqnyydikjqnbsrjp9abk4"))))
"01nb1shnl871d939wgfd7nc9svclcnfjfhlq64b4yns2dvcr24gk"))))
(build-system meson-build-system)
(arguments
`(#:configure-flags '("-Ddocumentation=false")))
@ -473,7 +473,7 @@ applications, X servers (rootless or fullscreen) or other display servers.")
(define-public wayland-protocols
(package
(name "wayland-protocols")
(version "1.14")
(version "1.15")
(source (origin
(method url-fetch)
(uri (string-append
@ -481,7 +481,7 @@ applications, X servers (rootless or fullscreen) or other display servers.")
"wayland-protocols-" version ".tar.xz"))
(sha256
(base32
"1xknjcfhqvdi1s4iq4kk1q61fg2rar3g8q4vlqarpd324imqjj4n"))))
"1qlyf9cllr2p339xxplznh023qcwj5iisp02ikx7ps349dx75fys"))))
(build-system gnu-build-system)
(inputs
`(("wayland" ,wayland)))

4
gnu/packages/gl.scm

@ -224,7 +224,7 @@ also known as DXTn or DXTC) for Mesa.")
(define-public mesa
(package
(name "mesa")
(version "18.1.2")
(version "18.1.5")
(source
(origin
(method url-fetch)
@ -236,7 +236,7 @@ also known as DXTn or DXTC) for Mesa.")
version "/mesa-" version ".tar.xz")))
(sha256
(base32
"1ydivzm4c2k53b65lvm11d62z140xlmd7viw63bl5cm5idjg02q7"))
"1sldv7l3g6jfx0yn16kvxlik1qiy037lypdqpvsqc0v6lvqydnv9"))
(patches
(search-patches "mesa-skip-disk-cache-test.patch"))))
(build-system gnu-build-system)

12
gnu/packages/gnome.scm

@ -17,7 +17,7 @@
;;; Copyright © 2016, 2017 Kei Kebreau <kkebreau@posteo.net>
;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2016 Roel Janssen <roel@gnu.org>
;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016, 2018 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
;;; Copyright © 2016 David Craven <david@craven.ch>
@ -1176,7 +1176,7 @@ XML/CSS rendering engine.")
(define-public libgsf
(package
(name "libgsf")
(version "1.14.42")
(version "1.14.43")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
@ -1184,7 +1184,7 @@ XML/CSS rendering engine.")
name "-" version ".tar.xz"))
(sha256
(base32
"1hhdz0ymda26q6bl5ygickkgrh998lxqq4z9i8dzpcvqna3zpzr9"))))
"05pf3h0dha3s20ddsrljbx7m94qyiqs5igwxx1ql0vlsdlylx50j"))))
(build-system gnu-build-system)
(native-inputs
`(("intltool" ,intltool)
@ -4177,7 +4177,11 @@ a secret password store, an adblocker, and a modern UI.")
;; subsystem
;; FAIL
'(#:tests? #f
#:glib-or-gtk? #t))
#:glib-or-gtk? #t
#:configure-flags
;; Otherwise, the RUNPATH will lack the final 'epiphany' path component.
(list (string-append "-Dc_link_args=-Wl,-rpath="
(assoc-ref %outputs "out") "/lib/epiphany"))))
(propagated-inputs
`(("dconf" ,dconf)))
(native-inputs

44
gnu/packages/gstreamer.scm

@ -102,7 +102,7 @@ arrays of data.")
(define-public gstreamer
(package
(name "gstreamer")
(version "1.14.1")
(version "1.14.2")
(source
(origin
(method url-fetch)
@ -111,7 +111,7 @@ arrays of data.")
version ".tar.xz"))
(sha256
(base32
"0v0qqfj6klkirhbcxwgw1sq6x67456ckjadlhnzsji0m4q6jpn18"))))
"029fi3v0vrravysgfwhfkrb3ndg64sjmigbb0iwr7wpkk5r15mjb"))))
(build-system gnu-build-system)
(outputs '("out" "doc"))
(arguments
@ -150,7 +150,7 @@ This package provides the core library and elements.")
(define-public gst-plugins-base
(package
(name "gst-plugins-base")
(version "1.14.1")
(version "1.14.2")
(source
(origin
(method url-fetch)
@ -158,7 +158,7 @@ This package provides the core library and elements.")
name "-" version ".tar.xz"))
(sha256
(base32
"1d8d1gfd4jnymyhb0f1pxdhapsx4v1nilk03bndmv0id131wf9hh"))))
"0z0wy0p0nxxqhsis3n517d6ykldm02g7rca9fhq9kxb9m05yidx4"))))
(build-system gnu-build-system)
(outputs '("out" "doc"))
(propagated-inputs
@ -209,7 +209,7 @@ for the GStreamer multimedia library.")
(define-public gst-plugins-good
(package
(name "gst-plugins-good")
(version "1.14.1")
(version "1.14.2")
(source
(origin
(method url-fetch)
@ -218,7 +218,7 @@ for the GStreamer multimedia library.")
name "-" version ".tar.xz"))
(sha256
(base32
"0wlim4kapb2vc11fcjdlx31zn5ja3xw3kq1jflvk4sknvcnhdv1l"))))
"1bfa4n6xhr4v4wga8pv1y00rm1aka498snw6kgszy2w624l5wmy0"))))
(build-system gnu-build-system)
(inputs
`(("aalib" ,aalib)
@ -268,14 +268,14 @@ developers consider to have good quality code and correct functionality.")
(define-public gst-plugins-bad
(package
(name "gst-plugins-bad")
(version "1.14.1")
(version "1.14.2")
(source (origin
(method url-fetch)
(uri (string-append "https://gstreamer.freedesktop.org/src/"
name "/" name "-" version ".tar.xz"))
(sha256
(base32
"06nn43f65mr872apljfiq8jnmwa8r7z26n1frprgvaijh28ccxra"))))
"1bqy3dn7q4kdkd4lqznyly8fv854d0hhncv88jk6ai4rf3dbgyil"))))
(outputs '("out" "doc"))
(build-system gnu-build-system)
(arguments
@ -344,7 +344,7 @@ par compared to the rest.")
(define-public gst-plugins-ugly
(package
(name "gst-plugins-ugly")
(version "1.14.1")
(version "1.14.2")
(source
(origin
(method url-fetch)
@ -352,7 +352,7 @@ par compared to the rest.")
name "/" name "-" version ".tar.xz"))
(sha256
(base32
"1lz1kx9h5mlp9ahmgavv99nkg6j0rrjks2ws820yym1zn45l7wng"))))
"0s9xrz8knfv06fj1nbv3iq4xj7dj4cnzj3xvgb7zs89rv7crgq2m"))))
(build-system gnu-build-system)
(inputs
`(("gst-plugins-base" ,gst-plugins-base)
@ -382,7 +382,7 @@ distribution problems in some jurisdictions, e.g. due to patent threats.")
(define-public gst-libav
(package
(name "gst-libav")
(version "1.14.1")
(version "1.14.2")
(source (origin
(method url-fetch)
(uri (string-append
@ -390,18 +390,16 @@ distribution problems in some jurisdictions, e.g. due to patent threats.")
name "-" version ".tar.xz"))
(sha256
(base32
"1782crqgl1bqlkr67s0qmb3ihcjdjpljd6kynqs9zyzjs810my7g"))))
"1pknqpjxq1l3vlprdsmxxwk0lwqa555fqd543k9vphngqlwiqdca"))
(modules '((guix build utils)))
(snippet
'(begin
;; Drop bundled ffmpeg.
(delete-file-recursively "gst-libs/ext/libav")
#t))))
(build-system gnu-build-system)
(arguments
'(#:configure-flags '("--with-system-libav")
#:phases
(modify-phases %standard-phases
(add-before 'configure 'patch-/bin/sh
(lambda _
(substitute* "gst-libs/ext/libav/configure"
(("#! /bin/sh")
(string-append "#! "(which "sh"))))
#t)))))
'(#:configure-flags '("--with-system-libav")))
(native-inputs
`(("pkg-config" ,pkg-config)
("python" ,python)))
@ -420,7 +418,7 @@ compression formats through the use of the libav library.")
(define-public python-gst
(package
(name "python-gst")
(version "1.14.1")
(version "1.14.2")
(source (origin
(method url-fetch)
(uri (string-append
@ -428,7 +426,7 @@ compression formats through the use of the libav library.")
"gst-python-" version ".tar.xz"))
(sha256
(base32
"1ls7j5iy7irinf7d7nm6r4qw3d1ddpr8fm4k5n6zfhz3am4p1ihv"))))
"08nb011acyvlz48fqh8c084k0dlssz9b7wha7zzk797inidbwh6w"))))
(build-system gnu-build-system)
(arguments
;; XXX: Factorize python-sitedir with python-build-system.

5
gnu/packages/java.scm

@ -1672,7 +1672,7 @@ new Date();"))
'("jdk" "openjdk-src" "corba-drop" "jaxp-drop" "jaxws-drop"
"jdk-drop" "langtools-drop" "hotspot-drop")))))))
(define-public icedtea icedtea-7)
(define-public icedtea icedtea-8)
(define-public ant/java8
@ -3679,7 +3679,8 @@ on the XPP3 API (XML Pull Parser).")))
"115l5pqblirdkmzi32dxx7gbcm4jy0s14y5wircr6h8jdr9aix00"))))
(build-system ant-build-system)
(propagated-inputs
`(("java-aqute-bndlib" ,java-aqute-bndlib)))
`(("java-aqute-bndlib" ,java-aqute-bndlib)
("java-aqute-libg" ,java-aqute-libg)))
(arguments
`(#:build-target "compile"
;; The tests require an old version of Janino, which no longer compiles

9
gnu/packages/llvm.scm

@ -6,6 +6,7 @@
;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2017 Roel Janssen <roel@gnu.org>
;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
;;; This file is part of GNU Guix.
;;;
@ -41,7 +42,7 @@
(define-public llvm
(package
(name "llvm")
(version "6.0.0")
(version "6.0.1")
(source
(origin
(method url-fetch)
@ -49,7 +50,7 @@
version "/llvm-" version ".src.tar.xz"))
(sha256
(base32
"0224xvfg6h40y5lrbnb9qaq3grmdc5rg00xq03s1wxjfbf8krx8z"))))
"1qpls3vk85lydi5b4axl0809fv932qgsqgdgrk098567z4jc7mmn"))))
(build-system cmake-build-system)
(native-inputs
`(("python" ,python-2) ;bytes->str conversion in clang>=3.7 needs python-2
@ -243,11 +244,11 @@ code analysis tools.")
(define-public clang-runtime
(clang-runtime-from-llvm
llvm
"16m7rvh3w6vq10iwkjrr1nn293djld3xm62l5zasisaprx117k6h"))
"1fcr3jn24yr8lh36nc0c4ikli4744i2q9m1ik67p1jymwwaixkgl"))
(define-public clang
(clang-from-llvm llvm clang-runtime
"0cnznvfyl3hgbg8gj58pmwf0pvd2sv5k3ccbivy6q6ggv7c6szg0"
"0rxn4rh7rrnsqbdgp4gzc8ishbkryhpl1kd3mpnxzpxxhla3y93w"
#:patches '("clang-6.0-libc-search-path.patch")))
(define-public llvm-3.9.1

29
gnu/packages/maths.scm

@ -276,22 +276,20 @@ enough to be used effectively as a scientific calculator.")
(define-public double-conversion
(package
(name "double-conversion")
(version "1.1.5")
(version "3.0.0")
(home-page "https://github.com/google/double-conversion")
(source (origin
(method url-fetch)
(uri (string-append
"https://github.com/floitsch/double-conversion/archive/v"
version ".tar.gz"))
(uri (string-append home-page "/archive/v" version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"0cnr8xhyjfxijay8ymkqcph3672wp2lj23qhdmr3m4kia5kpdf83"))))
"059r1czs28ljjd388pn6l3njg1ghbf1cv3q9nkxv3dj2a8siabqm"))))
(build-system cmake-build-system)
(arguments
'(#:test-target "test"
#:configure-flags '("-DBUILD_SHARED_LIBS=ON"
"-DBUILD_TESTING=ON")))
(home-page "https://github.com/floitsch/double-conversion")
(synopsis "Conversion routines for IEEE doubles")
(description
"The double-conversion library provides binary-decimal and decimal-binary
@ -2827,7 +2825,7 @@ parts of it.")
(define-public openblas
(package
(name "openblas")
(version "0.3.0")
(version "0.3.2")
(source
(origin
(method url-fetch)
@ -2836,7 +2834,7 @@ parts of it.")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"14a9vyvp2k5zpd0axbnqk0d3khc1v3cck10nb5fj7d2sgn8490ky"))))
"0b20km2jv7m6qiylrlvhq2vnmkmilb633mr8rhqmgbn1wqrp58jq"))))
(build-system gnu-build-system)
(arguments
`(#:test-target "test"
@ -2875,16 +2873,6 @@ parts of it.")
#:phases
(modify-phases %standard-phases
(delete 'configure)
;; Conditionally apply a patch on i686 to avoid rebuilding
;; all architectures. FIXME: This should be moved to the
;; (source (patches ...)) field in the next rebuild cycle.
,@(if (string-prefix? "i686" (or (%current-target-system)
(%current-system)))
`((add-after 'unpack 'fix-tests
(lambda* (#:key inputs #:allow-other-keys)
(invoke "patch" "-p1"
"--input" (assoc-ref inputs "i686-fix-tests.patch")))))
'())
(add-before 'build 'set-extralib
(lambda* (#:key inputs #:allow-other-keys)
;; Get libgfortran found when building in utest.
@ -2896,11 +2884,6 @@ parts of it.")
`(("fortran-lib" ,gfortran "lib")))
(native-inputs
`(("cunit" ,cunit)
,@(if (string-prefix? "i686" (or (%current-target-system)
(%current-system)))
`(("i686-fix-tests.patch"
,(search-patch "openblas-fix-tests-i686.patch")))
'())
("fortran" ,gfortran)
("perl" ,perl)))
(home-page "http://www.openblas.net/")

37
gnu/packages/patches/mariadb-client-test-32bit.patch

@ -0,0 +1,37 @@
From 93efa48a7b972fc463406603574a4d508eefe792 Mon Sep 17 00:00:00 2001
From: Sergei Golubchik <serg@mariadb.org>
Date: Sun, 13 May 2018 18:50:21 +0200
Subject: [PATCH] fix failing main.mysql_client_test test on 32bit
in `ulonglong=ulong*uint` multiplication
is done in ulong, wrapping around on 32bit.
This became visible after C/C changed the
default charset to utf8, thus changing
mbmaxlem from 1 to 3.
---
tests/mysql_client_fw.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/tests/mysql_client_fw.c b/tests/mysql_client_fw.c
index f69eb28a2871..4d036887629a 100644
--- a/tests/mysql_client_fw.c
+++ b/tests/mysql_client_fw.c
@@ -768,7 +768,7 @@ static void do_verify_prepare_field(MYSQL_RES *result,
{
MYSQL_FIELD *field;
CHARSET_INFO *cs;
- ulonglong expected_field_length;
+ ulonglong expected_field_length= length;
if (!(field= mysql_fetch_field_direct(result, no)))
{
@@ -777,7 +777,7 @@ static void do_verify_prepare_field(MYSQL_RES *result,
}
cs= get_charset(field->charsetnr, 0);
DIE_UNLESS(cs);
- if ((expected_field_length= length * cs->mbmaxlen) > UINT_MAX32)
+ if ((expected_field_length*= cs->mbmaxlen) > UINT_MAX32)
expected_field_length= UINT_MAX32;
if (!opt_silent)
{

33
gnu/packages/patches/meson-for-build-rpath.patch

@ -4,20 +4,21 @@ meson-build-system.
Patch by Peter Mikkelsen <petermikkelsen10@gmail.com>
--- meson-0.42.0/mesonbuild/scripts/meson_install.py.orig 2017-09-09 01:49:39.147374148 +0200
+++ meson-0.42.0/mesonbuild/scripts/meson_install.py 2017-09-09 01:51:01.209134717 +0200
@@ -391,14 +391,6 @@
print("Symlink creation does not work on this platform. "
"Skipping all symlinking.")
printed_symlink_error = True
- if os.path.isfile(outname):
- try:
- depfixer.fix_rpath(outname, install_rpath, False)
- except SystemExit as e:
- if isinstance(e.code, int) and e.code == 0:
- pass
- else:
- raise
--- meson-0.42.0/mesonbuild/minstall.py.orig 2017-09-09 01:49:39.147374148 +0200
+++ meson-0.42.0/mesonbuild/minstall.py 2017-09-09 01:51:01.209134717 +0200
@@ -436,15 +436,6 @@
print("Symlink creation does not work on this platform. "
"Skipping all symlinking.")
printed_symlink_error = True
- if os.path.isfile(outname):
- try:
- depfixer.fix_rpath(outname, install_rpath, final_path,
- install_name_mappings, verbose=False)
- except SystemExit as e:
- if isinstance(e.code, int) and e.code == 0:
- pass
- else:
- raise
def run(args):
global install_log_file
parser = buildparser()

35
gnu/packages/patches/openblas-fix-tests-i686.patch

@ -1,35 +0,0 @@
Fix a test failure on some i686 systems:
https://github.com/xianyi/OpenBLAS/issues/1575
This patch is a squashed version of these commits:
https://github.com/xianyi/OpenBLAS/pull/1583
diff --git a/kernel/x86/KERNEL.NEHALEM b/kernel/x86/KERNEL.NEHALEM
index 835520ef..65b03ae5 100644
--- a/kernel/x86/KERNEL.NEHALEM
+++ b/kernel/x86/KERNEL.NEHALEM
@@ -1,3 +1 @@
include $(KERNELDIR)/KERNEL.PENRYN
-SSWAPKERNEL = ../arm/swap.c
-DSWAPKERNEL = ../arm/swap.c
diff --git a/kernel/x86/swap.S b/kernel/x86/swap.S
index 54b00b33..e30c2789 100644
--- a/kernel/x86/swap.S
+++ b/kernel/x86/swap.S
@@ -138,6 +138,14 @@
/* INCX != 1 or INCY != 1 */
.L14:
+ cmpl $0, %ebx
+ jne .L141
+ cmpl $0, %ecx
+ jne .L141
+/* INCX == 0 and INCY == 0 */
+ jmp .L27
+
+.L141:
movl %edx, %eax
sarl $2, %eax
jle .L28

67
gnu/packages/patches/pulseaudio-glibc-2.27.patch

@ -1,67 +0,0 @@
Copied from:
https://cgit.freedesktop.org/pulseaudio/pulseaudio/commit/?id=dfb0460fb4743aec047cdf755a660a9ac2d0f3fb
From dfb0460fb4743aec047cdf755a660a9ac2d0f3fb Mon Sep 17 00:00:00 2001
From: Tanu Kaskinen <tanuk@iki.fi>
Date: Wed, 24 Jan 2018 03:51:49 +0200
Subject: [PATCH] memfd-wrappers: only define memfd_create() if not already
defined
glibc 2.27 is to be released soon, and it will provide memfd_create().
If glibc provides the function, we must not define it ourselves,
otherwise building fails due to conflict between the two implementations
of the same function.
BugLink: https://bugs.freedesktop.org/show_bug.cgi?id=104733
---
configure.ac | 3 +++
src/pulsecore/memfd-wrappers.h | 7 ++++---
2 files changed, 7 insertions(+), 3 deletions(-)
diff --git a/configure.ac b/configure.ac
index 0084c86e..0eb44b08 100644
--- a/configure.ac
+++ b/configure.ac
@@ -610,6 +610,9 @@ AS_IF([test "x$enable_memfd" = "xyes" && test "x$HAVE_MEMFD" = "x0"],
[AC_MSG_ERROR([*** Your Linux kernel does not support memfd shared memory.
*** Use linux v3.17 or higher for such a feature.])])
+AS_IF([test "x$HAVE_MEMFD" = "x1"],
+ AC_CHECK_FUNCS([memfd_create]))
+
AC_SUBST(HAVE_MEMFD)
AM_CONDITIONAL([HAVE_MEMFD], [test "x$HAVE_MEMFD" = x1])
AS_IF([test "x$HAVE_MEMFD" = "x1"], AC_DEFINE([HAVE_MEMFD], 1, [Have memfd shared memory.]))
diff --git a/src/pulsecore/memfd-wrappers.h b/src/pulsecore/memfd-wrappers.h
index 3bed9b2b..c7aadfd3 100644
--- a/src/pulsecore/memfd-wrappers.h
+++ b/src/pulsecore/memfd-wrappers.h
@@ -20,13 +20,14 @@
License along with PulseAudio; if not, see <http://www.gnu.org/licenses/>.
***/
-#ifdef HAVE_MEMFD
+#if defined(HAVE_MEMFD) && !defined(HAVE_MEMFD_CREATE)
#include <sys/syscall.h>
#include <fcntl.h>
/*
- * No glibc wrappers exist for memfd_create(2), so provide our own.
+ * Before glibc version 2.27 there was no wrapper for memfd_create(2),
+ * so we have to provide our own.
*
* Also define memfd fcntl sealing macros. While they are already
* defined in the kernel header file <linux/fcntl.h>, that file as
@@ -63,6 +64,6 @@ static inline int memfd_create(const char *name, unsigned int flags) {
#define F_SEAL_WRITE 0x0008 /* prevent writes */
#endif
-#endif /* HAVE_MEMFD */
+#endif /* HAVE_MEMFD && !HAVE_MEMFD_CREATE */
#endif
--
2.16.2

4
gnu/packages/pciutils.scm

@ -31,7 +31,7 @@
(define-public pciutils
(package
(name "pciutils")
(version "3.5.6")
(version "3.6.1")
(source (origin
(method url-fetch)
(uri (string-append
@ -39,7 +39,7 @@
version ".tar.xz"))
(sha256
(base32
"08dvsk1b5m1r7qqzsm849h4glq67mngf8zw7bg0102ff1jwywipk"))))
"1q39hh8scgvqppk1clzjh7yiq5p2r0knv52g3qzmdhsir4f47h7w"))))
(build-system gnu-build-system)
(arguments
'(#:phases

14
gnu/packages/pdf.scm

@ -644,14 +644,14 @@ line tools for batch rendering @command{pdfdraw}, rewriting files
(define-public qpdf
(package
(name "qpdf")
(version "6.0.0")
(version "8.1.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/qpdf/qpdf/" version
"/qpdf-" version ".tar.gz"))
(sha256
(base32
"0csj2p2gkxrc0rk8ykymlsdgfas96vzf1dip3y1x7z1q9plwgzd9"))
"1m3hcgip6bzjx4gd7wq1328p8zi3pq5savzncdyln6l0lcklh7vx"))
(modules '((guix build utils)))
(snippet
;; Replace shebang with the bi-lingual shell/Perl trick to remove
@ -683,9 +683,9 @@ eval '(exit $?0)' && eval 'exec perl -wS \"$0\" ${1+\"$@\"}'
`(("pkg-config" ,pkg-config)
("perl" ,perl)))
(propagated-inputs
`(("pcre" ,pcre)))
(inputs
`(("zlib" ,zlib)))
;; In Requires.private of libqpdf.pc.
`(("libjpeg-turbo" ,libjpeg-turbo)
("zlib" ,zlib)))
(synopsis "Command-line tools and library for transforming PDF files")
(description
"QPDF is a command-line program that does structural, content-preserving
@ -693,7 +693,9 @@ transformations on PDF files. It could have been called something like
pdf-to-pdf. It includes support for merging and splitting PDFs and to
manipulate the list of pages in a PDF file. It is not a PDF viewer or a
program capable of converting PDF into other formats.")
(license license:clarified-artistic)
;; Prior to the 7.0 release, QPDF was licensed under Artistic 2.0.
;; Users can still choose to use the old license at their option.
(license (list license:asl2.0 license:clarified-artistic))
(home-page "http://qpdf.sourceforge.net/")))
(define-public xournal

34
gnu/packages/pulseaudio.scm

@ -7,6 +7,7 @@
;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2017 Stefan Reichör <stefan@xsteve.at>
;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Pierre Langlois <pierre.langlois@gmx.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -31,6 +32,7 @@
#:use-module (guix build-system python)
#:use-module (gnu packages)
#:use-module (gnu packages algebra)
#:use-module (gnu packages audio)
#:use-module (gnu packages autotools)
#:use-module (gnu packages avahi)
#:use-module (gnu packages check)
@ -122,7 +124,7 @@ rates.")
(define-public pulseaudio
(package
(name "pulseaudio")
(version "11.1")
(version "12.2")
(source (origin
(method url-fetch)
(uri (string-append
@ -130,7 +132,7 @@ rates.")
name "-" version ".tar.xz"))
(sha256
(base32
"17ndr6kc7hpv4ih4gygwlcpviqifbkvnk4fbwf4n25kpb991qlpj"))
"0ma0p8iry7fil7qb4pm2nx2pm65kq9hk9xc4r5wkf14nqbzni5l0"))
(modules '((guix build utils)))
(snippet
;; Disable console-kit support by default since it's deprecated
@ -141,7 +143,6 @@ rates.")
(string-append "#" all "\n")))
#t))
(patches (search-patches
"pulseaudio-glibc-2.27.patch"
"pulseaudio-fix-mult-test.patch"
"pulseaudio-longer-test-timeout.patch"))))
(build-system gnu-build-system)
@ -153,13 +154,6 @@ rates.")
(assoc-ref %outputs "out")
"/lib/udev/rules.d"))
#:phases (modify-phases %standard-phases
(replace 'bootstrap
;; TODO: Remove this custom bootstrap phase when
;; pulseaudio-glibc-2.27.patch is removed.
(lambda _
(patch-shebang "git-version-gen")
(setenv "NOCONFIGURE" "1")
(invoke "bash" "bootstrap.sh")))
(add-before 'check 'pre-check
(lambda _
;; 'tests/lock-autospawn-test.c' wants to create a file
@ -174,25 +168,21 @@ rates.")
`(("alsa-lib" ,alsa-lib)
("bluez" ,bluez)
("sbc" ,sbc)
("speex" ,speex)
("speexdsp" ,speexdsp)
("libsndfile" ,libsndfile)
("libsamplerate" ,libsamplerate)
("jack" ,jack-1) ; For routing the output to jack.
("dbus" ,dbus)
("glib" ,glib)
("intltool" ,intltool)
("m4" ,m4)
("libltdl" ,libltdl)
("fftwf" ,fftwf)
("avahi" ,avahi)
("eudev" ,eudev) ;for the detection of hardware audio devices
("check" ,check)))
("eudev" ,eudev))) ;for the detection of hardware audio devices
(native-inputs
`(("pkg-config" ,pkg-config)
;; TODO: Remove "autoconf", "automake", and "libtool" from
;; native-inputs when pulseaudio-glibc-2.27.patch is removed.
("autoconf" ,autoconf)
("automake" ,automake)
("libtool" ,libtool)))
`(("check" ,check)
("glib:bin" ,glib "bin")
("intltool" ,intltool)
("m4" ,m4)
("pkg-config" ,pkg-config)))
(propagated-inputs
;; 'libpulse*.la' contain `-lgdbm' and `-lcap', so propagate them.
`(("libcap" ,libcap)

24
gnu/packages/python.scm

@ -2826,14 +2826,14 @@ and is very extensible.")
(define-public python-cython
(package
(name "python-cython")
(version "0.27")
(version "0.28.4")
(source
(origin
(method url-fetch)
(uri (pypi-uri "Cython" version))
(sha256
(base32
"02y0pp1nx77b8s1mpxc6da2dccl6wd31pp4ksi9via479qcvacmr"))))
"0imw9s2rbrh32clbl10csnwmig9p3nzkrd2baxxxfmnrsc42pb3n"))))
(build-system python-build-system)
;; we need the full python package and not just the python-wrapper
;; because we need libpython3.3m.so
@ -2845,8 +2845,26 @@ and is very extensible.")
(add-before 'check 'set-HOME
;; some tests require access to "$HOME/.cython"
(lambda _ (setenv "HOME" "/tmp") #t))
;; FIXME: These tests started failing on armhf after the 0.28 update
;; (commit c69d11c5930), both with an error such as this:
;; compiling (cpp) and running dictcomp ...
;; === C/C++ compiler error output: ===
;; ‘
;; dictcomp.cpp:5221: confused by earlier errors, bailing out
;; See <https://hydra.gnu.org/build/2948724> for logs.
,@(if (target-arm32?)
`((add-before 'check 'disable-failing-tests
(lambda _
(let ((disabled-tests (open-file "tests/bugs.txt" "a")))
(for-each (lambda (test)
(format disabled-tests "~a\n" test))
'("memslice" "dictcomp"))
(close-port disabled-tests)))))
'())
(replace 'check
(lambda _ (zero? (system* "python" "runtests.py" "-vv")))))))
(lambda _ (invoke "python" "runtests.py" "-vv"))))))
(home-page "http://cython.org/")
(synopsis "C extensions for Python")
(description "Cython is an optimising static compiler for both the Python

4
gnu/packages/video.scm

@ -560,7 +560,7 @@ libebml is a C++ library to read and write EBML files.")
(define-public libva
(package
(name "libva")
(version "2.1.0")
(version "2.2.0")
(source
(origin
(method url-fetch)
@ -572,7 +572,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 "03sb1b3fxw8myf9kz6rxw5f3v1p0vfmk34779qx0q8fk24x9bypk"))))
(base32 "1wjfrs261fp9wkhgpmrlz5smnhxrmsk31way646x6i2mg16a0v3g"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))

4
gnu/packages/web.scm

@ -814,7 +814,7 @@ for efficient socket-like bidirectional reliable communication channels.")
(define-public libpsl
(package
(name "libpsl")
(version "0.20.1")
(version "0.20.2")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/rockdaboot/libpsl/"
@ -822,7 +822,7 @@ for efficient socket-like bidirectional reliable communication channels.")
"/libpsl-" version ".tar.gz"))
(sha256
(base32
"17r18y25ka2ck2ykfidbg4a7jpyzmkqwrzplgqjp7mwd2l9rc6cm"))))
"03sn3fbcrmgl9x2f1gc6rbrdlbrnwbhrnkgi733gqb95cvmhmzgq"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))

8
gnu/packages/xorg.scm

@ -2387,7 +2387,7 @@ XC-APPGROUP, XTEST.")
(define-public libevdev
(package
(name "libevdev")
(version "1.5.6")
(version "1.5.9")
(source
(origin
(method url-fetch)
@ -2395,7 +2395,7 @@ XC-APPGROUP, XTEST.")
name "-" version ".tar.xz"))
(sha256
(base32
"1256ypz93039n6km4macg158fpmjgylhmcmk20pnklxicsfpxv7c"))))
"0xca343ff12wh6nsq76r0nbsfrm8dypjrzm4fqz9vv9v8i8kfrp1"))))
(build-system gnu-build-system)
(native-inputs `(("python" ,python)))
(home-page "https://www.freedesktop.org/wiki/Software/libevdev/")
@ -4566,7 +4566,7 @@ cannot be adequately worked around on the client side of the wire.")
(define-public libxinerama
(package
(name "libxinerama")
(version "1.1.3")
(version "1.1.4")
(source
(origin
(method url-fetch)
@ -4576,7 +4576,7 @@ cannot be adequately worked around on the client side of the wire.")
".tar.bz2"))
(sha256
(base32
"1qlqfvzw45gdzk9xirgwlp2qgj0hbsyiqj8yh8zml2bk2ygnjibs"))))
"086p0axqj57nvkaqa6r00dnr9kyrn1m8blgf0zjy25zpxkbxn200"))))
(build-system gnu-build-system)
(propagated-inputs
`(("xorgproto" ,xorgproto)))

20
guix/build-system/meson.scm

@ -58,12 +58,6 @@
(let ((module (resolve-interface '(gnu packages build-tools))))
(module-ref module 'meson-for-build)))
(define (default-patchelf)
"Return the default patchelf package."
;; Lazily resolve the binding to avoid a circular dependency.
(let ((module (resolve-interface '(gnu packages elf))))
(module-ref module 'patchelf)))
(define* (lower name
#:key source inputs native-inputs outputs system target
(meson (default-meson))
@ -81,15 +75,6 @@
(system system)
(build-inputs `(("meson" ,meson)
("ninja" ,ninja)
;; 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))
@ -147,10 +132,7 @@ has a 'meson.build' file."
#:inputs %build-inputs
#:search-paths ',(map search-path-specification->sexp
search-paths)
#:phases
(if (string-prefix? "arm" ,system)
(modify-phases build-phases (delete 'fix-runpath))
build-phases)
#:phases build-phases
#:configure-flags ,configure-flags
#:build-type ,build-type
#:tests? ,tests?

6
guix/build/ant-build-system.scm

@ -173,7 +173,7 @@ to the default GNU unpack strategy."
(define* (generate-jar-indices #:key outputs #:allow-other-keys)
"Generate file \"META-INF/INDEX.LIST\". This file does not use word wraps
and is preferred over \"META-INF/MAINFEST.MF\", which does use word wraps,
and is preferred over \"META-INF/MANIFEST.MF\", which does use word wraps,
by Java when resolving dependencies. So we make sure to create it so that
grafting works - and so that the garbage collector doesn't collect
dependencies of this jar file."
@ -245,7 +245,9 @@ repack them. This is necessary to ensure that archives are reproducible."
(replace 'build build)
(replace 'check check)
(replace 'install install)
(add-after 'install 'generate-jar-indices generate-jar-indices)
(add-after 'install 'reorder-jar-content
strip-jar-timestamps)
(add-after 'reorder-jar-content 'generate-jar-indices generate-jar-indices)
(add-after 'generate-jar-indices 'strip-jar-timestamps
strip-jar-timestamps)))

23
guix/build/meson-build-system.scm

@ -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.
;;;
@ -44,18 +45,13 @@
(prefix (assoc-ref outputs "out"))
(args `(,(string-append "--prefix=" prefix)
,(string-append "--buildtype=" build-type)
,(string-append "-Dc_link_args=-Wl,-rpath="
(assoc-ref outputs "out") "/lib")
,(string-append "-Dcpp_link_args=-Wl,-rpath="
(assoc-ref outputs "out") "/lib")
,@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>
(unless (getenv "LDFLAGS")
(setenv "LDFLAGS" (string-append "-Wl,-rpath=" out "/lib")))
(mkdir build-dir)
(chdir build-dir)
(apply invoke "meson" args)))
@ -148,8 +144,13 @@ for example libraries only needed for the tests."
(replace 'configure configure)
(replace 'build build)
(replace 'check check)
(replace 'install install)
(add-after 'strip 'fix-runpath fix-runpath)))
;; XXX: We used to have 'fix-runpath' here, but it appears no longer
;; necessary with newer Meson. However on 'core-updates' there is a
;; useful 'strip-runpath' procedure to ensure no bogus directories in
;; RUNPATH (remember that we tell Meson to not touch RUNPATH in
;; (@ (gnu packages build-tools) meson-for-build)), so it should be
;; re-added there sans the augment-rpath calls (which are not needed).
(replace 'install install)))
(define* (meson-build #:key inputs phases
#:allow-other-keys #:rest args)

Loading…
Cancel
Save