Merge branch 'staging'

master
Marius Bakke 2018-07-13 00:25:45 +02:00
commit 49b6dc2b4e
No known key found for this signature in database
GPG Key ID: A2A06DF2A33A54FA
32 changed files with 2031 additions and 550 deletions

View File

@ -564,7 +564,6 @@ dist_patch_DATA = \
%D%/packages/patches/aegis-test-fixup-1.patch \ %D%/packages/patches/aegis-test-fixup-1.patch \
%D%/packages/patches/aegis-test-fixup-2.patch \ %D%/packages/patches/aegis-test-fixup-2.patch \
%D%/packages/patches/agg-am_c_prototype.patch \ %D%/packages/patches/agg-am_c_prototype.patch \
%D%/packages/patches/alsa-lib-add-environment-variable.patch \
%D%/packages/patches/amule-crypto-6.patch \ %D%/packages/patches/amule-crypto-6.patch \
%D%/packages/patches/ansible-wrap-program-hack.patch \ %D%/packages/patches/ansible-wrap-program-hack.patch \
%D%/packages/patches/antiword-CVE-2014-8123.patch \ %D%/packages/patches/antiword-CVE-2014-8123.patch \
@ -809,6 +808,7 @@ dist_patch_DATA = \
%D%/packages/patches/intltool-perl-compatibility.patch \ %D%/packages/patches/intltool-perl-compatibility.patch \
%D%/packages/patches/isl-0.11.1-aarch64-support.patch \ %D%/packages/patches/isl-0.11.1-aarch64-support.patch \
%D%/packages/patches/jacal-fix-texinfo.patch \ %D%/packages/patches/jacal-fix-texinfo.patch \
%D%/packages/patches/jamvm-arm.patch \
%D%/packages/patches/java-apache-ivy-port-to-latest-bouncycastle.patch \ %D%/packages/patches/java-apache-ivy-port-to-latest-bouncycastle.patch \
%D%/packages/patches/java-commons-collections-fix-java8.patch \ %D%/packages/patches/java-commons-collections-fix-java8.patch \
%D%/packages/patches/java-jeromq-fix-tests.patch \ %D%/packages/patches/java-jeromq-fix-tests.patch \
@ -937,7 +937,6 @@ dist_patch_DATA = \
%D%/packages/patches/mcrypt-CVE-2012-4426.patch \ %D%/packages/patches/mcrypt-CVE-2012-4426.patch \
%D%/packages/patches/mcrypt-CVE-2012-4527.patch \ %D%/packages/patches/mcrypt-CVE-2012-4527.patch \
%D%/packages/patches/mesa-skip-disk-cache-test.patch \ %D%/packages/patches/mesa-skip-disk-cache-test.patch \
%D%/packages/patches/mesa-wayland-egl-symbols-check-mips.patch \
%D%/packages/patches/meson-for-build-rpath.patch \ %D%/packages/patches/meson-for-build-rpath.patch \
%D%/packages/patches/metabat-fix-compilation.patch \ %D%/packages/patches/metabat-fix-compilation.patch \
%D%/packages/patches/mhash-keygen-test-segfault.patch \ %D%/packages/patches/mhash-keygen-test-segfault.patch \
@ -982,6 +981,7 @@ dist_patch_DATA = \
%D%/packages/patches/omake-fix-non-determinism.patch \ %D%/packages/patches/omake-fix-non-determinism.patch \
%D%/packages/patches/ola-readdir-r.patch \ %D%/packages/patches/ola-readdir-r.patch \
%D%/packages/patches/opencascade-oce-glibc-2.26.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/openexr-missing-samples.patch \
%D%/packages/patches/openfoam-4.1-cleanup.patch \ %D%/packages/patches/openfoam-4.1-cleanup.patch \
%D%/packages/patches/openldap-CVE-2017-9287.patch \ %D%/packages/patches/openldap-CVE-2017-9287.patch \
@ -1222,7 +1222,9 @@ dist_patch_DATA = \
%D%/packages/patches/xf86-video-geode-glibc-2.20.patch \ %D%/packages/patches/xf86-video-geode-glibc-2.20.patch \
%D%/packages/patches/xf86-video-i128-remove-mibstore.patch \ %D%/packages/patches/xf86-video-i128-remove-mibstore.patch \
%D%/packages/patches/xf86-video-mach64-glibc-2.20.patch \ %D%/packages/patches/xf86-video-mach64-glibc-2.20.patch \
%D%/packages/patches/xf86-video-savage-xorg-compat.patch \
%D%/packages/patches/xf86-video-siliconmotion-fix-ftbfs.patch \ %D%/packages/patches/xf86-video-siliconmotion-fix-ftbfs.patch \
%D%/packages/patches/xf86-video-sis-xorg-compat.patch \
%D%/packages/patches/xf86-video-tga-remove-mibstore.patch \ %D%/packages/patches/xf86-video-tga-remove-mibstore.patch \
%D%/packages/patches/xfce4-panel-plugins.patch \ %D%/packages/patches/xfce4-panel-plugins.patch \
%D%/packages/patches/xfce4-session-fix-xflock4.patch \ %D%/packages/patches/xfce4-session-fix-xflock4.patch \
@ -1230,6 +1232,7 @@ dist_patch_DATA = \
%D%/packages/patches/xinetd-fix-fd-leak.patch \ %D%/packages/patches/xinetd-fix-fd-leak.patch \
%D%/packages/patches/xinetd-CVE-2013-4342.patch \ %D%/packages/patches/xinetd-CVE-2013-4342.patch \
%D%/packages/patches/xmodmap-asprintf.patch \ %D%/packages/patches/xmodmap-asprintf.patch \
%D%/packages/patches/zathura-pdf-mupdf-link-to-jpeg-libraries.patch \
%D%/packages/patches/zathura-plugindir-environment-variable.patch \ %D%/packages/patches/zathura-plugindir-environment-variable.patch \
%D%/packages/patches/zstd-fix-stdin-list-without-tty.patch \ %D%/packages/patches/zstd-fix-stdin-list-without-tty.patch \
%D%/packages/patches/zstd-fix-stdin-list-test.patch %D%/packages/patches/zstd-fix-stdin-list-test.patch

View File

@ -10,7 +10,7 @@
;;; Copyright © 2016, 2018 Alex Vong <alexvong1995@gmail.com> ;;; Copyright © 2016, 2018 Alex Vong <alexvong1995@gmail.com>
;;; Copyright © 2017 Rene Saavedra <rennes@openmailbox.org> ;;; Copyright © 2017 Rene Saavedra <rennes@openmailbox.org>
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com> ;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2017, 2018 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2017 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2017 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
@ -1131,7 +1131,7 @@ command.")
(define-public tzdata (define-public tzdata
(package (package
(name "tzdata") (name "tzdata")
(version "2018d") (version "2018e")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
@ -1139,7 +1139,7 @@ command.")
version ".tar.gz")) version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"0m6020dnk9r40z7k36jp13fa06xip3hn0fdx3nly66jzxgffs1ji")))) "0bk97fv2i5ns42prpmlaadsswdjwv0ifi7whj2s4q6l44rcqwa3b"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:tests? #f '(#:tests? #f
@ -1189,7 +1189,7 @@ command.")
version ".tar.gz")) version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"1nd882yhsazmcfqmcqyfig3axycryl30gmizgqhqsx5dpa2lxr3x")))))) "1kpb02631s58i068mwq63xlamcv1ffj4p6y4wpb9kdl01vr0qd6a"))))))
(home-page "https://www.iana.org/time-zones") (home-page "https://www.iana.org/time-zones")
(synopsis "Database of current and historical time zones") (synopsis "Database of current and historical time zones")
(description "The Time Zone Database (often called tz or zoneinfo) (description "The Time Zone Database (often called tz or zoneinfo)
@ -1205,7 +1205,25 @@ and daylight-saving rules.")
;;; will typically be obsolete and should never be referred to by a built ;;; will typically be obsolete and should never be referred to by a built
;;; package. ;;; package.
(define-public tzdata-for-tests (define-public tzdata-for-tests
(hidden-package tzdata)) (hidden-package
(package
(inherit tzdata)
(version "2018d")
(source (origin
(method url-fetch)
(uri (string-append "https://www.iana.org/time-zones/repository"
"/releases/tzdata" version ".tar.gz"))
(sha256
(base32
"0m6020dnk9r40z7k36jp13fa06xip3hn0fdx3nly66jzxgffs1ji"))))
(inputs `(("tzcode" ,(origin
(method url-fetch)
(uri (string-append
"http://www.iana.org/time-zones/repository/releases/tzcode"
version ".tar.gz"))
(sha256
(base32
"1nd882yhsazmcfqmcqyfig3axycryl30gmizgqhqsx5dpa2lxr3x")))))))))
(define-public libiconv (define-public libiconv
(package (package

View File

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

View File

@ -76,7 +76,7 @@
(define-public nss-certs (define-public nss-certs
(package (package
(name "nss-certs") (name "nss-certs")
(version "3.36.1") (version "3.38")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (let ((version-with-underscores (uri (let ((version-with-underscores
@ -87,7 +87,7 @@
"nss-" version ".tar.gz"))) "nss-" version ".tar.gz")))
(sha256 (sha256
(base32 (base32
"1zrb49mp7cy3snnday1zv8d76h1mgppbcwxnlkqsgxlga8fl89b0")))) "0qigcy3d169cf67jzv3rbai0m6dn34vp8h2z696mz4yn10y3sr1c"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(outputs '("out")) (outputs '("out"))
(native-inputs (native-inputs

View File

@ -705,14 +705,14 @@ as a drop-in replacement of MySQL.")
(define-public postgresql (define-public postgresql
(package (package
(name "postgresql") (name "postgresql")
(version "10.3") (version "10.4")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://ftp.postgresql.org/pub/source/v" (uri (string-append "https://ftp.postgresql.org/pub/source/v"
version "/postgresql-" version ".tar.bz2")) version "/postgresql-" version ".tar.bz2"))
(sha256 (sha256
(base32 (base32
"06lkcwsf851z49zqcws5yc77s2yrbaazf2nvbk38hpp31rw6i8kf")))) "0j000bcs9w8wrllg8m7j1lxsd3n2x0yzkack5p35cmxx20iq2q0v"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:configure-flags '("--with-uuid=e2fs") `(#:configure-flags '("--with-uuid=e2fs")

View File

@ -123,14 +123,14 @@ markup) can be customized and extended by the user.")
(define-public doxygen (define-public doxygen
(package (package
(name "doxygen") (name "doxygen")
(version "1.8.13") (version "1.8.14")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "http://ftp.stack.nl/pub/users/dimitri/" (uri (string-append "http://ftp.stack.nl/pub/users/dimitri/"
name "-" version ".src.tar.gz")) name "-" version ".src.tar.gz"))
(sha256 (sha256
(base32 (base32
"0srzawqn3apzrg8hwycwrawdylmmjrndij4spw6xr1vspn3phrmg")) "0kcxymbam9jwiyjwyvwdjj0h74lbb6c467szsipzbxjyfl17wxfi"))
(patches (search-patches "doxygen-test.patch")))) (patches (search-patches "doxygen-test.patch"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(native-inputs (native-inputs

View File

@ -147,14 +147,14 @@ freedesktop.org project.")
(define-public libinput (define-public libinput
(package (package
(name "libinput") (name "libinput")
(version "1.10.3") (version "1.11.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://freedesktop.org/software/libinput/" (uri (string-append "https://freedesktop.org/software/libinput/"
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0002xk9cqzpqrlhgav1wp8nimsbp9d2w8rd8mgygczq2hjar0lhd")))) "1z7i8vk0i61npkdqwsk85wp9v4yjlvylqnyydikjqnbsrjp9abk4"))))
(build-system meson-build-system) (build-system meson-build-system)
(arguments (arguments
`(#:configure-flags '("-Ddocumentation=false"))) `(#:configure-flags '("-Ddocumentation=false")))
@ -474,7 +474,7 @@ applications, X servers (rootless or fullscreen) or other display servers.")
(define-public wayland-protocols (define-public wayland-protocols
(package (package
(name "wayland-protocols") (name "wayland-protocols")
(version "1.13") (version "1.14")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
@ -482,7 +482,7 @@ applications, X servers (rootless or fullscreen) or other display servers.")
"wayland-protocols-" version ".tar.xz")) "wayland-protocols-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0f4gqvmz53q9d8h0ilhf4z773nb4vskzx11a3d1jycym120bqn07")))) "1xknjcfhqvdi1s4iq4kk1q61fg2rar3g8q4vlqarpd324imqjj4n"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs (inputs
`(("wayland" ,wayland))) `(("wayland" ,wayland)))

View File

@ -627,7 +627,7 @@ as the 'native-search-paths' field."
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
(for-each delete-file (for-each delete-file
(find-files (string-append (assoc-ref outputs "out") "/bin") (find-files (string-append (assoc-ref outputs "out") "/bin")
".*(c\\+\\+|cpp|g\\+\\+|gcov|gcc.*)")) ".*(c\\+\\+|cpp|g\\+\\+|gcov|gcc|gcc-.*)"))
#t)))))))) #t))))))))
(define %generic-search-paths (define %generic-search-paths

View File

@ -224,7 +224,7 @@ also known as DXTn or DXTC) for Mesa.")
(define-public mesa (define-public mesa
(package (package
(name "mesa") (name "mesa")
(version "17.3.8") (version "18.1.2")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -236,10 +236,9 @@ also known as DXTn or DXTC) for Mesa.")
version "/mesa-" version ".tar.xz"))) version "/mesa-" version ".tar.xz")))
(sha256 (sha256
(base32 (base32
"1cd6a4ll5arla3kncxnw9196ak1v4rvnb098aa7lm3n4h7r9p7cg")) "1ydivzm4c2k53b65lvm11d62z140xlmd7viw63bl5cm5idjg02q7"))
(patches (patches
(search-patches "mesa-wayland-egl-symbols-check-mips.patch" (search-patches "mesa-skip-disk-cache-test.patch"))))
"mesa-skip-disk-cache-test.patch"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(propagated-inputs (propagated-inputs
`(;; The following are in the Requires.private field of gl.pc. `(;; The following are in the Requires.private field of gl.pc.
@ -260,7 +259,7 @@ also known as DXTn or DXTC) for Mesa.")
("libxvmc" ,libxvmc) ("libxvmc" ,libxvmc)
,@(match (%current-system) ,@(match (%current-system)
((or "x86_64-linux" "i686-linux") ((or "x86_64-linux" "i686-linux")
`(("llvm" ,llvm-3.9.1))) ; exactly 3.9.0 or 3.9.1 for swrast `(("llvm" ,llvm)))
(_ (_
`())) `()))
("makedepend" ,makedepend) ("makedepend" ,makedepend)
@ -276,15 +275,15 @@ also known as DXTn or DXTC) for Mesa.")
'(,@(match (%current-system) '(,@(match (%current-system)
("armhf-linux" ("armhf-linux"
;; TODO: Add etnaviv,imx when libdrm supports etnaviv. ;; TODO: Add etnaviv,imx when libdrm supports etnaviv.
'("--with-gallium-drivers=freedreno,nouveau,r300,r600,swrast,vc4,virgl")) '("--with-gallium-drivers=freedreno,nouveau,r300,r600,swrast,tegra,vc4,virgl"))
("aarch64-linux" ("aarch64-linux"
;; TODO: Fix svga driver for aarch64 and armhf. ;; TODO: Fix svga driver for aarch64 and armhf.
'("--with-gallium-drivers=freedreno,nouveau,pl111,r300,r600,swrast,vc4,virgl")) '("--with-gallium-drivers=freedreno,nouveau,pl111,r300,r600,swrast,tegra,vc4,virgl"))
(_ (_
'("--with-gallium-drivers=i915,nouveau,r300,r600,radeonsi,svga,swrast,virgl"))) '("--with-gallium-drivers=i915,nouveau,r300,r600,radeonsi,svga,swrast,virgl")))
;; Enable various optional features. TODO: opencl requires libclc, ;; Enable various optional features. TODO: opencl requires libclc,
;; omx requires libomxil-bellagio ;; omx requires libomxil-bellagio
"--with-platforms=x11,drm,wayland,surfaceless" "--with-platforms=x11,drm,surfaceless,wayland"
"--enable-glx-tls" ;Thread Local Storage, improves performance "--enable-glx-tls" ;Thread Local Storage, improves performance
;; "--enable-opencl" ;; "--enable-opencl"
;; "--enable-omx" ;; "--enable-omx"
@ -328,23 +327,15 @@ also known as DXTn or DXTC) for Mesa.")
(add-after (add-after
'unpack 'patch-create_test_cases 'unpack 'patch-create_test_cases
(lambda _ (lambda _
(substitute* "src/compiler/glsl/tests/lower_jumps/create_test_cases.py"
(("/usr/bin/env bash") (which "bash")))
(substitute* "src/intel/genxml/gen_pack_header.py" (substitute* "src/intel/genxml/gen_pack_header.py"
(("/usr/bin/env python2") (which "python"))) (("/usr/bin/env python2") (which "python")))
#t)) #t))
(add-before (add-before
'build 'fix-dlopen-libnames 'build 'fix-dlopen-libnames
(lambda* (#:key inputs outputs #:allow-other-keys) (lambda* (#:key inputs outputs #:allow-other-keys)
(let ((s2tc (assoc-ref inputs "s2tc")) (let ((out (assoc-ref outputs "out")))
(out (assoc-ref outputs "out")))
;; Remain agnostic to .so.X.Y.Z versions while doing ;; Remain agnostic to .so.X.Y.Z versions while doing
;; the substitutions so we're future-safe. ;; the substitutions so we're future-safe.
(substitute*
'("src/gallium/auxiliary/util/u_format_s3tc.c"
"src/mesa/main/texcompress_s3tc.c")
(("\"libtxc_dxtn\\.so")
(string-append "\"" s2tc "/lib/libtxc_dxtn.so")))
(substitute* "src/glx/dri_common.c" (substitute* "src/glx/dri_common.c"
(("dlopen\\(\"libGL\\.so") (("dlopen\\(\"libGL\\.so")
(string-append "dlopen(\"" out "/lib/libGL.so"))) (string-append "dlopen(\"" out "/lib/libGL.so")))
@ -559,7 +550,7 @@ OpenGL graphics API.")
(define-public libepoxy (define-public libepoxy
(package (package
(name "libepoxy") (name "libepoxy")
(version "1.5.0") (version "1.5.2")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
@ -567,7 +558,7 @@ OpenGL graphics API.")
version "/libepoxy-" version ".tar.xz")) version "/libepoxy-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1md58amxyp34yjnw4xa185hw5jm0hnb2xnhdc28zdsx6k19rk52c")))) "1n57xj5i6giw4mp5s59w1m9bm33sd6gjg7r00dzzvcwya6326mm9"))))
(arguments (arguments
`(#:phases `(#:phases
(modify-phases %standard-phases (modify-phases %standard-phases

View File

@ -6322,7 +6322,16 @@ fit the GNOME desktop.")
(base32 (base32
"007k2bq8iplg4psdpz074r5d4zxvn4s95qym4rw9hs6giljbrf0n")))) "007k2bq8iplg4psdpz074r5d4zxvn4s95qym4rw9hs6giljbrf0n"))))
(build-system meson-build-system) (build-system meson-build-system)
(arguments '(#:glib-or-gtk? #t)) (arguments '(#:glib-or-gtk? #t
#:phases (modify-phases %standard-phases
(add-after 'unpack 'patch-install-script
(lambda _
;; This script attempts to compile glib schemas
;; and create an empty MIME database. We do
;; that elsewhere, so prevent it from running.
(substitute* "build-aux/post-install.sh"
(("\\[ -z \"\\$DESTDIR\" \\]") "false"))
#t)))))
(native-inputs (native-inputs
`(("glib:bin" ,glib "bin") `(("glib:bin" ,glib "bin")
("gobject-introspection" ,gobject-introspection) ("gobject-introspection" ,gobject-introspection)

View File

@ -291,7 +291,7 @@ in the Mozilla clients.")
(define-public nss (define-public nss
(package (package
(name "nss") (name "nss")
(version "3.36.1") (version "3.38")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (let ((version-with-underscores (uri (let ((version-with-underscores
@ -302,7 +302,7 @@ in the Mozilla clients.")
"nss-" version ".tar.gz"))) "nss-" version ".tar.gz")))
(sha256 (sha256
(base32 (base32
"1zrb49mp7cy3snnday1zv8d76h1mgppbcwxnlkqsgxlga8fl89b0")) "0qigcy3d169cf67jzv3rbai0m6dn34vp8h2z696mz4yn10y3sr1c"))
;; Create nss.pc and nss-config. ;; Create nss.pc and nss-config.
(patches (search-patches "nss-pkgconfig.patch" (patches (search-patches "nss-pkgconfig.patch"
"nss-increase-test-timeout.patch")))) "nss-increase-test-timeout.patch"))))

View File

@ -42,6 +42,7 @@
#:use-module (guix download) #:use-module (guix download)
#:use-module (guix git-download) #:use-module (guix git-download)
#:use-module (guix build-system gnu) #:use-module (guix build-system gnu)
#:use-module (guix build-system meson)
#:use-module (guix build-system perl) #:use-module (guix build-system perl)
#:use-module (guix build-system python) #:use-module (guix build-system python)
#:use-module (guix build-system waf) #:use-module (guix build-system waf)
@ -670,7 +671,7 @@ application suites.")
(name "gtk+") (name "gtk+")
;; NOTE: When updating the version of 'gtk+', the hash of 'mate-themes' in ;; NOTE: When updating the version of 'gtk+', the hash of 'mate-themes' in
;; mate.scm will also need to be updated. ;; mate.scm will also need to be updated.
(version "3.22.29") (version "3.22.30")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/" (uri (string-append "mirror://gnome/sources/" name "/"
@ -678,7 +679,7 @@ application suites.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1y5vzdbgww9l7xcrg13azff2rs94kggkywmpcsh39h7w76wn8zd0")) "0rv5k8fyi2i19k4zncai6vf429s6zy3kncr8vb6f3m034z0sb951"))
(patches (search-patches "gtk3-respect-GUIX_GTK3_PATH.patch" (patches (search-patches "gtk3-respect-GUIX_GTK3_PATH.patch"
"gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch")))) "gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch"))))
(outputs '("out" "bin" "doc")) (outputs '("out" "bin" "doc"))
@ -1362,15 +1363,15 @@ and routines to assist in editing internationalized text.")
(define-public girara (define-public girara
(package (package
(name "girara") (name "girara")
(version "0.2.8") (version "0.2.9")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (uri
(string-append "https://pwmt.org/projects/girara/download/girara-" (string-append "https://pwmt.org/projects/girara/download/girara-"
version ".tar.gz")) version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"18wss3sak3djip090v2vdbvq1mvkwcspfswc87zbvv3magihan98")))) "0lkxrfna818wkkr2f6mdzf15y5z8xl1b9592ylmzjbqsqya3w7x8"))))
(native-inputs `(("pkg-config" ,pkg-config) (native-inputs `(("pkg-config" ,pkg-config)
("check" ,check) ("check" ,check)
("gettext" ,gettext-minimal) ("gettext" ,gettext-minimal)
@ -1379,13 +1380,7 @@ and routines to assist in editing internationalized text.")
;; Listed in 'Requires.private' of 'girara.pc'. ;; Listed in 'Requires.private' of 'girara.pc'.
(propagated-inputs `(("gtk+" ,gtk+))) (propagated-inputs `(("gtk+" ,gtk+)))
(arguments (arguments
`(#:make-flags `(#:phases (modify-phases %standard-phases
`(,(string-append "PREFIX=" (assoc-ref %outputs "out"))
"COLOR=0" "CC=gcc")
#:test-target "test"
#:disallowed-references (,xorg-server-1.19.3)
#:phases (modify-phases %standard-phases
(delete 'configure)
(add-before 'check 'start-xserver (add-before 'check 'start-xserver
;; Tests require a running X server. ;; Tests require a running X server.
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
@ -1401,7 +1396,7 @@ and routines to assist in editing internationalized text.")
(setenv "DBUS_FATAL_WARNINGS" "0") (setenv "DBUS_FATAL_WARNINGS" "0")
(zero? (system (string-append xorg-server "/bin/Xvfb " (zero? (system (string-append xorg-server "/bin/Xvfb "
display " &"))))))))) display " &")))))))))
(build-system gnu-build-system) (build-system meson-build-system)
(home-page "https://pwmt.org/projects/girara/") (home-page "https://pwmt.org/projects/girara/")
(synopsis "Library for minimalistic gtk+3 user interfaces") (synopsis "Library for minimalistic gtk+3 user interfaces")
(description "Girara is a library that implements a user interface that (description "Girara is a library that implements a user interface that

View File

@ -9,6 +9,7 @@
;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Gábor Boskovits <boskovits@gmail.com> ;;; Copyright © 2018 Gábor Boskovits <boskovits@gmail.com>
;;; Copyright © 2018 Chris Marusich <cmmarusich@gmail.com> ;;; Copyright © 2018 Chris Marusich <cmmarusich@gmail.com>
;;; Copyright © 2018 Efraim Flashner <efraim@flashner.co.il>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -150,7 +151,7 @@ and binary format defined in The Java Virtual Machine Specification.")
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-after 'install 'install-data (add-after 'install 'install-data
(lambda _ (zero? (system* "make" "install-data"))))))) (lambda _ (invoke "make" "install-data"))))))
(native-inputs (native-inputs
`(("jikes" ,jikes) `(("jikes" ,jikes)
("fastjar" ,fastjar) ("fastjar" ,fastjar)
@ -175,6 +176,7 @@ language.")
(uri (string-append "mirror://sourceforge/jamvm/jamvm/" (uri (string-append "mirror://sourceforge/jamvm/jamvm/"
"JamVM%20" version "/jamvm-" "JamVM%20" version "/jamvm-"
version ".tar.gz")) version ".tar.gz"))
(patches (search-patches "jamvm-arm.patch"))
(sha256 (sha256
(base32 (base32
"06lhi03l3b0h48pc7x58bk9my2nrcf1flpmglvys3wyad6yraf36")))) "06lhi03l3b0h48pc7x58bk9my2nrcf1flpmglvys3wyad6yraf36"))))
@ -212,7 +214,13 @@ JNI.")
"1cg0lga887qz5iizh6mlkxp01lciymrhmp7wzxpl6zpnldxmzrjx")))) "1cg0lga887qz5iizh6mlkxp01lciymrhmp7wzxpl6zpnldxmzrjx"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:tests? #f ; no "check" target `(#:imported-modules ((guix build syscalls)
,@%gnu-build-system-modules)
#:modules ((srfi srfi-1)
(guix build gnu-build-system)
(guix build utils)
(guix build syscalls))
#:tests? #f ; no "check" target
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(delete 'bootstrap) (delete 'bootstrap)
@ -245,19 +253,54 @@ JNI.")
;; Without these JamVM options the build may freeze. ;; Without these JamVM options the build may freeze.
(substitute* "bootstrap.sh" (substitute* "bootstrap.sh"
(("^\"\\$\\{JAVACMD\\}\" " m) (("^\"\\$\\{JAVACMD\\}\" " m)
(string-append m "-Xnocompact -Xnoinlining "))) ,@(if (string-prefix? "armhf" (or (%current-system)
(%current-target-system)))
`((string-append m "-Xnocompact "))
`((string-append m "-Xnocompact -Xnoinlining ")))))
;; Disable tests because we are bootstrapping and thus don't have ;; Disable tests because we are bootstrapping and thus don't have
;; any of the dependencies required to build and run the tests. ;; any of the dependencies required to build and run the tests.
(substitute* "build.xml" (substitute* "build.xml"
(("depends=\"jars,test-jar\"") "depends=\"jars\"")) (("depends=\"jars,test-jar\"") "depends=\"jars\""))
(zero? (system* "bash" "bootstrap.sh" (invoke "bash" "bootstrap.sh"
(string-append "-Ddist.dir=" (string-append "-Ddist.dir="
(assoc-ref %outputs "out")))))) (assoc-ref %outputs "out")))))
(add-after 'build 'strip-jar-timestamps ;based on ant-build-system
(lambda* (#:key outputs #:allow-other-keys)
(define (repack-archive jar)
(let* ((dir (mkdtemp! "jar-contents.XXXXXX"))
(manifest (string-append dir "/META-INF/MANIFESTS.MF")))
(with-directory-excursion dir
(invoke "unzip" jar))
(delete-file jar)
;; XXX: copied from (gnu build install)
(for-each (lambda (file)
(let ((s (lstat file)))
(unless (eq? (stat:type s) 'symlink)
(utime file 0 0 0 0))))
(find-files dir #:directories? #t))
;; It is important that the manifest appears first.
(with-directory-excursion dir
(let* ((files (find-files "." ".*" #:directories? #t))
;; To ensure that the reference scanner can
;; detect all store references in the jars
;; we disable compression with the "-0" option.
(command (if (file-exists? manifest)
`("zip" "-0" "-X" ,jar ,manifest
,@files)
`("zip" "-0" "-X" ,jar ,@files))))
(apply invoke command)))))
(for-each repack-archive
(find-files
(string-append (assoc-ref %outputs "out") "/lib")
"\\.jar$"))
#t))
(delete 'install)))) (delete 'install))))
(native-inputs (native-inputs
`(("jikes" ,jikes) `(("jikes" ,jikes)
("jamvm" ,jamvm-1-bootstrap))) ("jamvm" ,jamvm-1-bootstrap)
("unzip" ,unzip)
("zip", zip)))
(home-page "http://ant.apache.org") (home-page "http://ant.apache.org")
(synopsis "Build tool for Java") (synopsis "Build tool for Java")
(description (description
@ -316,10 +359,10 @@ build process and its dependencies, whereas Make uses Makefile format.")
Main-Class: org.eclipse.jdt.internal.compiler.batch.Main\n"))) Main-Class: org.eclipse.jdt.internal.compiler.batch.Main\n")))
;; Compile it all! ;; Compile it all!
(and (zero? (apply system* "jikes" (and (apply invoke "jikes"
(find-files "." "\\.java$"))) (find-files "." "\\.java$"))
(zero? (system* "fastjar" "cvfm" (invoke "fastjar" "cvfm"
"ecj-bootstrap.jar" "manifest" "."))))) "ecj-bootstrap.jar" "manifest" "."))))
(replace 'install (replace 'install
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
(let ((share (string-append (assoc-ref outputs "out") (let ((share (string-append (assoc-ref outputs "out")
@ -394,7 +437,6 @@ requirement for all GNU Classpath releases after version 0.93.")
args defaults)) args defaults))
(apply system* ,java (apply system* ,java
(append (append
(list "-Xnocompact" "-Xnoinlining")
;; Remove "-J" prefix ;; Remove "-J" prefix
(map (cut string-drop <> 2) vm-args) (map (cut string-drop <> 2) vm-args)
'("org.eclipse.jdt.internal.compiler.batch.Main") '("org.eclipse.jdt.internal.compiler.batch.Main")
@ -453,7 +495,7 @@ the standard javac executable.")))
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-after 'install 'install-data (add-after 'install 'install-data
(lambda _ (zero? (system* "make" "install-data"))))))) (lambda _ (invoke "make" "install-data"))))))
(native-inputs (native-inputs
`(("ecj-bootstrap" ,ecj-bootstrap) `(("ecj-bootstrap" ,ecj-bootstrap)
("ecj-javac-wrapper" ,ecj-javac-wrapper) ("ecj-javac-wrapper" ,ecj-javac-wrapper)
@ -484,12 +526,20 @@ the standard javac executable.")))
(for-each (lambda (tool) (for-each (lambda (tool)
(with-output-to-file (string-append bin tool) (with-output-to-file (string-append bin tool)
(lambda _ (lambda _
(format #t "#!~a/bin/sh ,@(if (string-prefix? "armhf" (or (%current-system)
(%current-target-system)))
`((format #t "#!~a/bin/sh
~a/bin/jamvm -Xnocompact -classpath ~a/share/classpath/tools.zip \
gnu.classpath.tools.~a.~a $@"
bash jamvm classpath tool
(if (string=? "native2ascii" tool)
"Native2ASCII" "Main")))
`((format #t "#!~a/bin/sh
~a/bin/jamvm -Xnocompact -Xnoinlining -classpath ~a/share/classpath/tools.zip \ ~a/bin/jamvm -Xnocompact -Xnoinlining -classpath ~a/share/classpath/tools.zip \
gnu.classpath.tools.~a.~a $@" gnu.classpath.tools.~a.~a $@"
bash jamvm classpath tool bash jamvm classpath tool
(if (string=? "native2ascii" tool) (if (string=? "native2ascii" tool)
"Native2ASCII" "Main")))) "Native2ASCII" "Main"))))))
(chmod (string-append bin tool) #o755)) (chmod (string-append bin tool) #o755))
(list "javah" (list "javah"
"rmic" "rmic"
@ -562,7 +612,7 @@ machine.")))
(("@Override") "")) (("@Override") ""))
#t)) #t))
(add-after 'install 'install-data (add-after 'install 'install-data
(lambda _ (zero? (system* "make" "install-data"))))))) (lambda _ (invoke "make" "install-data"))))))
(native-inputs (native-inputs
`(("autoconf" ,autoconf) `(("autoconf" ,autoconf)
("automake" ,automake) ("automake" ,automake)
@ -668,37 +718,35 @@ machine.")))
(modify-phases %standard-phases (modify-phases %standard-phases
(replace 'unpack (replace 'unpack
(lambda* (#:key source inputs #:allow-other-keys) (lambda* (#:key source inputs #:allow-other-keys)
(and (zero? (system* "tar" "xvf" source)) (invoke "tar" "xvf" source)
(begin (chdir (string-append "icedtea6-" ,version))
(chdir (string-append "icedtea6-" ,version)) (mkdir "openjdk")
(mkdir "openjdk") (copy-recursively (assoc-ref inputs "openjdk-src") "openjdk")
(copy-recursively (assoc-ref inputs "openjdk-src") "openjdk") ;; The convenient OpenJDK source bundle is no longer
;; The convenient OpenJDK source bundle is no longer ;; available for download, so we have to take the sources
;; available for download, so we have to take the sources ;; from the Mercurial repositories and change the Makefile
;; from the Mercurial repositories and change the Makefile ;; to avoid tests for the OpenJDK zip archive.
;; to avoid tests for the OpenJDK zip archive. (with-directory-excursion "openjdk"
(with-directory-excursion "openjdk" (for-each (lambda (part)
(for-each (lambda (part) (mkdir part)
(mkdir part) (copy-recursively
(copy-recursively (assoc-ref inputs
(assoc-ref inputs (string-append part "-src"))
(string-append part "-src")) part))
part)) '("jdk" "corba"
'("jdk" "corba" "langtools" "jaxp" "jaxws")))
"langtools" "jaxp" "jaxws"))) (with-directory-excursion "openjdk"
(with-directory-excursion "openjdk" (invoke "tar" "xvf" (assoc-ref inputs "hotspot-src"))
(invoke "tar" "xvf" (assoc-ref inputs "hotspot-src")) (rename-file "hg-checkout" "hotspot"))
(rename-file "hg-checkout" "hotspot")) (substitute* "Makefile.in"
(substitute* "Makefile.in" (("echo \"ERROR: No up-to-date OpenJDK zip available\"; exit -1;")
(("echo \"ERROR: No up-to-date OpenJDK zip available\"; exit -1;") "echo \"trust me\";")
"echo \"trust me\";") ;; The contents of the bootstrap directory must be
;; The contents of the bootstrap directory must be ;; writeable but when copying from the store they are
;; writeable but when copying from the store they are ;; not.
;; not. (("mkdir -p lib/rt" line)
(("mkdir -p lib/rt" line) (string-append line "; chmod -R u+w $(BOOT_DIR)")))
(string-append line "; chmod -R u+w $(BOOT_DIR)"))) (invoke "chmod" "-R" "u+w" "openjdk")))
(zero? (system* "chmod" "-R" "u+w" "openjdk"))
#t))))
(add-after 'unpack 'use-classpath (add-after 'unpack 'use-classpath
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
(let ((jvmlib (assoc-ref inputs "classpath")) (let ((jvmlib (assoc-ref inputs "classpath"))
@ -1036,23 +1084,22 @@ bootstrapping purposes.")
(let ((dir (or dir (let ((dir (or dir
(string-drop-right name 5)))) (string-drop-right name 5))))
(mkdir dir) (mkdir dir)
(zero? (system* "tar" "xvf" (invoke "tar" "xvf"
(assoc-ref inputs name) (assoc-ref inputs name)
"-C" dir "-C" dir
"--strip-components=1")))))) "--strip-components=1")))))
(mkdir target) (mkdir target)
(and (invoke "tar" "xvf" source
(zero? (system* "tar" "xvf" source "-C" target "--strip-components=1")
"-C" target "--strip-components=1")) (chdir target)
(chdir target) (unpack "openjdk-src" "openjdk.src")
(unpack "openjdk-src" "openjdk.src") (with-directory-excursion "openjdk.src"
(with-directory-excursion "openjdk.src" (for-each unpack
(for-each unpack (filter (cut string-suffix? "-drop" <>)
(filter (cut string-suffix? "-drop" <>) (map (match-lambda
(map (match-lambda ((name . _) name))
((name . _) name)) inputs))))
inputs)))) #t)))
#t))))
(add-after 'unpack 'fix-x11-extension-include-path (add-after 'unpack 'fix-x11-extension-include-path
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
(substitute* "openjdk.src/jdk/make/sun/awt/mawt.gmk" (substitute* "openjdk.src/jdk/make/sun/awt/mawt.gmk"
@ -1277,17 +1324,19 @@ bootstrapping purposes.")
(let ((line (read-line port))) (let ((line (read-line port)))
(cond (cond
((eof-object? line) #t) ((eof-object? line) #t)
((regexp-exec error-pattern line) #f) ((regexp-exec error-pattern line)
(error "test failed"))
(else (loop))))))) (else (loop)))))))
(run-test (lambda (test) (run-test (lambda (test)
(system* "make" test) (invoke "make" test)
(call-with-input-file (call-with-input-file
(string-append "test/" test ".log") (string-append "test/" test ".log")
checker)))) checker))))
(or #t ; skip tests (when #f ; skip tests
(and (run-test "check-hotspot") (run-test "check-hotspot")
(run-test "check-langtools") (run-test "check-langtools")
(run-test "check-jdk")))))) (run-test "check-jdk"))
#t)))
(replace 'install (replace 'install
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
(let ((doc (string-append (assoc-ref outputs "doc") (let ((doc (string-append (assoc-ref outputs "doc")
@ -1665,11 +1714,13 @@ new Date();"))
;; result in the tests to be run. ;; result in the tests to be run.
(substitute* "build.xml" (substitute* "build.xml"
(("depends=\"jars,test-jar\"") "depends=\"jars\"")) (("depends=\"jars,test-jar\"") "depends=\"jars\""))
(zero? (system* "bash" "bootstrap.sh" (invoke "bash" "bootstrap.sh"
(string-append "-Ddist.dir=" (string-append "-Ddist.dir="
(assoc-ref outputs "out")))))))))) (assoc-ref outputs "out")))))))))
(native-inputs (native-inputs
`(("jdk" ,icedtea-8 "jdk"))))) `(("jdk" ,icedtea-8 "jdk")
("zip" ,zip)
("unzip" ,unzip)))))
;; The 1.9.x series is the last that can be built with GCJ. The 1.10.x series ;; The 1.9.x series is the last that can be built with GCJ. The 1.10.x series
;; requires Java 8. ;; requires Java 8.
@ -1684,7 +1735,9 @@ new Date();"))
(base32 (base32
"1k28mka0m3isy9yr8gz84kz1f3f879rwaxrd44vdn9xbfwvwk86n")))) "1k28mka0m3isy9yr8gz84kz1f3f879rwaxrd44vdn9xbfwvwk86n"))))
(native-inputs (native-inputs
`(("jdk" ,icedtea-7 "jdk"))))) `(("jdk" ,icedtea-7 "jdk")
("zip" ,zip)
("unzip" ,unzip)))))
(define-public ant-apache-bcel (define-public ant-apache-bcel
(package (package
@ -1793,14 +1846,13 @@ new Date();"))
(lambda (name) (lambda (name)
(mkdir-p name) (mkdir-p name)
(with-directory-excursion name (with-directory-excursion name
(or (zero? (system* "tar" (invoke "tar"
;; Use xz for repacked tarball. ;; Use xz for repacked tarball.
"--xz" "--xz"
"--extract" "--extract"
"--verbose" "--verbose"
"--file" (assoc-ref inputs name) "--file" (assoc-ref inputs name)
"--strip-components=1")) "--strip-components=1"))
(error "failed to unpack tarball" name)))
(copy-recursively (string-append name "/src/main/clojure/") (copy-recursively (string-append name "/src/main/clojure/")
"src/clj/")) "src/clj/"))
'("core-specs-alpha-src" '("core-specs-alpha-src"
@ -1813,7 +1865,7 @@ new Date();"))
;; The javadoc target is not built by default. ;; The javadoc target is not built by default.
(add-after 'build 'build-doc (add-after 'build 'build-doc
(lambda _ (lambda _
(zero? (system* "ant" "javadoc")))) (invoke "ant" "javadoc")))
;; Needed since no install target is provided. ;; Needed since no install target is provided.
(replace 'install (replace 'install
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
@ -1975,7 +2027,8 @@ debugging, etc.")
(lambda (in out) (lambda (in out)
(display "Manifest-Version: 1.0 (display "Manifest-Version: 1.0
Main-Class: org.eclipse.jdt.internal.compiler.batch.Main\n" Main-Class: org.eclipse.jdt.internal.compiler.batch.Main\n"
out))))) out)))
#t))
(replace 'install (install-jars "."))))) (replace 'install (install-jars ".")))))
(home-page "https://eclipse.org") (home-page "https://eclipse.org")
(synopsis "Eclipse Java development tools core batch compiler") (synopsis "Eclipse Java development tools core batch compiler")
@ -2008,7 +2061,8 @@ Main-Class: org.eclipse.jdt.internal.compiler.batch.Main\n"
(lambda (in out) (lambda (in out)
(dump-port in out) (dump-port in out)
(display "Main-Class: org.eclipse.jdt.internal.compiler.batch.Main\n" (display "Main-Class: org.eclipse.jdt.internal.compiler.batch.Main\n"
out))))) out)))
#t))
(replace 'install (install-jars "."))))) (replace 'install (install-jars ".")))))
(native-inputs (native-inputs
`(("unzip" ,unzip))))) `(("unzip" ,unzip)))))
@ -2475,7 +2529,7 @@ HDF5 files, building on the libraries provided by the HDF Group.")
(modify-phases %standard-phases (modify-phases %standard-phases
(replace 'install (replace 'install
(lambda* (#:key make-flags #:allow-other-keys) (lambda* (#:key make-flags #:allow-other-keys)
(zero? (apply system* `("ant" "dist" ,@make-flags)))))))) (apply invoke `("ant" "dist" ,@make-flags)))))))
(home-page "https://www.gnu.org/software/classpathx/") (home-page "https://www.gnu.org/software/classpathx/")
(synopsis "Java servlet API implementation") (synopsis "Java servlet API implementation")
(description "This is the GNU servlet API distribution, part of the (description "This is the GNU servlet API distribution, part of the
@ -2517,11 +2571,11 @@ API and version 2.1 of the Java ServerPages API.")
(modify-phases %standard-phases (modify-phases %standard-phases
(replace 'unpack (replace 'unpack
(lambda* (#:key source #:allow-other-keys) (lambda* (#:key source #:allow-other-keys)
(and (mkdir "swt") (mkdir "swt")
(zero? (system* "unzip" source "-d" "swt")) (invoke "unzip" source "-d" "swt")
(chdir "swt") (chdir "swt")
(mkdir "src") (mkdir "src")
(zero? (system* "unzip" "src.zip" "-d" "src"))))) (invoke "unzip" "src.zip" "-d" "src")))
;; The classpath contains invalid icecat jars. Since we don't need ;; The classpath contains invalid icecat jars. Since we don't need
;; anything other than the JDK on the classpath, we can simply unset ;; anything other than the JDK on the classpath, we can simply unset
;; it. ;; it.
@ -2536,7 +2590,7 @@ API and version 2.1 of the Java ServerPages API.")
(mkdir-p lib) (mkdir-p lib)
(setenv "OUTPUT_DIR" lib) (setenv "OUTPUT_DIR" lib)
(with-directory-excursion "src" (with-directory-excursion "src"
(zero? (system* "bash" "build.sh")))))) (invoke "bash" "build.sh")))))
(add-after 'install 'install-native (add-after 'install 'install-native
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
(let ((lib (string-append (assoc-ref outputs "out") "/lib"))) (let ((lib (string-append (assoc-ref outputs "out") "/lib")))
@ -2622,7 +2676,7 @@ decompression and random access decompression have been fully implemented.")
(lambda* (#:key source #:allow-other-keys) (lambda* (#:key source #:allow-other-keys)
(mkdir "src") (mkdir "src")
(with-directory-excursion "src" (with-directory-excursion "src"
(zero? (system* "jar" "-xf" source))))) (invoke "jar" "-xf" source))))
;; At this point we don't have junit, so we must remove the API ;; At this point we don't have junit, so we must remove the API
;; tests. ;; tests.
(add-after 'unpack 'delete-tests (add-after 'unpack 'delete-tests
@ -2764,7 +2818,8 @@ private Method[] getSortedMethods() {
return _allMethods; return _allMethods;
} }
private Method[] allMethods = getSortedMethods();"))))) private Method[] allMethods = getSortedMethods();")))
#t))
(add-before 'build 'do-not-use-bundled-qdox (add-before 'build 'do-not-use-bundled-qdox
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
(substitute* "build.xml" (substitute* "build.xml"
@ -3055,7 +3110,8 @@ reusing it in maven.")
(lambda _ (lambda _
;; Requires an older version of plexus container ;; Requires an older version of plexus container
(delete-file (delete-file
"src/test/java/org/codehaus/plexus/archiver/DuplicateFilesTest.java"))) "src/test/java/org/codehaus/plexus/archiver/DuplicateFilesTest.java")
#t))
(add-before 'build 'copy-resources (add-before 'build 'copy-resources
(lambda _ (lambda _
(mkdir-p "build/classes/META-INF/plexus") (mkdir-p "build/classes/META-INF/plexus")
@ -3248,15 +3304,15 @@ Compiler component.")))
(add-before 'build 'generate-models (add-before 'build 'generate-models
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
(define (modello-single-mode file version mode) (define (modello-single-mode file version mode)
(zero? (system* "java" (invoke "java"
"org.codehaus.modello.ModelloCli" "org.codehaus.modello.ModelloCli"
file mode "src/main/java" version file mode "src/main/java" version
"false" "true"))) "false" "true"))
(let ((file "src/main/mdo/settings-security.mdo")) (let ((file "src/main/mdo/settings-security.mdo"))
(and
(modello-single-mode file "1.0.0" "java") (modello-single-mode file "1.0.0" "java")
(modello-single-mode file "1.0.0" "xpp3-reader") (modello-single-mode file "1.0.0" "xpp3-reader")
(modello-single-mode file "1.0.0" "xpp3-writer"))))) (modello-single-mode file "1.0.0" "xpp3-writer"))
#t))
(add-before 'build 'generate-components.xml (add-before 'build 'generate-components.xml
(lambda _ (lambda _
(mkdir-p "build/classes/META-INF/plexus") (mkdir-p "build/classes/META-INF/plexus")
@ -3285,10 +3341,12 @@ Compiler component.")))
</configuration>\n </configuration>\n
</component>\n </component>\n
</components>\n </components>\n
</component-set>\n"))))) </component-set>\n")))
#t))
(add-before 'check 'fix-paths (add-before 'check 'fix-paths
(lambda _ (lambda _
(copy-recursively "src/test/resources" "target")))))) (copy-recursively "src/test/resources" "target")
#t)))))
(inputs (inputs
`(("java-plexus-cipher" ,java-plexus-cipher))) `(("java-plexus-cipher" ,java-plexus-cipher)))
(native-inputs (native-inputs
@ -3511,7 +3569,8 @@ XSD and documentation.")
(with-directory-excursion "modello-plugins/modello-plugin-xml/src/test" (with-directory-excursion "modello-plugins/modello-plugin-xml/src/test"
(substitute* (substitute*
"java/org/codehaus/modello/plugins/xml/XmlModelloPluginTest.java" "java/org/codehaus/modello/plugins/xml/XmlModelloPluginTest.java"
(("src/test") "modello-plugins/modello-plugin-xml/src/test")))))))) (("src/test") "modello-plugins/modello-plugin-xml/src/test")))
#t)))))
(inputs (inputs
`(("java-modello-core" ,java-modello-core) `(("java-modello-core" ,java-modello-core)
("java-modello-plugins-java" ,java-modello-plugins-java) ("java-modello-plugins-java" ,java-modello-plugins-java)
@ -3606,9 +3665,9 @@ on the XPP3 API (XML Pull Parser).")))
;; We cannot use the "jar" target because it depends on a couple ;; We cannot use the "jar" target because it depends on a couple
;; of unpackaged, complicated tools. ;; of unpackaged, complicated tools.
(mkdir "dist") (mkdir "dist")
(zero? (system* "jar" (invoke "jar"
"-cf" (string-append "dist/asm-" ,version ".jar") "-cf" (string-append "dist/asm-" ,version ".jar")
"-C" "output/build/tmp" ".")))) "-C" "output/build/tmp" ".")))
(replace 'install (replace 'install
(install-jars "dist"))))) (install-jars "dist")))))
(native-inputs (native-inputs
@ -4105,7 +4164,8 @@ are many features, including:
(mkdir-p "build/conf") (mkdir-p "build/conf")
(call-with-output-file "build/conf/MANIFEST.MF" (call-with-output-file "build/conf/MANIFEST.MF"
(lambda (file) (lambda (file)
(format file "Manifest-Version: 1.0\n"))))) (format file "Manifest-Version: 1.0\n")))
#t))
(replace 'install (replace 'install
(install-jars "build")))))))) (install-jars "build"))))))))
@ -4351,7 +4411,8 @@ in the @code{java.lang} package. The following classes are included:
(property (@ (name "tests.dir") (value "src/org/apache/bsf/test"))) (property (@ (name "tests.dir") (value "src/org/apache/bsf/test")))
(property (@ (name "build.tests") (value "build/test-classes"))) (property (@ (name "build.tests") (value "build/test-classes")))
(property (@ (name "build.dest") (value "build/classes")))) (property (@ (name "build.dest") (value "build/classes"))))
port))))) port)))
#t))
(replace 'install (install-jars "build"))))) (replace 'install (install-jars "build")))))
(native-inputs (native-inputs
`(("java-junit" ,java-junit))) `(("java-junit" ,java-junit)))
@ -5798,8 +5859,8 @@ more efficient storage-wise than an uncompressed bitmap (as implemented in the
;; pom.xml ignores these files in the jar creation process. If we don't, ;; pom.xml ignores these files in the jar creation process. If we don't,
;; we get the error "This code should have never made it into slf4j-api.jar" ;; we get the error "This code should have never made it into slf4j-api.jar"
(delete-file-recursively "build/classes/org/slf4j/impl") (delete-file-recursively "build/classes/org/slf4j/impl")
(zero? (system* "jar" "-cf" "build/jar/slf4j-api.jar" "-C" (invoke "jar" "-cf" "build/jar/slf4j-api.jar" "-C"
"build/classes" ".")))) "build/classes" ".")))
(add-before 'check 'dont-test-abstract-classes (add-before 'check 'dont-test-abstract-classes
(lambda _ (lambda _
;; abstract classes are not meant to be run with junit ;; abstract classes are not meant to be run with junit
@ -5807,7 +5868,8 @@ more efficient storage-wise than an uncompressed bitmap (as implemented in the
(("<include name=\"\\*\\*/\\*Test.java\" />") (("<include name=\"\\*\\*/\\*Test.java\" />")
(string-append "<include name=\"**/*Test.java\" />" (string-append "<include name=\"**/*Test.java\" />"
"<exclude name=\"**/MultithreadedInitializationTest" "<exclude name=\"**/MultithreadedInitializationTest"
".java\" />")))))))) ".java\" />")))
#t)))))
(inputs (inputs
`(("java-junit" ,java-junit) `(("java-junit" ,java-junit)
("java-hamcrest-core" ,java-hamcrest-core))) ("java-hamcrest-core" ,java-hamcrest-core)))
@ -5848,10 +5910,9 @@ time.")
(setenv "CLASSPATH" (setenv "CLASSPATH"
(string-append (getcwd) ":" (getenv "CLASSPATH"))) (string-append (getcwd) ":" (getenv "CLASSPATH")))
;; ... and build test helper classes here: ;; ... and build test helper classes here:
(zero? (apply invoke
(apply system* `("javac" "-d" "."
`("javac" "-d" "." ,@(find-files "slf4j-api/src/test" ".*\\.java"))))))))
,@(find-files "slf4j-api/src/test" ".*\\.java")))))))))
(inputs (inputs
`(("java-junit" ,java-junit) `(("java-junit" ,java-junit)
("java-hamcrest-core" ,java-hamcrest-core) ("java-hamcrest-core" ,java-hamcrest-core)
@ -5950,11 +6011,12 @@ tree walking, and translation.")
(add-before 'build 'generate-grammar (add-before 'build 'generate-grammar
(lambda _ (lambda _
(with-directory-excursion "src/org/antlr/stringtemplate/language/" (with-directory-excursion "src/org/antlr/stringtemplate/language/"
(every (lambda (file) (for-each (lambda (file)
(format #t "~a\n" file) (format #t "~a\n" file)
(zero? (system* "antlr" file))) (invoke "antlr" file))
'("template.g" "angle.bracket.template.g" "action.g" '("template.g" "angle.bracket.template.g" "action.g"
"eval.g" "group.g" "interface.g")))))))) "eval.g" "group.g" "interface.g")))
#t)))))
(native-inputs (native-inputs
`(("antlr" ,antlr2) `(("antlr" ,antlr2)
("java-junit" ,java-junit))) ("java-junit" ,java-junit)))
@ -6012,10 +6074,11 @@ StringTemplate also powers ANTLR.")
(add-before 'build 'generate-grammar (add-before 'build 'generate-grammar
(lambda _ (lambda _
(with-directory-excursion "src/org/stringtemplate/v4/compiler/" (with-directory-excursion "src/org/stringtemplate/v4/compiler/"
(every (lambda (file) (for-each (lambda (file)
(format #t "~a\n" file) (format #t "~a\n" file)
(zero? (system* "antlr3" file))) (invoke "antlr3" file))
'("STParser.g" "Group.g" "CodeGenerator.g")))))))) '("STParser.g" "Group.g" "CodeGenerator.g")))
#t)))))
(inputs (inputs
`(("antlr3" ,antlr3-bootstrap) `(("antlr3" ,antlr3-bootstrap)
("antlr2" ,antlr2) ("antlr2" ,antlr2)
@ -6082,14 +6145,15 @@ StringTemplate also powers ANTLR.")
"/lib") "/lib")
".*\\.jar")) ".*\\.jar"))
" org.antlr.Tool $*")))) " org.antlr.Tool $*"))))
(chmod (string-append bin "/antlr3") #o755)))) (chmod (string-append bin "/antlr3") #o755))
#t))
(add-before 'build 'generate-grammar (add-before 'build 'generate-grammar
(lambda _ (lambda _
(chdir "tool/src/main/antlr3/org/antlr/grammar/v3/") (chdir "tool/src/main/antlr3/org/antlr/grammar/v3/")
(for-each (lambda (file) (for-each (lambda (file)
(display file) (display file)
(newline) (newline)
(system* "antlr3" file)) (invoke "antlr3" file))
'("ANTLR.g" "ANTLRTreePrinter.g" "ActionAnalysis.g" '("ANTLR.g" "ANTLRTreePrinter.g" "ActionAnalysis.g"
"AssignTokenTypesWalker.g" "AssignTokenTypesWalker.g"
"ActionTranslator.g" "TreeToNFAConverter.g" "ActionTranslator.g" "TreeToNFAConverter.g"
@ -6100,14 +6164,15 @@ StringTemplate also powers ANTLR.")
(substitute* "ANTLRv3Parser.java" (substitute* "ANTLRv3Parser.java"
(("public Object getTree") "public CommonTree getTree")) (("public Object getTree") "public CommonTree getTree"))
(chdir "../../../../../java") (chdir "../../../../../java")
(system* "antlr" "-o" "org/antlr/tool" (invoke "antlr" "-o" "org/antlr/tool"
"org/antlr/tool/serialize.g") "org/antlr/tool/serialize.g")
(substitute* "org/antlr/tool/LeftRecursiveRuleAnalyzer.java" (substitute* "org/antlr/tool/LeftRecursiveRuleAnalyzer.java"
(("import org.antlr.grammar.v3.\\*;") "import org.antlr.grammar.v3.*; (("import org.antlr.grammar.v3.\\*;") "import org.antlr.grammar.v3.*;
import org.antlr.grammar.v3.ANTLRTreePrinter;")) import org.antlr.grammar.v3.ANTLRTreePrinter;"))
(substitute* "org/antlr/tool/ErrorManager.java" (substitute* "org/antlr/tool/ErrorManager.java"
(("case NO_SUCH_ATTRIBUTE_PASS_THROUGH:") "")) (("case NO_SUCH_ATTRIBUTE_PASS_THROUGH:") ""))
(chdir "../../../.."))) (chdir "../../../..")
#t))
(add-before 'build 'fix-build-xml (add-before 'build 'fix-build-xml
(lambda _ (lambda _
(substitute* "build.xml" (substitute* "build.xml"
@ -6118,7 +6183,8 @@ import org.antlr.grammar.v3.ANTLRTreePrinter;"))
<include name=\"**/*.sti\"/> <include name=\"**/*.sti\"/>
<include name=\"**/STLexer.tokens\"/> <include name=\"**/STLexer.tokens\"/>
</fileset> </fileset>
</copy><exec"))))))) </copy><exec"))
#t)))))
(native-inputs (native-inputs
`(("antlr" ,antlr2) `(("antlr" ,antlr2)
("antlr3" ,antlr3-bootstrap))) ("antlr3" ,antlr3-bootstrap)))
@ -6207,19 +6273,19 @@ tree walking, and translation.")
import org.antlr.grammar.v2.TreeToNFAConverter;\n import org.antlr.grammar.v2.TreeToNFAConverter;\n
import org.antlr.grammar.v2.DefineGrammarItemsWalker;\n import org.antlr.grammar.v2.DefineGrammarItemsWalker;\n
import org.antlr.grammar.v2.ANTLRTreePrinter;")) import org.antlr.grammar.v2.ANTLRTreePrinter;"))
(and (with-directory-excursion "tool/src/main/antlr2/org/antlr/grammar/v2/"
(with-directory-excursion "tool/src/main/antlr2/org/antlr/grammar/v2/" (for-each (lambda (file)
(every (lambda (file) (format #t "~a\n" file)
(format #t "~a\n" file) (invoke "antlr" file))
(zero? (system* "antlr" file))) '("antlr.g" "antlr.print.g" "assign.types.g"
'("antlr.g" "antlr.print.g" "assign.types.g" "buildnfa.g" "codegen.g" "define.g")))
"buildnfa.g" "codegen.g" "define.g"))) (with-directory-excursion "tool/src/main/antlr3/org/antlr/grammar/v3/"
(with-directory-excursion "tool/src/main/antlr3/org/antlr/grammar/v3/" (for-each (lambda (file)
(every (lambda (file) (format #t "~a\n" file)
(format #t "~a\n" file) (invoke "antlr3" file))
(zero? (system* "antlr3" file))) '("ActionAnalysis.g" "ActionTranslator.g" "ANTLRv3.g"
'("ActionAnalysis.g" "ActionTranslator.g" "ANTLRv3.g" "ANTLRv3Tree.g")))
"ANTLRv3Tree.g")))))) #t))
(add-before 'build 'fix-build-xml (add-before 'build 'fix-build-xml
(lambda _ (lambda _
(substitute* "build.xml" (substitute* "build.xml"
@ -6282,7 +6348,8 @@ import org.antlr.grammar.v2.ANTLRTreePrinter;"))
"/lib") "/lib")
".*\\.jar")) ".*\\.jar"))
" org.antlr.Tool $*")))) " org.antlr.Tool $*"))))
(chmod (string-append bin "/antlr3") #o755)))) (chmod (string-append bin "/antlr3") #o755))
#t))
(add-before 'build 'generate-grammar (add-before 'build 'generate-grammar
(lambda _ (lambda _
(let ((dir "src/org/antlr/tool/")) (let ((dir "src/org/antlr/tool/"))
@ -6306,7 +6373,8 @@ import org.antlr.grammar.v2.ANTLRTreePrinter;"))
<include name=\"**/*.sti\"/> <include name=\"**/*.sti\"/>
<include name=\"**/STLexer.tokens\"/> <include name=\"**/STLexer.tokens\"/>
</fileset> </fileset>
</copy><exec"))))))) </copy><exec"))
#t)))))
(native-inputs (native-inputs
`(("antlr" ,antlr2))) `(("antlr" ,antlr2)))
(inputs (inputs
@ -6931,7 +6999,8 @@ the packageadmin service.")
(string-append (string-append
"version=" ,version "\n" "version=" ,version "\n"
"groupId=org.ops4j.base" "groupId=org.ops4j.base"
"artifactId=ops4j-base-lang\n"))))))))) "artifactId=ops4j-base-lang\n"))))
#t)))))
(home-page "https://ops4j1.jira.com/wiki/spaces/base/overview") (home-page "https://ops4j1.jira.com/wiki/spaces/base/overview")
(synopsis "Utility classes and extensions to be used in OPS4J projects") (synopsis "Utility classes and extensions to be used in OPS4J projects")
(description "OPS4J stands for Open Participation Software for Java. This (description "OPS4J stands for Open Participation Software for Java. This
@ -7170,7 +7239,8 @@ it manages project dependencies, gives diffs jars, and much more.")
;; it with our own version. ;; it with our own version.
(substitute* "src/test/java/org/ops4j/pax/tinybundles/bnd/BndTest.java" (substitute* "src/test/java/org/ops4j/pax/tinybundles/bnd/BndTest.java"
(("[0-9][0-9]*\\.[0-9][0-9]*\\.[0-9][0-9]*\\.[0-9][0-9]*") (("[0-9][0-9]*\\.[0-9][0-9]*\\.[0-9][0-9]*\\.[0-9][0-9]*")
,(package-version java-aqute-bndlib)))))))) ,(package-version java-aqute-bndlib)))
#t)))))
(inputs (inputs
`(("lang" ,java-ops4j-base-lang) `(("lang" ,java-ops4j-base-lang)
("io" ,java-ops4j-base-io) ("io" ,java-ops4j-base-io)
@ -7245,7 +7315,8 @@ the system under test at the same time.")
(add-before 'configure 'chdir (add-before 'configure 'chdir
(lambda _ (lambda _
;; Tests assume we are in this directory ;; Tests assume we are in this directory
(chdir "core/pax-exam-spi"))) (chdir "core/pax-exam-spi")
#t))
(add-before 'check 'fix-tests (add-before 'check 'fix-tests
(lambda _ (lambda _
;; One test checks that this file is present. ;; One test checks that this file is present.
@ -7264,7 +7335,8 @@ the system under test at the same time.")
(("target") "build")) (("target") "build"))
;; One test is expected to fail, but it doesn't throw the expected exception ;; One test is expected to fail, but it doesn't throw the expected exception
(substitute* "src/test/java/org/ops4j/pax/exam/spi/reactors/BaseStagedReactorTest.java" (substitute* "src/test/java/org/ops4j/pax/exam/spi/reactors/BaseStagedReactorTest.java"
(("AssertionError") "IllegalArgumentException"))))))) (("AssertionError") "IllegalArgumentException"))
#t)))))
(inputs (inputs
`(("java-ops4j-pax-exam-core" ,java-ops4j-pax-exam-core) `(("java-ops4j-pax-exam-core" ,java-ops4j-pax-exam-core)
("lang" ,java-ops4j-base-lang) ("lang" ,java-ops4j-base-lang)
@ -7364,15 +7436,18 @@ not included are ones that require dependency to the Databind package.")
(("@package@") "com.fasterxml.jackson.core.json") (("@package@") "com.fasterxml.jackson.core.json")
(("@projectversion@") ,version) (("@projectversion@") ,version)
(("@projectgroupid@") "com.fasterxml.jackson.core") (("@projectgroupid@") "com.fasterxml.jackson.core")
(("@projectartifactid@") "jackson-core"))))) (("@projectartifactid@") "jackson-core")))
#t))
(add-before 'build 'copy-resources (add-before 'build 'copy-resources
(lambda _ (lambda _
(copy-recursively "src/main/resources" (copy-recursively "src/main/resources"
"build/classes"))) "build/classes")
#t))
(add-before 'check 'copy-test-resources (add-before 'check 'copy-test-resources
(lambda _ (lambda _
(copy-recursively "src/test/resources" (copy-recursively "src/test/resources"
"build/test-classes")))))) "build/test-classes")
#t)))))
(native-inputs (native-inputs
`(("junit" ,java-junit) `(("junit" ,java-junit)
("hamcrest" ,java-hamcrest-core))) ("hamcrest" ,java-hamcrest-core)))
@ -7409,10 +7484,12 @@ not included are ones that require dependency to the Databind package.")
(("@package@") "com.fasterxml.jackson.databind.cfg") (("@package@") "com.fasterxml.jackson.databind.cfg")
(("@projectversion@") ,version) (("@projectversion@") ,version)
(("@projectgroupid@") "com.fasterxml.jackson.databind") (("@projectgroupid@") "com.fasterxml.jackson.databind")
(("@projectartifactid@") "jackson-databind"))))) (("@projectartifactid@") "jackson-databind")))
#t))
(add-before 'build 'copy-resources (add-before 'build 'copy-resources
(lambda _ (lambda _
(copy-recursively "src/main/resources" "build/classes")))))) (copy-recursively "src/main/resources" "build/classes")
#t)))))
(inputs (inputs
`(("java-fasterxml-jackson-annotations" ,java-fasterxml-jackson-annotations) `(("java-fasterxml-jackson-annotations" ,java-fasterxml-jackson-annotations)
("java-fasterxml-jackson-core" ,java-fasterxml-jackson-core))) ("java-fasterxml-jackson-core" ,java-fasterxml-jackson-core)))
@ -7456,10 +7533,12 @@ configuration.")
(("@package@") "com.fasterxml.jackson.module.jaxb") (("@package@") "com.fasterxml.jackson.module.jaxb")
(("@projectversion@") ,version) (("@projectversion@") ,version)
(("@projectgroupid@") "com.fasterxml.jackson.module.jaxb") (("@projectgroupid@") "com.fasterxml.jackson.module.jaxb")
(("@projectartifactid@") "jackson-module-jaxb"))))) (("@projectartifactid@") "jackson-module-jaxb")))
#t))
(add-before 'build 'copy-resources (add-before 'build 'copy-resources
(lambda _ (lambda _
(copy-recursively "jaxb/src/main/resources" "build/classes")))))) (copy-recursively "jaxb/src/main/resources" "build/classes")
#t)))))
(inputs (inputs
`(("java-fasterxml-jackson-annotations" ,java-fasterxml-jackson-annotations) `(("java-fasterxml-jackson-annotations" ,java-fasterxml-jackson-annotations)
("java-fasterxml-jackson-core" ,java-fasterxml-jackson-core) ("java-fasterxml-jackson-core" ,java-fasterxml-jackson-core)
@ -7524,7 +7603,8 @@ configuration.")
(("@package@") "com.fasterxml.jackson.dataformat.yaml") (("@package@") "com.fasterxml.jackson.dataformat.yaml")
(("@projectversion@") ,version) (("@projectversion@") ,version)
(("@projectgroupid@") "com.fasterxml.jackson.dataformat.yaml") (("@projectgroupid@") "com.fasterxml.jackson.dataformat.yaml")
(("@projectartifactid@") "jackson-dataformat-yaml")))))))) (("@projectartifactid@") "jackson-dataformat-yaml")))
#t)))))
(inputs (inputs
`(("java-fasterxml-jackson-annotations" ,java-fasterxml-jackson-annotations) `(("java-fasterxml-jackson-annotations" ,java-fasterxml-jackson-annotations)
("java-fasterxml-jackson-core" ,java-fasterxml-jackson-core) ("java-fasterxml-jackson-core" ,java-fasterxml-jackson-core)
@ -7591,10 +7671,12 @@ interface and high-performance Typed Access API.")
;; msv's latest release is from 2011 and we don't need it ;; msv's latest release is from 2011 and we don't need it
(delete-file-recursively "src/main/java/com/ctc/wstx/msv") (delete-file-recursively "src/main/java/com/ctc/wstx/msv")
(delete-file-recursively "src/test/java/wstxtest/osgi") (delete-file-recursively "src/test/java/wstxtest/osgi")
(delete-file-recursively "src/test/java/wstxtest/msv"))) (delete-file-recursively "src/test/java/wstxtest/msv")
#t))
(add-before 'build 'copy-resources (add-before 'build 'copy-resources
(lambda _ (lambda _
(copy-recursively "src/main/resources" "build/classes")))))) (copy-recursively "src/main/resources" "build/classes")
#t)))))
(inputs (inputs
`(("stax2" ,java-stax2-api))) `(("stax2" ,java-stax2-api)))
(native-inputs (native-inputs
@ -7634,10 +7716,12 @@ interface and high-performance Typed Access API.")
(("@package@") "com.fasterxml.jackson.dataformat.xml") (("@package@") "com.fasterxml.jackson.dataformat.xml")
(("@projectversion@") ,version) (("@projectversion@") ,version)
(("@projectgroupid@") "com.fasterxml.jackson.dataformat.xml") (("@projectgroupid@") "com.fasterxml.jackson.dataformat.xml")
(("@projectartifactid@") "jackson-dataformat-xml"))))) (("@projectartifactid@") "jackson-dataformat-xml")))
#t))
(add-before 'build 'copy-resources (add-before 'build 'copy-resources
(lambda _ (lambda _
(copy-recursively "src/main/resources" "build/classes")))))) (copy-recursively "src/main/resources" "build/classes")
#t)))))
(inputs (inputs
`(("jackson-annotations" ,java-fasterxml-jackson-annotations) `(("jackson-annotations" ,java-fasterxml-jackson-annotations)
("jackson-core" ,java-fasterxml-jackson-core) ("jackson-core" ,java-fasterxml-jackson-core)
@ -8112,15 +8196,15 @@ those in Perl and JavaScript.")
#t)) #t))
(replace 'check (replace 'check
(lambda _ (lambda _
(system* "ant" "compile-tests") (invoke "ant" "compile-tests")
;; we don't have groovy ;; we don't have groovy
(substitute* "src/test/resources/testng.xml" (substitute* "src/test/resources/testng.xml"
(("<class name=\"test.groovy.GroovyTest\" />") "")) (("<class name=\"test.groovy.GroovyTest\" />") ""))
(zero? (system* "java" "-cp" (string-append (getenv "CLASSPATH") (invoke "java" "-cp" (string-append (getenv "CLASSPATH")
":build/classes" ":build/classes"
":build/test-classes") ":build/test-classes")
"-Dtest.resources.dir=src/test/resources" "-Dtest.resources.dir=src/test/resources"
"org.testng.TestNG" "src/test/resources/testng.xml"))))))) "org.testng.TestNG" "src/test/resources/testng.xml"))))))
(propagated-inputs (propagated-inputs
`(("junit" ,java-junit) `(("junit" ,java-junit)
("java-jsr305" ,java-jsr305) ("java-jsr305" ,java-jsr305)
@ -8184,8 +8268,7 @@ to use.")
":build/classes" ":build/classes"
":build/test-classes") ":build/test-classes")
"org.testng.TestNG" "-testclass" "org.testng.TestNG" "-testclass"
"build/test-classes/com/neilalexander/jnacl/NaClTest.class") "build/test-classes/com/neilalexander/jnacl/NaClTest.class"))))))
#t)))))
(native-inputs (native-inputs
`(("java-testng" ,java-testng) `(("java-testng" ,java-testng)
("java-fest-util" ,java-fest-util) ("java-fest-util" ,java-fest-util)
@ -8368,8 +8451,7 @@ algorithms and xxHash hashing algorithm.")
(replace 'build (replace 'build
(lambda _ (lambda _
(invoke "ant" "-f" "ant/jdk15+.xml" "build-provider") (invoke "ant" "-f" "ant/jdk15+.xml" "build-provider")
(invoke "ant" "-f" "ant/jdk15+.xml" "build") (invoke "ant" "-f" "ant/jdk15+.xml" "build")))
#t))
;; FIXME: the tests freeze. ;; FIXME: the tests freeze.
;; (replace 'check ;; (replace 'check
;; (lambda _ ;; (lambda _
@ -8547,7 +8629,8 @@ done to the IDE or continuous integration servers which simplifies adoption.")
(add-before 'build 'copy-resources (add-before 'build 'copy-resources
(lambda _ (lambda _
(copy-recursively "powermock-core/src/main/resources" (copy-recursively "powermock-core/src/main/resources"
"build/classes")))))) "build/classes")
#t)))))
(inputs (inputs
`(("reflect" ,java-powermock-reflect) `(("reflect" ,java-powermock-reflect)
("javassist" ,java-jboss-javassist))) ("javassist" ,java-jboss-javassist)))
@ -8604,7 +8687,8 @@ done to the IDE or continuous integration servers which simplifies adoption.")
;; Our junit version is 4.12-SNAPSHOT ;; Our junit version is 4.12-SNAPSHOT
(substitute* (find-files "powermock-modules/powermock-module-junit4" (substitute* (find-files "powermock-modules/powermock-module-junit4"
"PowerMockJUnit4MethodValidator.java") "PowerMockJUnit4MethodValidator.java")
(("4.12") "4.12-SNAPSHOT"))))))) (("4.12") "4.12-SNAPSHOT"))
#t)))))
(inputs (inputs
`(("core" ,java-powermock-core) `(("core" ,java-powermock-core)
("reflect" ,java-powermock-reflect) ("reflect" ,java-powermock-reflect)
@ -9069,8 +9153,7 @@ that is part of the SWT Tools project.")
(string-append "-I" (assoc-ref inputs "jdk") (string-append "-I" (assoc-ref inputs "jdk")
"/include/linux") "/include/linux")
"-fPIC" "-O2") "-fPIC" "-O2")
(invoke "gcc" "-o" "libjansi.so" "-shared" "jansi_ttyname.o") (invoke "gcc" "-o" "libjansi.so" "-shared" "jansi_ttyname.o"))))
#t)))
(add-before 'build 'install-native (add-before 'build 'install-native
(lambda _ (lambda _
(let ((dir (string-append "build/classes/META-INF/native/" (let ((dir (string-append "build/classes/META-INF/native/"
@ -9115,7 +9198,7 @@ console output.")
(modify-phases %standard-phases (modify-phases %standard-phases
(add-after 'check 'clear-term (add-after 'check 'clear-term
(lambda _ (lambda _
(zero? (system* "echo" "-e" "\\e[0m"))))))) (invoke "echo" "-e" "\\e[0m"))))))
(inputs (inputs
`(("java-jansi-native" ,java-jansi-native))) `(("java-jansi-native" ,java-jansi-native)))
(native-inputs (native-inputs
@ -9579,7 +9662,8 @@ graphs, and pie charts.")
'("src/java/org/apache/commons/httpclient/HttpContentTooLargeException.java" '("src/java/org/apache/commons/httpclient/HttpContentTooLargeException.java"
"src/examples/TrivialApp.java" "src/examples/ClientApp.java" "src/examples/TrivialApp.java" "src/examples/ClientApp.java"
"src/test/org/apache/commons/httpclient/TestHttps.java" "src/test/org/apache/commons/httpclient/TestHttps.java"
"src/test/org/apache/commons/httpclient/TestURIUtil2.java")))) "src/test/org/apache/commons/httpclient/TestURIUtil2.java"))
#t))
(replace 'install (replace 'install
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
(invoke "ant" "dist" (invoke "ant" "dist"
@ -9629,7 +9713,8 @@ authentication, HTTP state management, and HTTP connection management.")
(lambda _ (lambda _
(for-each delete-file-recursively (for-each delete-file-recursively
'("commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/webdav" '("commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/webdav"
"commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/hdfs"))))))) "commons-vfs2/src/main/java/org/apache/commons/vfs2/provider/hdfs"))
#t)))))
(inputs (inputs
`(("java-commons-collections4" ,java-commons-collections4) `(("java-commons-collections4" ,java-commons-collections4)
("java-commons-compress" ,java-commons-compress) ("java-commons-compress" ,java-commons-compress)
@ -9940,7 +10025,8 @@ jsch-agent-proxy with JSch.")))
(find-files "." ".*.properties") (find-files "." ".*.properties")
(find-files "." ".*.xsd") (find-files "." ".*.xsd")
(find-files "." ".*.xsl") (find-files "." ".*.xsl")
(find-files "." ".*.xml")))))) (find-files "." ".*.xml"))))
#t))
(add-before 'build 'fix-vfs (add-before 'build 'fix-vfs
(lambda _ (lambda _
(substitute* (substitute*
@ -9955,8 +10041,7 @@ jsch-agent-proxy with JSch.")))
(add-before 'install 'repack (add-before 'install 'repack
(lambda _ (lambda _
(invoke "jar" "-cmf" "build/classes/META-INF/MANIFEST.MF" "build/jar/ivy.jar" (invoke "jar" "-cmf" "build/classes/META-INF/MANIFEST.MF" "build/jar/ivy.jar"
"-C" "build/classes" ".") "-C" "build/classes" ".")))
#t))
(add-after 'install 'install-bin (add-after 'install 'install-bin
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
(let* ((bin (string-append (assoc-ref outputs "out") "/bin")) (let* ((bin (string-append (assoc-ref outputs "out") "/bin"))
@ -10169,7 +10254,8 @@ and @code{ISimpleCompiler} interfaces.")
(modify-phases %standard-phases (modify-phases %standard-phases
(add-before 'configure 'chdir (add-before 'configure 'chdir
(lambda _ (lambda _
(chdir "janino")))))) (chdir "janino")
#t)))))
(inputs (inputs
`(("java-commons-compiler" ,java-commons-compiler))) `(("java-commons-compiler" ,java-commons-compiler)))
(native-inputs (native-inputs
@ -10194,7 +10280,9 @@ static code analysis or code manipulation.")))
"1x6ga74yfgm94cfx98gybakbrlilx8i2gn6dx13l40kasmys06mi")) "1x6ga74yfgm94cfx98gybakbrlilx8i2gn6dx13l40kasmys06mi"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (snippet
'(delete-file-recursively "logback-access/lib")))) '(begin
(delete-file-recursively "logback-access/lib")
#t))))
(build-system ant-build-system) (build-system ant-build-system)
(arguments (arguments
`(#:jar-name "logback.jar" `(#:jar-name "logback.jar"

View File

@ -975,15 +975,8 @@ intercept and print the system calls executed by the program.")
version ".tar.bz2")) version ".tar.bz2"))
(sha256 (sha256
(base32 (base32
"096pwrnhj36yndldvs2pj4r871zhcgisks0is78f1jkjn9sd4b2z")) "096pwrnhj36yndldvs2pj4r871zhcgisks0is78f1jkjn9sd4b2z"))))
(patches (search-patches "alsa-lib-add-environment-variable.patch"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-search-paths
(list (search-path-specification
(variable "ALSA_PLUGIN_DIR")
(file-type 'regular)
(separator #f) ;single entry
(files '("lib/alsa-lib")))))
(home-page "https://www.alsa-project.org/") (home-page "https://www.alsa-project.org/")
(synopsis "The Advanced Linux Sound Architecture libraries") (synopsis "The Advanced Linux Sound Architecture libraries")
(description (description
@ -3049,15 +3042,15 @@ Linux Device Mapper multipathing driver:
(define-public libaio (define-public libaio
(package (package
(name "libaio") (name "libaio")
(version "0.3.110") (version "0.3.111")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (list (uri (list
(string-append "mirror://debian/pool/main/liba/libaio/" (string-append "https://releases.pagure.org/libaio/"
name "_" version ".orig.tar.gz"))) name "-" version ".tar.gz")))
(sha256 (sha256
(base32 (base32
"0zjzfkwd1kdvq6zpawhzisv7qbq1ffs343i5fs9p498pcf7046g0")))) "0ajhzbqjwsmz51gwccfyw6w9k4j4gmxcl2ph30sfn2gxv0d8gkv2"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:make-flags '(#:make-flags
@ -3065,7 +3058,7 @@ Linux Device Mapper multipathing driver:
#:test-target "partcheck" ; need root for a full 'check' #:test-target "partcheck" ; need root for a full 'check'
#:phases #:phases
(modify-phases %standard-phases (delete 'configure)))) ; no configure script (modify-phases %standard-phases (delete 'configure)))) ; no configure script
(home-page "http://lse.sourceforge.net/io/aio.html") (home-page "https://pagure.io/libaio")
(synopsis "Linux-native asynchronous I/O access library") (synopsis "Linux-native asynchronous I/O access library")
(description (description
"This library enables userspace to use Linux kernel asynchronous I/O "This library enables userspace to use Linux kernel asynchronous I/O
@ -3099,7 +3092,7 @@ Bluetooth audio output devices like headphones or loudspeakers.")
(define-public bluez (define-public bluez
(package (package
(name "bluez") (name "bluez")
(version "5.49") (version "5.50")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
@ -3107,7 +3100,7 @@ Bluetooth audio output devices like headphones or loudspeakers.")
version ".tar.xz")) version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"15ffsaz7l3fgdg03l7g1xx9jw7xgs6pc548zxqsxawsca5x1sc1k")))) "048r91vx9gs5nwwbah2s0xig04nwk14c5s0vb7qmaqdvighsmz2z"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:configure-flags `(#:configure-flags

View File

@ -2798,7 +2798,7 @@ parts of it.")
(define-public openblas (define-public openblas
(package (package
(name "openblas") (name "openblas")
(version "0.2.20") (version "0.3.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -2807,7 +2807,7 @@ parts of it.")
(file-name (string-append name "-" version ".tar.gz")) (file-name (string-append name "-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"1bd03c5xni0bla0wg1wba841b36b0sg13sjja955kn5xzvy4i61a")))) "14a9vyvp2k5zpd0axbnqk0d3khc1v3cck10nb5fj7d2sgn8490ky"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:test-target "test" `(#:test-target "test"
@ -2846,6 +2846,16 @@ parts of it.")
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(delete 'configure) (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 (add-before 'build 'set-extralib
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
;; Get libgfortran found when building in utest. ;; Get libgfortran found when building in utest.
@ -2857,6 +2867,11 @@ parts of it.")
`(("fortran-lib" ,gfortran "lib"))) `(("fortran-lib" ,gfortran "lib")))
(native-inputs (native-inputs
`(("cunit" ,cunit) `(("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) ("fortran" ,gfortran)
("perl" ,perl))) ("perl" ,perl)))
(home-page "http://www.openblas.net/") (home-page "http://www.openblas.net/")

View File

@ -1,110 +0,0 @@
From 1822fb453128a1b5de93b4c590cd272d6488a077 Mon Sep 17 00:00:00 2001
From: Julien Lepiller <julien@lepiller.eu>
Date: Fri, 25 May 2018 19:26:58 +0200
Subject: [PATCH] Add support for a ALSA_PLUGIN_DIR environment variable.
If it is not set, default to previous behavior.
---
src/control/control.c | 6 +++++-
src/dlmisc.c | 9 +++++++--
src/pcm/pcm.c | 9 +++++++--
src/pcm/pcm_rate.c | 13 +++++++++----
4 files changed, 28 insertions(+), 9 deletions(-)
diff --git a/src/control/control.c b/src/control/control.c
index 11f7815..9dba7dd 100644
--- a/src/control/control.c
+++ b/src/control/control.c
@@ -1331,7 +1331,11 @@ static int snd_ctl_open_conf(snd_ctl_t **ctlp, const char *name,
build_in++;
}
if (*build_in == NULL) {
- buf1 = malloc(strlen(str) + sizeof(ALSA_PLUGIN_DIR) + 32);
+ char* plugdir = ALSA_PLUGIN_DIR;
+ char* envplugdir = getenv("ALSA_PLUGIN_DIR");
+ if(envplugdir != NULL)
+ plugdir = envplugdir;
+ buf1 = malloc(strlen(str) + strlen(plugdir) + 32);
if (buf1 == NULL) {
err = -ENOMEM;
goto _err;
diff --git a/src/dlmisc.c b/src/dlmisc.c
index 3757d33..92aa864 100644
--- a/src/dlmisc.c
+++ b/src/dlmisc.c
@@ -82,9 +82,14 @@ void *snd_dlopen(const char *name, int mode, char *errbuf, size_t errbuflen)
char *filename = NULL;
if (name && name[0] != '/') {
- filename = alloca(sizeof(ALSA_PLUGIN_DIR) + 1 + strlen(name) + 1);
+ char* plugdir = ALSA_PLUGIN_DIR;
+ char* envplugdir = getenv("ALSA_PLUGIN_DIR");
+ if(envplugdir != NULL)
+ plugdir = envplugdir;
+
+ filename = malloc(strlen(plugdir) + 1 + strlen(name) + 1);
if (filename) {
- strcpy(filename, ALSA_PLUGIN_DIR);
+ strcpy(filename, plugdir);
strcat(filename, "/");
strcat(filename, name);
handle = dlopen(filename, mode);
diff --git a/src/pcm/pcm.c b/src/pcm/pcm.c
index 11aec80..590e8b6 100644
--- a/src/pcm/pcm.c
+++ b/src/pcm/pcm.c
@@ -2496,13 +2496,18 @@ static int snd_pcm_open_conf(snd_pcm_t **pcmp, const char *name,
build_in++;
}
if (*build_in == NULL) {
- buf1 = malloc(strlen(str) + sizeof(ALSA_PLUGIN_DIR) + 32);
+ char* plugdir = ALSA_PLUGIN_DIR;
+ char* envplugdir = getenv("ALSA_PLUGIN_DIR");
+ if(envplugdir != NULL)
+ plugdir = envplugdir;
+ buf1 = malloc(strlen(str) + strlen(plugdir) + 32);
+
if (buf1 == NULL) {
err = -ENOMEM;
goto _err;
}
lib = buf1;
- sprintf(buf1, "%s/libasound_module_pcm_%s.so", ALSA_PLUGIN_DIR, str);
+ sprintf(buf1, "%s/libasound_module_pcm_%s.so", plugdir, str);
}
}
#ifndef PIC
diff --git a/src/pcm/pcm_rate.c b/src/pcm/pcm_rate.c
index 4e0c7ca..8694a38 100644
--- a/src/pcm/pcm_rate.c
+++ b/src/pcm/pcm_rate.c
@@ -1260,7 +1260,8 @@ static const char *const default_rate_plugins[] = {
static int rate_open_func(snd_pcm_rate_t *rate, const char *type, const snd_config_t *converter_conf, int verbose)
{
- char open_name[64], open_conf_name[64], lib_name[128], *lib = NULL;
+ char open_name[64], open_conf_name[64], *lib = NULL;
+ char *buf1;
snd_pcm_rate_open_func_t open_func;
snd_pcm_rate_open_conf_func_t open_conf_func;
int err;
@@ -1268,9 +1269,13 @@ static int rate_open_func(snd_pcm_rate_t *rate, const char *type, const snd_conf
snprintf(open_name, sizeof(open_name), "_snd_pcm_rate_%s_open", type);
snprintf(open_conf_name, sizeof(open_conf_name), "_snd_pcm_rate_%s_open_conf", type);
if (!is_builtin_plugin(type)) {
- snprintf(lib_name, sizeof(lib_name),
- "%s/libasound_module_rate_%s.so", ALSA_PLUGIN_DIR, type);
- lib = lib_name;
+ char* plugdir = ALSA_PLUGIN_DIR;
+ char* envplugdir = getenv("ALSA_PLUGIN_DIR");
+ if(envplugdir != NULL)
+ plugdir = envplugdir;
+ buf1 = malloc(strlen(type) + strlen(plugdir) + 32);
+ sprintf(buf1, "%s/libasound_module_rate_%s.so", plugdir, type);
+ lib = buf1;
}
rate->rate_min = SND_PCM_PLUGIN_RATE_MIN;
--
2.17.0

File diff suppressed because it is too large Load Diff

View File

@ -1,15 +0,0 @@
Fix 'wayland-egl-symbols-check' on mips64el-linux, where an additional symbol
(_ftext) is present in libwayland-egl.so.
Patch by Mark H Weaver <mhw@netris.org>
--- mesa-12.0.1/src/egl/wayland/wayland-egl/wayland-egl-symbols-check.orig 2016-01-18 02:39:25.000000000 -0500
+++ mesa-12.0.1/src/egl/wayland/wayland-egl/wayland-egl-symbols-check 2016-10-24 16:25:07.110721426 -0400
@@ -7,6 +7,7 @@
wl_egl_window_destroy
wl_egl_window_get_attached_size
_fini
+_ftext
_init
EOF
done)

View File

@ -6,14 +6,13 @@ 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.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 +++ meson-0.42.0/mesonbuild/scripts/meson_install.py 2017-09-09 01:51:01.209134717 +0200
@@ -345,15 +345,6 @@ @@ -391,14 +391,6 @@
print("Symlink creation does not work on this platform. " print("Symlink creation does not work on this platform. "
"Skipping all symlinking.") "Skipping all symlinking.")
printed_symlink_error = True printed_symlink_error = True
- if is_elf_platform() and os.path.isfile(outname): - if os.path.isfile(outname):
- try: - try:
- e = depfixer.Elf(outname, False) - depfixer.fix_rpath(outname, install_rpath, False)
- e.fix_rpath(install_rpath)
- except SystemExit as e: - except SystemExit as e:
- if isinstance(e.code, int) and e.code == 0: - if isinstance(e.code, int) and e.code == 0:
- pass - pass

View File

@ -0,0 +1,35 @@
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

View File

@ -0,0 +1,33 @@
Fix build against xorg-server >= 1.20.
Patch taken from upstream:
https://cgit.freedesktop.org/xorg/driver/xf86-video-savage/commit/?id=0ece556daa8a88771b669d8104396abd9166d2d0
diff --git a/src/savage_driver.c b/src/savage_driver.c
index 58a294d..3cda923 100644
--- a/src/savage_driver.c
+++ b/src/savage_driver.c
@@ -2034,8 +2034,6 @@ static Bool SavagePreInit(ScrnInfoPtr pScrn, int flags)
xf86DrvMsg(pScrn->scrnIndex, X_PROBED, "Detected current MCLK value of %1.3f MHz\n",
mclk / 1000.0);
- pScrn->maxHValue = 2048 << 3; /* 11 bits of h_total 8-pixel units */
- pScrn->maxVValue = 2048; /* 11 bits of v_total */
pScrn->virtualX = pScrn->display->virtualX;
pScrn->virtualY = pScrn->display->virtualY;
@@ -3637,6 +3635,14 @@ static ModeStatus SavageValidMode(SCRN_ARG_TYPE arg, DisplayModePtr pMode,
(pMode->VDisplay > psav->PanelY)))
return MODE_PANEL;
+ /* 11 bits of h_total 8-pixel units */
+ if (pMode->HTotal > (2048 << 3))
+ return MODE_BAD_HVALUE;
+
+ /* 11 bits of v_total */
+ if (pMode->VTotal > 2048)
+ return MODE_BAD_VVALUE;
+
if (psav->UseBIOS) {
refresh = SavageGetRefresh(pMode);
return (SavageMatchBiosMode(pScrn,pMode->HDisplay,

View File

@ -0,0 +1,18 @@
Remove use of interface no longer provided by xorg-server.
Patch taken from upstream:
https://cgit.freedesktop.org/xorg/driver/xf86-video-sis/commit/?id=4b1356a2b7fd06e9a05d134caa4033681c939737
diff --git a/src/sis_driver.c b/src/sis_driver.c
index 8f06164..513f68b 100644
--- a/src/sis_driver.c
+++ b/src/sis_driver.c
@@ -2738,7 +2738,7 @@ SiSPrintModes(ScrnInfoPtr pScrn)
float hsync, refresh = 0.0;
char *desc, *desc2, *prefix, *uprefix, *output;
- xf86DrvMsg(pScrn->scrnIndex, pScrn->virtualFrom, "Virtual size is %dx%d "
+ xf86DrvMsg(pScrn->scrnIndex, X_INFO, "Virtual size is %dx%d "
"(pitch %d)\n", pScrn->virtualX, pScrn->virtualY,
pScrn->displayWidth);

View File

@ -0,0 +1,55 @@
From: Tobias Geerinckx-Rice <me@tobias.gr>
Date: Mon, 18 Jun 2018 02:37:41 +0200
Subject: zathura-pdf-mupdf: Link to JPEG libraries.
As of version 0.3.3, zathura-pdf-mupdf no longer links to some required
JPEG libraries, leading to such errors as:
$ zathura foo.pdf
error: Could not load plugin '/gnu/store/...-profile/lib/zathura/libpdf-mupdf.so' (/gnu/store/...-profile/lib/zathura/libpdf-mupdf.so: undefined symbol: jpeg_resync_to_restart).
The patch below, copied verbatim from Arch[0], fixes that.
Its description happens to match our reality, too.
[0]: https://git.archlinux.org/svntogit/community.git/tree/trunk?h=packages/zathura-pdf-mupdf
---
From 3fb0ff750373d45d4f5172ce1d41b74183cd07e8 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Johannes=20L=C3=B6thberg?= <johannes@kyriasis.com>
Date: Sat, 24 Mar 2018 14:31:18 +0100
Subject: [PATCH] Explicitly link against jbig2dec, openjp2, and jpeg
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Normally these are statically linked into libmupdfthird, but we delete
those to make mupdf use the system libraries. Previously
zathura-pdf-mupdf explicitly linked against them, but this is
technically incorrect since they are supposed to be in libmupdfthird so
that was removed. This commit essentially reverts that in the new build
system.
Signed-off-by: Johannes Löthberg <johannes@kyriasis.com>
---
meson.build | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/meson.build b/meson.build
index 3b0d7b7..ae2fc9c 100644
--- a/meson.build
+++ b/meson.build
@@ -22,7 +22,11 @@ cairo = dependency('cairo')
mupdf = cc.find_library('mupdf')
mupdfthird = cc.find_library('mupdfthird')
-build_dependencies = [zathura, girara, glib, cairo, mupdf, mupdfthird]
+jbig2dec = cc.find_library('jbig2dec')
+openjp2 = cc.find_library('openjp2')
+jpeg = cc.find_library('jpeg')
+
+build_dependencies = [zathura, girara, glib, cairo, mupdf, mupdfthird, jbig2dec, openjp2, jpeg]
# defines
defines = [
--
2.16.3

View File

@ -8,15 +8,15 @@ different file formats) called ZATHURA_PLUGIN_PATH. Command line option
-p still takes precedence. -p still takes precedence.
Patch by Paul van der Walt <paul@denknerd.org> Patch by Paul van der Walt <paul@denknerd.org>
Adjusted for Zathura 0.3.9 by Tobias Geerinckx-Rice <me@tobias.gr>
--- ---
zathura/zathura.c | 7 +++++++ zathura/zathura.c | 7 +++++++
1 file changed, 7 insertions(+) 1 file changed, 7 insertions(+)
diff --git a/zathura/zathura.c b/zathura/zathura.c diff --git a/zathura/zathura.c b/zathura/zathura.c
index 589dd28..375ec54 100644
--- a/zathura/zathura.c --- a/zathura/zathura.c
+++ b/zathura/zathura.c +++ b/zathura/zathura.c
@@ -413,6 +413,13 @@ zathura_set_plugin_dir(zathura_t* zathura, const char* dir) @@ -597,6 +597,13 @@ zathura_set_plugin_dir(zathura_t* zathura, const char* dir)
g_return_if_fail(zathura != NULL); g_return_if_fail(zathura != NULL);
g_return_if_fail(zathura->plugins.manager != NULL); g_return_if_fail(zathura->plugins.manager != NULL);
@ -28,8 +28,5 @@ index 589dd28..375ec54 100644
+ dir = g_getenv("ZATHURA_PLUGIN_PATH"); + dir = g_getenv("ZATHURA_PLUGIN_PATH");
+ +
if (dir != NULL) { if (dir != NULL) {
girara_list_t* paths = girara_split_path_array(dir); set_plugin_dir(zathura, dir);
GIRARA_LIST_FOREACH(paths, char*, iter, path) #ifdef ZATHURA_PLUGINDIR
--
2.3.1

View File

@ -13,7 +13,7 @@
;;; Copyright © 2017, 2018 Leo Famulari <leo@famulari.name> ;;; Copyright © 2017, 2018 Leo Famulari <leo@famulari.name>
;;; Copyright © 2017 Alex Vong <alexvong1995@gmail.com> ;;; Copyright © 2017 Alex Vong <alexvong1995@gmail.com>
;;; Copyright © 2017 Rene Saavedra <rennes@openmailbox.org> ;;; Copyright © 2017 Rene Saavedra <rennes@openmailbox.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. ;;; This file is part of GNU Guix.
;;; ;;;
@ -37,6 +37,7 @@
#:use-module (guix utils) #:use-module (guix utils)
#:use-module (guix build-system gnu) #:use-module (guix build-system gnu)
#:use-module (guix build-system cmake) #:use-module (guix build-system cmake)
#:use-module (guix build-system meson)
#:use-module (guix build-system python) #:use-module (guix build-system python)
#:use-module (guix build-system trivial) #:use-module (guix build-system trivial)
#:use-module (gnu packages) #:use-module (gnu packages)
@ -343,26 +344,32 @@ reading and editing of existing PDF files.")
(define-public zathura-cb (define-public zathura-cb
(package (package
(name "zathura-cb") (name "zathura-cb")
(version "0.1.7") (version "0.1.8")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (uri
(string-append "https://pwmt.org/projects/zathura-cb/download/zathura-cb-" (string-append "https://pwmt.org/projects/zathura-cb/download/zathura-cb-"
version ".tar.gz")) version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0r4viisycj39kaz4281cmkr7n9w5q96dmlf7nf45n8zq8qy2npw3")))) "1i6cf0vks501cggwvfsl6qb7mdaf3sszdymphimfvnspw810faj5"))))
(native-inputs `(("pkg-config" ,pkg-config))) (native-inputs `(("pkg-config" ,pkg-config)))
(inputs `(("libarchive" ,libarchive) (inputs `(("libarchive" ,libarchive)
("zathura" ,zathura))) ("zathura" ,zathura)))
(build-system gnu-build-system) (build-system meson-build-system)
(arguments (arguments
`(#:make-flags (list (string-append "PREFIX=" %output) `(#:tests? #f ; package does not contain tests
(string-append "PLUGINDIR=" %output "/lib/zathura")
"CC=gcc")
#:tests? #f ; Package does not contain tests.
#:phases #:phases
(modify-phases %standard-phases (delete 'configure)))) (modify-phases %standard-phases
(add-after 'unpack 'patch-plugin-directory
;; Something of a regression in 0.1.8: the new Meson build system
;; now hard-codes an incorrect plugin directory. Fix it.
(lambda* (#:key outputs #:allow-other-keys)
(substitute* "meson.build"
(("(install_dir:).*" _ key)
(string-append key
"'" (assoc-ref outputs "out") "/lib/zathura'\n")))
#t)))))
(home-page "https://pwmt.org/projects/zathura-cb/") (home-page "https://pwmt.org/projects/zathura-cb/")
(synopsis "Comic book support for zathura (libarchive backend)") (synopsis "Comic book support for zathura (libarchive backend)")
(description "The zathura-cb plugin adds comic book support to zathura (description "The zathura-cb plugin adds comic book support to zathura
@ -372,26 +379,32 @@ using libarchive.")
(define-public zathura-ps (define-public zathura-ps
(package (package
(name "zathura-ps") (name "zathura-ps")
(version "0.2.5") (version "0.2.6")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (uri
(string-append "https://pwmt.org/projects/zathura-ps/download/zathura-ps-" (string-append "https://pwmt.org/projects/zathura-ps/download/zathura-ps-"
version ".tar.gz")) version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1x4knqja8pw2a5cb3y2209nr3iddj1z8nwasy48v5nprj61fdxqj")))) "0wygq89nyjrjnsq7vbpidqdsirjm6iq4w2rijzwpk2f83ys8bc3y"))))
(native-inputs `(("pkg-config" ,pkg-config))) (native-inputs `(("pkg-config" ,pkg-config)))
(inputs `(("libspectre" ,libspectre) (inputs `(("libspectre" ,libspectre)
("zathura" ,zathura))) ("zathura" ,zathura)))
(build-system gnu-build-system) (build-system meson-build-system)
(arguments (arguments
`(#:make-flags (list (string-append "PREFIX=" %output) `(#:tests? #f ; package does not contain tests
(string-append "PLUGINDIR=" %output "/lib/zathura")
"CC=gcc")
#:tests? #f ; Package does not contain tests.
#:phases #:phases
(modify-phases %standard-phases (delete 'configure)))) (modify-phases %standard-phases
(add-after 'unpack 'patch-plugin-directory
;; Something of a regression in 0.2.6: the new Meson build system
;; now hard-codes an incorrect plugin directory. Fix it.
(lambda* (#:key outputs #:allow-other-keys)
(substitute* "meson.build"
(("(install_dir:).*" _ key)
(string-append key
"'" (assoc-ref outputs "out") "/lib/zathura'\n")))
#t)))))
(home-page "https://pwmt.org/projects/zathura-ps/") (home-page "https://pwmt.org/projects/zathura-ps/")
(synopsis "PS support for zathura (libspectre backend)") (synopsis "PS support for zathura (libspectre backend)")
(description "The zathura-ps plugin adds PS support to zathura (description "The zathura-ps plugin adds PS support to zathura
@ -401,27 +414,33 @@ using libspectre.")
(define-public zathura-djvu (define-public zathura-djvu
(package (package
(name "zathura-djvu") (name "zathura-djvu")
(version "0.2.7") (version "0.2.8")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (uri
(string-append "https://pwmt.org/projects/zathura-djvu/download/zathura-djvu-" (string-append "https://pwmt.org/projects/zathura-djvu/download/zathura-djvu-"
version ".tar.gz")) version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1sbfdsyp50qc85xc4458sn4w1rv1qbygdwmcr5kjlfpsmdq98vhd")))) "0axkv1crdxn0z44whaqp2ibkdqcykhjnxk7qzms0dp1b67an9rnh"))))
(native-inputs `(("pkg-config" ,pkg-config))) (native-inputs `(("pkg-config" ,pkg-config)))
(inputs (inputs
`(("djvulibre" ,djvulibre) `(("djvulibre" ,djvulibre)
("zathura" ,zathura))) ("zathura" ,zathura)))
(build-system gnu-build-system) (build-system meson-build-system)
(arguments (arguments
`(#:make-flags (list (string-append "PREFIX=" %output) `(#:tests? #f ; package does not contain tests
(string-append "PLUGINDIR=" %output "/lib/zathura")
"CC=gcc")
#:tests? #f ; Package does not contain tests.
#:phases #:phases
(modify-phases %standard-phases (delete 'configure)))) (modify-phases %standard-phases
(add-after 'unpack 'patch-plugin-directory
;; Something of a regression in 0.2.8: the new Meson build system
;; now hard-codes an incorrect plugin directory. Fix it.
(lambda* (#:key outputs #:allow-other-keys)
(substitute* "meson.build"
(("(install_dir:).*" _ key)
(string-append key
"'" (assoc-ref outputs "out") "/lib/zathura'\n")))
#t)))))
(home-page "https://pwmt.org/projects/zathura-djvu/") (home-page "https://pwmt.org/projects/zathura-djvu/")
(synopsis "DjVu support for zathura (DjVuLibre backend)") (synopsis "DjVu support for zathura (DjVuLibre backend)")
(description "The zathura-djvu plugin adds DjVu support to zathura (description "The zathura-djvu plugin adds DjVu support to zathura
@ -431,15 +450,17 @@ using the DjVuLibre library.")
(define-public zathura-pdf-mupdf (define-public zathura-pdf-mupdf
(package (package
(name "zathura-pdf-mupdf") (name "zathura-pdf-mupdf")
(version "0.3.2") (version "0.3.3")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (uri
(string-append "https://pwmt.org/projects/zathura-pdf-mupdf" (string-append "https://pwmt.org/projects/zathura-pdf-mupdf"
"/download/zathura-pdf-mupdf-" version ".tar.gz")) "/download/zathura-pdf-mupdf-" version ".tar.xz"))
(patches
(search-patches "zathura-pdf-mupdf-link-to-jpeg-libraries.patch"))
(sha256 (sha256
(base32 (base32
"0xkajc3is7ncmb2fmymbzfgrran2bz12i7zsm1vvxhxds728h7ck")))) "1zbdqimav4wfgimpy3nfzl10qj7vyv23rdy2z5z7z93jwbp2rc2j"))))
(native-inputs `(("pkg-config" ,pkg-config))) (native-inputs `(("pkg-config" ,pkg-config)))
(inputs (inputs
`(("jbig2dec" ,jbig2dec) `(("jbig2dec" ,jbig2dec)
@ -448,13 +469,20 @@ using the DjVuLibre library.")
("openjpeg" ,openjpeg) ("openjpeg" ,openjpeg)
("openssl" ,openssl) ("openssl" ,openssl)
("zathura" ,zathura))) ("zathura" ,zathura)))
(build-system gnu-build-system) (build-system meson-build-system)
(arguments (arguments
`(#:make-flags (list (string-append "PREFIX=" %output) `(#:tests? #f ; package does not contain tests
(string-append "PLUGINDIR=" %output "/lib/zathura") #:phases
"CC=gcc") (modify-phases %standard-phases
#:tests? #f ;No tests. (add-after 'unpack 'patch-plugin-directory
#:phases (modify-phases %standard-phases (delete 'configure)))) ;; Something of a regression in 0.3.3: the new Meson build system
;; now hard-codes an incorrect plugin directory. Fix it.
(lambda* (#:key outputs #:allow-other-keys)
(substitute* "meson.build"
(("(install_dir:).*" _ key)
(string-append key
"'" (assoc-ref outputs "out") "/lib/zathura'\n")))
#t)))))
(home-page "https://pwmt.org/projects/zathura-pdf-mupdf/") (home-page "https://pwmt.org/projects/zathura-pdf-mupdf/")
(synopsis "PDF support for zathura (mupdf backend)") (synopsis "PDF support for zathura (mupdf backend)")
(description "The zathura-pdf-mupdf plugin adds PDF support to zathura (description "The zathura-pdf-mupdf plugin adds PDF support to zathura
@ -464,27 +492,33 @@ by using the @code{mupdf} rendering library.")
(define-public zathura-pdf-poppler (define-public zathura-pdf-poppler
(package (package
(name "zathura-pdf-poppler") (name "zathura-pdf-poppler")
(version "0.2.8") (version "0.2.9")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (uri
(string-append "https://pwmt.org/projects/zathura-pdf-poppler/download/zathura-pdf-poppler-" (string-append "https://pwmt.org/projects/zathura-pdf-poppler/download/zathura-pdf-poppler-"
version ".tar.gz")) version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1m55m7s7f8ng8a7lmcw9z4n5zv7xk4vp9n6fp9j84z6rk2imf7a2")))) "1p4jcny0jniygns78mcf0nlm298dszh49qpmjmackrm6dq8hc25y"))))
(native-inputs `(("pkg-config" ,pkg-config))) (native-inputs `(("pkg-config" ,pkg-config)))
(inputs (inputs
`(("poppler" ,poppler) `(("poppler" ,poppler)
("zathura" ,zathura))) ("zathura" ,zathura)))
(build-system gnu-build-system) (build-system meson-build-system)
(arguments (arguments
`(#:make-flags (list (string-append "PREFIX=" %output) `(#:tests? #f ; package does not include tests
(string-append "PLUGINDIR=" %output "/lib/zathura")
"CC=gcc")
#:tests? #f ; Package does not include tests.
#:phases #:phases
(modify-phases %standard-phases (delete 'configure)))) (modify-phases %standard-phases
(add-after 'unpack 'patch-plugin-directory
;; Something of a regression in 0.2.9: the new Meson build system
;; now hard-codes an incorrect plugin directory. Fix it.
(lambda* (#:key outputs #:allow-other-keys)
(substitute* "meson.build"
(("(install_dir:).*" _ key)
(string-append key
"'" (assoc-ref outputs "out") "/lib/zathura'\n")))
#t)))))
(home-page "https://pwmt.org/projects/zathura-pdf-poppler/") (home-page "https://pwmt.org/projects/zathura-pdf-poppler/")
(synopsis "PDF support for zathura (poppler backend)") (synopsis "PDF support for zathura (poppler backend)")
(description "The zathura-pdf-poppler plugin adds PDF support to zathura (description "The zathura-pdf-poppler plugin adds PDF support to zathura
@ -494,21 +528,24 @@ by using the poppler rendering engine.")
(define-public zathura (define-public zathura
(package (package
(name "zathura") (name "zathura")
(version "0.3.8") (version "0.3.9")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (uri
(string-append "https://pwmt.org/projects/zathura/download/zathura-" (string-append "https://pwmt.org/projects/zathura/download/zathura-"
version ".tar.gz")) version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0dz5pky3vmf3s2cp2rv1c099gb1s49p9xlgm3ghyy4pzyxc8bgs6")) "0z09kz92a2n8qqv3cy8bx5j5k612g2f9mmh4szqlc7yvi39aax1g"))
(patches (search-patches (patches (search-patches
"zathura-plugindir-environment-variable.patch")))) "zathura-plugindir-environment-variable.patch"))))
(native-inputs `(("pkg-config" ,pkg-config) (native-inputs `(("pkg-config" ,pkg-config)
("gettext" ,gettext-minimal) ("gettext" ,gettext-minimal)
("glib:bin" ,glib "bin") ("glib:bin" ,glib "bin")
;; For building documentation.
("python-sphinx" ,python-sphinx)
;; For tests. ;; For tests.
("check" ,check) ("check" ,check)
("xorg-server" ,xorg-server-1.19.3))) ("xorg-server" ,xorg-server-1.19.3)))
@ -520,15 +557,9 @@ by using the poppler rendering engine.")
(list (search-path-specification (list (search-path-specification
(variable "ZATHURA_PLUGIN_PATH") (variable "ZATHURA_PLUGIN_PATH")
(files '("lib/zathura"))))) (files '("lib/zathura")))))
(build-system gnu-build-system) (build-system meson-build-system)
(arguments (arguments
`(#:make-flags `(#:phases (modify-phases %standard-phases
`(,(string-append "PREFIX=" (assoc-ref %outputs "out"))
"CC=gcc" "COLOR=0")
#:test-target "test"
#:disallowed-references (,xorg-server-1.19.3)
#:phases (modify-phases %standard-phases
(delete 'configure)
(add-before 'check 'start-xserver (add-before 'check 'start-xserver
;; Tests require a running X server. ;; Tests require a running X server.
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)

View File

@ -7834,14 +7834,14 @@ python-xdo for newer bindings.)")
(define-public python-mako (define-public python-mako
(package (package
(name "python-mako") (name "python-mako")
(version "1.0.6") (version "1.0.7")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "Mako" version)) (uri (pypi-uri "Mako" version))
(sha256 (sha256
(base32 (base32
"03dyxgjknp4ffsv7vwfd28l5bbpzi0ylp20543wpg3iahyyrwma8")))) "1bi5gnr8r8dva06qpyx4kgjc6spm2k1y908183nbbaylggjzs0jf"))))
(build-system python-build-system) (build-system python-build-system)
(propagated-inputs (propagated-inputs
`(("python-markupsafe" ,python-markupsafe))) `(("python-markupsafe" ,python-markupsafe)))

View File

@ -22,6 +22,7 @@
;;; Copyright © 2017 Marek Benc <dusxmt@gmx.com> ;;; Copyright © 2017 Marek Benc <dusxmt@gmx.com>
;;; Copyright © 2017 Mike Gerwitz <mtg@gnu.org> ;;; Copyright © 2017 Mike Gerwitz <mtg@gnu.org>
;;; Copyright © 2018 Thomas Sigurdsen <tonton@riseup.net> ;;; Copyright © 2018 Thomas Sigurdsen <tonton@riseup.net>
;;; Copyright © 2018 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2018 Pierre Neidhardt <ambrevar@gmail.com> ;;; Copyright © 2018 Pierre Neidhardt <ambrevar@gmail.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
@ -316,7 +317,7 @@ rasterisation.")
(define-public libdrm (define-public libdrm
(package (package
(name "libdrm") (name "libdrm")
(version "2.4.91") (version "2.4.92")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -326,7 +327,7 @@ rasterisation.")
".tar.bz2")) ".tar.bz2"))
(sha256 (sha256
(base32 (base32
"0068dn47c478vm1lyyhy02gilrpsma0xmcblhvs0dzqyrk80wjk3")) "1yirzx8hmlvv6r0l7lb3zxmgy5la2mri9al0k16xqfg19pdqzr79"))
(patches (search-patches "libdrm-symbol-check.patch")))) (patches (search-patches "libdrm-symbol-check.patch"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments

View File

@ -1026,7 +1026,7 @@ of new capabilities and controls for text keyboards.")
(define-public libdmx (define-public libdmx
(package (package
(name "libdmx") (name "libdmx")
(version "1.1.3") (version "1.1.4")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -1036,7 +1036,7 @@ of new capabilities and controls for text keyboards.")
".tar.bz2")) ".tar.bz2"))
(sha256 (sha256
(base32 (base32
"00djlxas38kbsrglcmwmxfbmxjdchlbj95pqwjvdg8jn5rns6zf9")))) "0hvjfhrcym770cr0zpqajdy3cda30aiwbjzv16iafkqkbl090gr5"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs (inputs
`(("xorgproto" ,xorgproto) `(("xorgproto" ,xorgproto)
@ -2961,7 +2961,7 @@ It supports a variety of Intel graphics chipsets.")
(define-public xf86-video-mach64 (define-public xf86-video-mach64
(package (package
(name "xf86-video-mach64") (name "xf86-video-mach64")
(version "6.9.5") (version "6.9.6")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -2971,7 +2971,7 @@ It supports a variety of Intel graphics chipsets.")
".tar.bz2")) ".tar.bz2"))
(sha256 (sha256
(base32 (base32
"07xlf5nsjm0x18ij5gyy4lf8hwpl10i8chi3skpqjh84drdri61y")) "171wg8r6py1l138s58rlapin3rlpwsg9spmvhc7l68mm3g3hf1vs"))
(patches (search-patches "xf86-video-mach64-glibc-2.20.patch")))) (patches (search-patches "xf86-video-mach64-glibc-2.20.patch"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs `(("mesa" ,mesa) (inputs `(("mesa" ,mesa)
@ -3176,33 +3176,47 @@ This driver is intended for the spice qxl virtio device.")
(home-page "http://www.spice-space.org") (home-page "http://www.spice-space.org")
(license license:x11))) (license license:x11)))
(define-public xf86-video-r128 (define-public xf86-video-r128
(package ;; We need a newer version than 6.10.2 to build against the latest xorg-server.
(name "xf86-video-r128") ;; Remove this binding and the bootstrap inputs when >6.10.2 is released.
(version "6.10.2") (let ((commit "c4c878d2ccb75fa75afe46e0e50ee9975c5c57fc")
(source (revision "0"))
(origin (package
(method url-fetch) (name "xf86-video-r128")
(uri (string-append (version (git-version "6.10.2" revision commit))
"mirror://xorg/individual/driver/xf86-video-r128-" (source (origin
version (method git-fetch)
".tar.bz2")) (uri (git-reference
(sha256 (url (string-append "https://anongit.freedesktop.org/git/xorg"
(base32 "/driver/" name ".git"))
"1pkpka5m4cd6iy0f8iqnmg6xci14nb6887ilvxzn3xrsgx8j3nl4")))) (commit commit)))
(build-system gnu-build-system) (file-name (git-file-name name version))
(inputs `(("mesa" ,mesa) (sha256
("xorgproto" ,xorgproto) (base32
("xorg-server" ,xorg-server))) "01pff30zz4zxjhw28h8bn9x2kq7c6iswgn19b72wnfgl0arxb63j"))))
(native-inputs `(("pkg-config" ,pkg-config))) (build-system gnu-build-system)
(home-page "https://www.x.org/wiki/") (arguments
(synopsis "ATI Rage 128 video driver for X server") `(#:phases (modify-phases %standard-phases
(description (add-before 'bootstrap 'prevent-configure
"xf86-video-r128 is a video driver for the Xorg X server. (lambda _
;; Prevent autogen from calling "./configure" as part of
;; the bootstrap step, which fails due to wrong shebang.
(setenv "NOCONFIGURE" "1")
#t)))))
(inputs `(("mesa" ,mesa)
("xorgproto" ,xorgproto)
("xorg-server" ,xorg-server)))
(native-inputs
`(("pkg-config" ,pkg-config)
("autoconf" ,autoconf)
("automake" ,automake)
("libtool" ,libtool)))
(home-page "https://www.x.org/wiki/")
(synopsis "ATI Rage 128 video driver for X server")
(description
"xf86-video-r128 is a video driver for the Xorg X server.
This driver is intended for ATI Rage 128 based cards.") This driver is intended for ATI Rage 128 based cards.")
(license license:x11))) (license license:x11))))
(define-public xf86-video-savage (define-public xf86-video-savage
(package (package
@ -3215,6 +3229,7 @@ This driver is intended for ATI Rage 128 based cards.")
"mirror://xorg/individual/driver/xf86-video-savage-" "mirror://xorg/individual/driver/xf86-video-savage-"
version version
".tar.bz2")) ".tar.bz2"))
(patches (search-patches "xf86-video-savage-xorg-compat.patch"))
(sha256 (sha256
(base32 (base32
"11pcrsdpdrwk0mrgv83s5nsx8a9i4lhmivnal3fjbrvi3zdw94rc")))) "11pcrsdpdrwk0mrgv83s5nsx8a9i4lhmivnal3fjbrvi3zdw94rc"))))
@ -3267,6 +3282,7 @@ Xorg X server.")
"mirror://xorg/individual/driver/xf86-video-sis-" "mirror://xorg/individual/driver/xf86-video-sis-"
version version
".tar.bz2")) ".tar.bz2"))
(patches (search-patches "xf86-video-sis-xorg-compat.patch"))
(sha256 (sha256
(base32 (base32
"03f1abjjf68y8y1iz768rn95va9d33wmbwfbsqrgl6k0gi0bf9jj")))) "03f1abjjf68y8y1iz768rn95va9d33wmbwfbsqrgl6k0gi0bf9jj"))))
@ -3723,7 +3739,7 @@ alternative implementations like XRandR or TwinView.")
(define xkbcomp-intermediate ; used as input for xkeyboard-config (define xkbcomp-intermediate ; used as input for xkeyboard-config
(package (package
(name "xkbcomp-intermediate") (name "xkbcomp-intermediate")
(version "1.4.1") (version "1.4.2")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -3733,7 +3749,7 @@ alternative implementations like XRandR or TwinView.")
".tar.bz2")) ".tar.bz2"))
(sha256 (sha256
(base32 (base32
"0djp7bb0ch2ddwmc1bkg4fddxdvamiiz375x0r0ni5dcb37w93bl")))) "0944rrkkf0dxp07vhh9yr4prslxhqyw63qmbjirbv1bypswvrn3d"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs (inputs
`(("xorgproto" ,xorgproto) `(("xorgproto" ,xorgproto)
@ -5072,7 +5088,7 @@ over Xlib, including:
(define-public xorg-server (define-public xorg-server
(package (package
(name "xorg-server") (name "xorg-server")
(version "1.19.6") (version "1.20.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -5081,7 +5097,7 @@ over Xlib, including:
name "-" version ".tar.bz2")) name "-" version ".tar.bz2"))
(sha256 (sha256
(base32 (base32
"15y13ihgkggmly5s07vzvpn35gzx1w0hrkbnlcvcy05h3lpm0cm7")) "1rnka3sp8yg2bir0bjjhwn33jikj8qd8ckqcxrs94w05bwc7v5lx"))
(patches (patches
(list (list
;; See: ;; See:

View File

@ -148,8 +148,7 @@ has a 'meson.build' file."
#:search-paths ',(map search-path-specification->sexp #:search-paths ',(map search-path-specification->sexp
search-paths) search-paths)
#:phases #:phases
(if (string-prefix? "arm" ,(or (%current-target-system) (if (string-prefix? "arm" ,system)
(%current-system)))
(modify-phases build-phases (delete 'fix-runpath)) (modify-phases build-phases (delete 'fix-runpath))
build-phases) build-phases)
#:configure-flags ,configure-flags #:configure-flags ,configure-flags

View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2016, 2018 Ricardo Wurmus <rekado@elephly.net>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -68,14 +68,11 @@
(target (@ (name "manifest")) (target (@ (name "manifest"))
(mkdir (@ (dir "${manifest.dir}"))) (mkdir (@ (dir "${manifest.dir}")))
(echo (@ (file "${manifest.file}") (manifest (@ (file "${manifest.file}"))
(message ,(string-append ,(if main-class
(if main-class `(attribute (@ (name "Main-Class")
(string-append (value ,main-class)))
"Main-Class: " main-class "")))
"${line.separator}")
"")
"")))))
(target (@ (name "compile")) (target (@ (name "compile"))
(mkdir (@ (dir "${classes.dir}"))) (mkdir (@ (dir "${classes.dir}")))
@ -150,7 +147,8 @@ to the default GNU unpack strategy."
(begin (begin
(mkdir "src") (mkdir "src")
(with-directory-excursion "src" (with-directory-excursion "src"
(zero? (system* "jar" "-xf" source)))) (invoke "jar" "-xf" source))
#t)
;; Use GNU unpack strategy for things that aren't jar archives. ;; Use GNU unpack strategy for things that aren't jar archives.
((assq-ref gnu:%standard-phases 'unpack) #:source source))) ((assq-ref gnu:%standard-phases 'unpack) #:source source)))
@ -171,7 +169,7 @@ to the default GNU unpack strategy."
(define* (build #:key (make-flags '()) (build-target "jar") (define* (build #:key (make-flags '()) (build-target "jar")
#:allow-other-keys) #:allow-other-keys)
(zero? (apply system* `("ant" ,build-target ,@make-flags)))) (apply invoke `("ant" ,build-target ,@make-flags)))
(define* (generate-jar-indices #:key outputs #:allow-other-keys) (define* (generate-jar-indices #:key outputs #:allow-other-keys)
"Generate file \"META-INF/INDEX.LIST\". This file does not use word wraps "Generate file \"META-INF/INDEX.LIST\". This file does not use word wraps
@ -181,10 +179,11 @@ grafting works - and so that the garbage collector doesn't collect
dependencies of this jar file." dependencies of this jar file."
(define (generate-index jar) (define (generate-index jar)
(invoke "jar" "-i" jar)) (invoke "jar" "-i" jar))
(every (match-lambda (for-each (match-lambda
((output . directory) ((output . directory)
(every generate-index (find-files directory "\\.jar$")))) (for-each generate-index (find-files directory "\\.jar$"))))
outputs)) outputs)
#t)
(define* (strip-jar-timestamps #:key outputs (define* (strip-jar-timestamps #:key outputs
#:allow-other-keys) #:allow-other-keys)
@ -194,50 +193,49 @@ repack them. This is necessary to ensure that archives are reproducible."
(format #t "repacking ~a\n" jar) (format #t "repacking ~a\n" jar)
(let* ((dir (mkdtemp! "jar-contents.XXXXXX")) (let* ((dir (mkdtemp! "jar-contents.XXXXXX"))
(manifest (string-append dir "/META-INF/MANIFEST.MF"))) (manifest (string-append dir "/META-INF/MANIFEST.MF")))
(and (with-directory-excursion dir (with-directory-excursion dir
(zero? (system* "jar" "xf" jar))) (invoke "jar" "xf" jar))
(delete-file jar) (delete-file jar)
;; XXX: copied from (gnu build install) ;; XXX: copied from (gnu build install)
(for-each (lambda (file) (for-each (lambda (file)
(let ((s (lstat file))) (let ((s (lstat file)))
(unless (eq? (stat:type s) 'symlink) (unless (eq? (stat:type s) 'symlink)
(utime file 0 0 0 0)))) (utime file 0 0 0 0))))
(find-files dir #:directories? #t)) (find-files dir #:directories? #t))
;; The jar tool will always set the timestamp on the manifest file ;; The jar tool will always set the timestamp on the manifest file
;; and the containing directory to the current time, even when we ;; and the containing directory to the current time, even when we
;; reuse an existing manifest file. To avoid this we use "zip" ;; reuse an existing manifest file. To avoid this we use "zip"
;; instead of "jar". It is important that the manifest appears ;; instead of "jar". It is important that the manifest appears
;; first. ;; first.
(with-directory-excursion dir (with-directory-excursion dir
(let* ((files (find-files "." ".*" #:directories? #t)) (let* ((files (find-files "." ".*" #:directories? #t))
;; To ensure that the reference scanner can detect all ;; To ensure that the reference scanner can detect all
;; store references in the jars we disable compression ;; store references in the jars we disable compression
;; with the "-0" option. ;; with the "-0" option.
(command (if (file-exists? manifest) (command (if (file-exists? manifest)
`("zip" "-0" "-X" ,jar ,manifest ,@files) `("zip" "-0" "-X" ,jar ,manifest ,@files)
`("zip" "-0" "-X" ,jar ,@files)))) `("zip" "-0" "-X" ,jar ,@files))))
(unless (zero? (apply system* command)) (apply invoke command)))
(error "'zip' failed")))) (utime jar 0 0)
(utime jar 0 0) #t))
#t)))
(every (match-lambda (for-each (match-lambda
((output . directory) ((output . directory)
(every repack-archive (find-files directory "\\.jar$")))) (for-each repack-archive (find-files directory "\\.jar$"))))
outputs)) outputs)
#t)
(define* (check #:key target (make-flags '()) (tests? (not target)) (define* (check #:key target (make-flags '()) (tests? (not target))
(test-target "check") (test-target "check")
#:allow-other-keys) #:allow-other-keys)
(if tests? (if tests?
(zero? (apply system* `("ant" ,test-target ,@make-flags))) (apply invoke `("ant" ,test-target ,@make-flags))
(begin (format #t "test suite not run~%"))
(format #t "test suite not run~%") #t)
#t)))
(define* (install #:key (make-flags '()) #:allow-other-keys) (define* (install #:key (make-flags '()) #:allow-other-keys)
(zero? (apply system* `("ant" "install" ,@make-flags)))) (apply invoke `("ant" "install" ,@make-flags)))
(define %standard-phases (define %standard-phases
(modify-phases gnu:%standard-phases (modify-phases gnu:%standard-phases

View File

@ -31,7 +31,7 @@
(define* (ant-build-javadoc #:key (target "javadoc") (make-flags '()) (define* (ant-build-javadoc #:key (target "javadoc") (make-flags '())
#:allow-other-keys) #:allow-other-keys)
(zero? (apply system* `("ant" ,target ,@make-flags)))) (apply invoke `("ant" ,target ,@make-flags)))
(define* (install-jars jar-directory) (define* (install-jars jar-directory)
"Install jar files from JAR-DIRECTORY to the default target directory. This "Install jar files from JAR-DIRECTORY to the default target directory. This

View File

@ -58,15 +58,14 @@
(mkdir build-dir) (mkdir build-dir)
(chdir build-dir) (chdir build-dir)
(zero? (apply system* "meson" args)))) (apply invoke "meson" args)))
(define* (build #:key parallel-build? (define* (build #:key parallel-build?
#:allow-other-keys) #:allow-other-keys)
"Build a given meson package." "Build a given meson package."
(zero? (apply system* "ninja" (invoke "ninja" "-j" (if parallel-build?
(if parallel-build? (number->string (parallel-job-count))
`("-j" ,(number->string (parallel-job-count))) "1")))
'("-j" "1")))))
(define* (check #:key test-target parallel-tests? tests? (define* (check #:key test-target parallel-tests? tests?
#:allow-other-keys) #:allow-other-keys)
@ -75,13 +74,13 @@
(number->string (parallel-job-count)) (number->string (parallel-job-count))
"1")) "1"))
(if tests? (if tests?
(zero? (system* "ninja" test-target)) (invoke "ninja" test-target)
(begin (begin
(format #t "test suite not run~%") (format #t "test suite not run~%")
#t))) #t)))
(define* (install #:rest args) (define* (install #:rest args)
(zero? (system* "ninja" "install"))) (invoke "ninja" "install"))
(define* (fix-runpath #:key (elf-directories '("lib" "lib64" "libexec" (define* (fix-runpath #:key (elf-directories '("lib" "lib64" "libexec"
"bin" "sbin")) "bin" "sbin"))
@ -135,7 +134,7 @@ for example libraries only needed for the tests."
(find-files dir elf-pred)) (find-files dir elf-pred))
existing-elf-dirs)))) existing-elf-dirs))))
(for-each (lambda (elf-file) (for-each (lambda (elf-file)
(system* "patchelf" "--shrink-rpath" elf-file) (invoke "patchelf" "--shrink-rpath" elf-file)
(handle-file elf-file elf-list)) (handle-file elf-file elf-list))
elf-list))))) elf-list)))))
(for-each handle-output outputs) (for-each handle-output outputs)