diff options
-rw-r--r-- | gnu/local.mk | 2 | ||||
-rw-r--r-- | gnu/packages/audio.scm | 8 | ||||
-rw-r--r-- | gnu/packages/backup.scm | 15 | ||||
-rw-r--r-- | gnu/packages/build-tools.scm | 4 | ||||
-rw-r--r-- | gnu/packages/databases.scm | 125 | ||||
-rw-r--r-- | gnu/packages/freedesktop.scm | 8 | ||||
-rw-r--r-- | gnu/packages/gl.scm | 4 | ||||
-rw-r--r-- | gnu/packages/gnome.scm | 4 | ||||
-rw-r--r-- | gnu/packages/gstreamer.scm | 44 | ||||
-rw-r--r-- | gnu/packages/java.scm | 5 | ||||
-rw-r--r-- | gnu/packages/llvm.scm | 9 | ||||
-rw-r--r-- | gnu/packages/maths.scm | 29 | ||||
-rw-r--r-- | gnu/packages/patches/meson-for-build-rpath.patch | 33 | ||||
-rw-r--r-- | gnu/packages/patches/openblas-fix-tests-i686.patch | 35 | ||||
-rw-r--r-- | gnu/packages/patches/pulseaudio-glibc-2.27.patch | 67 | ||||
-rw-r--r-- | gnu/packages/pciutils.scm | 4 | ||||
-rw-r--r-- | gnu/packages/pdf.scm | 14 | ||||
-rw-r--r-- | gnu/packages/pulseaudio.scm | 34 | ||||
-rw-r--r-- | gnu/packages/python.scm | 6 | ||||
-rw-r--r-- | gnu/packages/video.scm | 4 | ||||
-rw-r--r-- | gnu/packages/web.scm | 4 | ||||
-rw-r--r-- | gnu/packages/xorg.scm | 8 | ||||
-rw-r--r-- | guix/build-system/meson.scm | 20 | ||||
-rw-r--r-- | guix/build/ant-build-system.scm | 6 | ||||
-rw-r--r-- | guix/build/meson-build-system.scm | 23 |
25 files changed, 233 insertions, 282 deletions
diff --git a/gnu/local.mk b/gnu/local.mk index 20b213c5fb..9ae23d1a23 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -984,7 +984,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 \ @@ -1048,7 +1047,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 \ diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm index 58d67f2ebb..89f2275ebe 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -1393,6 +1393,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))) diff --git a/gnu/packages/backup.scm b/gnu/packages/backup.scm index 9884f58fc3..74ee67c70c 100644 --- a/gnu/packages/backup.scm +++ b/gnu/packages/backup.scm @@ -485,8 +485,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 diff --git a/gnu/packages/build-tools.scm b/gnu/packages/build-tools.scm index e693aec4ac..24870c82d6 100644 --- a/gnu/packages/build-tools.scm +++ b/gnu/packages/build-tools.scm @@ -100,7 +100,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/" @@ -108,7 +108,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 diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index 7b056eb13b..4c9382ce6d 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -627,7 +627,7 @@ Language.") (define-public mariadb (package (name "mariadb") - (version "10.1.33") + (version "10.1.34") (source (origin (method url-fetch) (uri (string-append "https://downloads.mariadb.org/f/" @@ -635,7 +635,21 @@ Language.") name "-" version ".tar.gz")) (sha256 (base32 - "0bax748j4srsyhw5cs5jvwigndh0zwmf4r2cjvhja31ckx8jqccl")))) + "0j2mdpyvj41vkq2rwrzky88b7170hzz6gy2vb2bc1447s2gp3q67")) + (patches (search-patches "mariadb-gcc-ice.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 +663,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 +682,73 @@ 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")) + + ;; 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" + "--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 +761,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 +777,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 @@ -1456,7 +1529,7 @@ valid SQL query.") (define-public unixodbc (package (name "unixodbc") - (version "2.3.4") + (version "2.3.6") (source (origin (method url-fetch) (uri @@ -1464,7 +1537,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 diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm index 2d9b3d7ca8..cb0916621a 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -147,14 +147,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"))) @@ -474,7 +474,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 @@ -482,7 +482,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))) diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm index bde6e55607..28e283640d 100644 --- a/gnu/packages/gl.scm +++ b/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) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index b1a0ccdc12..46eae3608a 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -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) diff --git a/gnu/packages/gstreamer.scm b/gnu/packages/gstreamer.scm index 951ca93fbf..63d18fce5c 100644 --- a/gnu/packages/gstreamer.scm +++ b/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 @@ -205,7 +205,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) @@ -214,7 +214,7 @@ for the GStreamer multimedia library.") name "-" version ".tar.xz")) (sha256 (base32 - "0wlim4kapb2vc11fcjdlx31zn5ja3xw3kq1jflvk4sknvcnhdv1l")))) + "1bfa4n6xhr4v4wga8pv1y00rm1aka498snw6kgszy2w624l5wmy0")))) (build-system gnu-build-system) (inputs `(("aalib" ,aalib) @@ -264,14 +264,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 @@ -340,7 +340,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) @@ -348,7 +348,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) @@ -378,7 +378,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 @@ -386,18 +386,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))) @@ -416,7 +414,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 @@ -424,7 +422,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. diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index 0ff92c763d..d2f4c9d05b 100644 --- a/gnu/packages/java.scm +++ b/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 diff --git a/gnu/packages/llvm.scm b/gnu/packages/llvm.scm index 98592ad090..add7f1b40c 100644 --- a/gnu/packages/llvm.scm +++ b/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 diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index f07c83dc0d..50de120e07 100644 --- a/gnu/packages/maths.scm +++ b/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 @@ -2830,7 +2828,7 @@ parts of it.") (define-public openblas (package (name "openblas") - (version "0.3.0") + (version "0.3.2") (source (origin (method url-fetch) @@ -2839,7 +2837,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" @@ -2878,16 +2876,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. @@ -2899,11 +2887,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/") diff --git a/gnu/packages/patches/meson-for-build-rpath.patch b/gnu/packages/patches/meson-for-build-rpath.patch index 2151d53565..59249e294d 100644 --- a/gnu/packages/patches/meson-for-build-rpath.patch +++ b/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() diff --git a/gnu/packages/patches/openblas-fix-tests-i686.patch b/gnu/packages/patches/openblas-fix-tests-i686.patch deleted file mode 100644 index 3325546ea3..0000000000 --- a/gnu/packages/patches/openblas-fix-tests-i686.patch +++ /dev/null @@ -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 diff --git a/gnu/packages/patches/pulseaudio-glibc-2.27.patch b/gnu/packages/patches/pulseaudio-glibc-2.27.patch deleted file mode 100644 index 79d86abeee..0000000000 --- a/gnu/packages/patches/pulseaudio-glibc-2.27.patch +++ /dev/null @@ -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 - diff --git a/gnu/packages/pciutils.scm b/gnu/packages/pciutils.scm index d972761586..d5369f3b6d 100644 --- a/gnu/packages/pciutils.scm +++ b/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 diff --git a/gnu/packages/pdf.scm b/gnu/packages/pdf.scm index 867333031c..03b311da14 100644 --- a/gnu/packages/pdf.scm +++ b/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 diff --git a/gnu/packages/pulseaudio.scm b/gnu/packages/pulseaudio.scm index bac92eafa9..35d499522b 100644 --- a/gnu/packages/pulseaudio.scm +++ b/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) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index d4448f23ad..3b10f05e75 100644 --- a/gnu/packages/python.scm +++ b/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 @@ -2846,7 +2846,7 @@ and is very extensible.") ;; some tests require access to "$HOME/.cython" (lambda _ (setenv "HOME" "/tmp") #t)) (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 diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 605e461a6c..9e6dba4175 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -559,7 +559,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) @@ -571,7 +571,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))) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index c4b78d0b64..b976d6ea08 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -813,7 +813,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/" @@ -821,7 +821,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))) diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm index b238ea4aad..57cea3fee5 100644 --- a/gnu/packages/xorg.scm +++ b/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))) diff --git a/guix/build-system/meson.scm b/guix/build-system/meson.scm index e894e1472d..fddf899092 100644 --- a/guix/build-system/meson.scm +++ b/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? diff --git a/guix/build/ant-build-system.scm b/guix/build/ant-build-system.scm index d79b4d503b..d79a2d55ed 100644 --- a/guix/build/ant-build-system.scm +++ b/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))) diff --git a/guix/build/meson-build-system.scm b/guix/build/meson-build-system.scm index e4aae8212f..80e54723c5 100644 --- a/guix/build/meson-build-system.scm +++ b/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) |