;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2017, 2019 Ricardo Wurmus ;;; Copyright © 2017, 2018 Julien Lepiller ;;; Copyright © 2018 Marius Bakke ;;; Copyright © 2018 Mark H Weaver ;;; Copyright © 2018, 2020 Tobias Geerinckx-Rice ;;; Copyright © 2021 Efraim Flashner ;;; ;;; This file is part of GNU Guix. ;;; ;;; GNU Guix is free software; you can redistribute it and/or modify it ;;; under the terms of the GNU General Public License as published by ;;; the Free Software Foundation; either version 3 of the License, or (at ;;; your option) any later version. ;;; ;;; GNU Guix is distributed in the hope that it will be useful, but ;;; WITHOUT ANY WARRANTY; without even the implied warranty of ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;;; GNU General Public License for more details. ;;; ;;; You should have received a copy of the GNU General Public License ;;; along with GNU Guix. If not, see
aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gnu/packages/linux.scm55
1 files changed, 55 insertions, 0 deletions
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index 629a05209f..686303a0a2 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -150,6 +150,7 @@
#:use-module (gnu packages haskell-xyz)
#:use-module (gnu packages image)
#:use-module (gnu packages kde-frameworks)
+ #:use-module (gnu packages libevent)
#:use-module (gnu packages libunwind)
#:use-module (gnu packages libusb)
#:use-module (gnu packages llvm)
@@ -9063,6 +9064,60 @@ the @file{uapi/misc/cxi.h} C header file for use by user-land software.
Currently the Linux driver itself is missing from this package.")
(license license:gpl2+))))
+(define-public libcxi
+ (let ((commit "5b6f8b5d57017c7963debb379d5693c59aca63ed")
+ (revision "0"))
+ (package
+ (name "libcxi")
+ (version (git-version "1.0.1" revision commit))
+ (home-page "https://github.com/HewlettPackard/shs-libcxi")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference (url home-page) (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1h3dhird8p11q4ziaxzg1hr5gxcgwx1limzdcyildyaw50dy549g"))))
+ (build-system gnu-build-system)
+ (arguments
+ (list #:configure-flags
+ #~(list "--disable-static"
+ (string-append "--with-udevrulesdir="
+ #$output "/lib/udev/rules.d"))
+
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-before 'configure 'set-cassini-file-names
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "utils/cxi_dump_csrs.py"
+ (("/usr/share/cassini-headers/csr_defs.json")
+ (search-input-file
+ inputs
+ "/share/cassini-headers/csr_defs.json"))))))))
+ (native-inputs (list autoconf
+ automake
+ libtool
+ pkg-config
+ python-wrapper))
+ (inputs (list libconfig
+ libuv
+ fuse-2
+ libyaml
+ libnl
+ numactl
+ eudev
+ (list lm-sensors "lib")))
+ (propagated-inputs (list cassini-headers cxi-driver))
+ (synopsis "Interface to the Cassini/Slingshot high-speed interconnect")
+ (description
+ "Libcxi provides applications with a low-level interface to the
+Cray/HPE Cassini high-speed @acronym{NIC, network interface controller}, also
+known as Slingshot.")
+
+ ;; License is spelled out in 'cray-libcxi.spec' and in source file
+ ;; headers.
+ (license (list license:lgpl2.1+ license:bsd-3))))) ;dual-licensed
+
(define-public libfabric
(package
(name "libfabric")
voke "java" "-cp" (string-append (getenv "CLASSPATH") ":build/classes" ":build/test-classes") "-Dtest.resources.dir=src/test/resources" "org.testng.TestNG" "-testclass" class)) (invoke "ant" "compile-tests") (test "org.iq80.snappy.SnappyFramedStreamTest") (test "org.iq80.snappy.SnappyStreamTest") #t)) (add-before 'build 'remove-hadoop-dependency (lambda _ ;; We don't have hadoop (delete-file "src/main/java/org/iq80/snappy/HadoopSnappyCodec.java") (delete-file "src/test/java/org/iq80/snappy/TestHadoopSnappyCodec.java") #t)) (replace 'install (install-from-pom "pom.xml"))))) (home-page "https://github.com/dain/snappy") (native-inputs (list java-guava java-snappy java-testng)) (synopsis "Java port of the Snappy (de)compressor") (description "Iq80-snappy is a port of the Snappy compressor and decompressor rewritten in pure Java. This compression code produces a byte-for-byte exact copy of the output created by the original C++ code, and is extremely fast.") (license license:asl2.0))) (define-public java-jbzip2 (package (name "java-jbzip2") (version "0.9.1") (source (origin (method url-fetch) (uri (string-append "https://storage.googleapis.com/" "google-code-archive-source/v2/" "code.google.com/jbzip2/" "source-archive.zip")) (file-name (string-append name "-" version ".zip")) (sha256 (base32 "0ncmhlqmrfmj96nqf6p77b9ws35lcfsvpfxzwxi2asissc83z1l3")))) (build-system ant-build-system) (native-inputs (list unzip java-junit)) (arguments `(#:tests? #f ; no tests #:jar-name "jbzip2.jar" #:source-dir "tags/release-0.9.1/src" #:phases (modify-phases %standard-phases (add-after 'unpack 'fix-encoding-problems (lambda _ ;; Some of the files we're patching are ;; ISO-8859-1-encoded, so choose it as the default ;; encoding so the byte encoding is preserved. (with-fluids ((%default-port-encoding #f)) (substitute* "tags/release-0.9.1/src/org/itadaki/bzip2/HuffmanAllocator.java" (("Milidi.") "Milidiu"))) #t))))) (home-page "https://code.google.com/archive/p/jbzip2/") (synopsis "Java bzip2 compression/decompression library") (description "Jbzip2 is a Java bzip2 compression/decompression library. It can be used as a replacement for the Apache @code{CBZip2InputStream} / @code{CBZip2OutputStream} classes.") (license license:expat))) (define-public java-xz (package (name "java-xz") (version "1.9") (source (origin (method url-fetch/zipbomb) (uri (string-append "https://tukaani.org/xz/xz-java-" version ".zip")) (sha256 (base32 "007d9f83277qn70swz9inqhyf0qxq6ygajpq5rqg0xgsyh1sdndi")))) (build-system ant-build-system) (arguments `(#:tests? #f; no tests #:jdk ,openjdk9 #:phases (modify-phases %standard-phases (add-before 'install 'generate-pom (lambda _ (copy-file "maven/pom_template.xml" "pom.xml") (substitute* "pom.xml" (("@VERSION@") ,version) (("@TITLE@") "XZ data compression") (("@HOMEPAGE@") "http://tukaani.org/xz/java.html")) #t)) (add-before 'install 'rename-jar (lambda _ (rename-file "build/jar/xz.jar" (string-append "build/jar/xz-" ,version ".jar")) #t)) (replace 'install (install-from-pom "pom.xml"))))) (native-inputs (list unzip)) (home-page "https://tukaani.org") (synopsis "XZ in Java") (description "Tukaani-xz is an implementation of xz compression/decompression algorithms in Java.") (license license:public-domain))) (define-public java-zstd (package (name "java-zstd") (version "1.5.2-3") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/luben/zstd-jni") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 (base32 "0z26z04sc4j6k0g4gvq4xc86mc4wiyp1j7z5hh6wpqgmy9b6h2zb")))) (build-system ant-build-system) (arguments `(#:jar-name "java-zstd.jar" #:source-dir "src/main/java" #:tests? #f; Require scala #:phases (modify-phases %standard-phases (add-before 'build 'generate-version (lambda _ (with-output-to-file "src/main/java/com/github/luben/zstd/util/ZstdVersion.java" (lambda _ (format #t "package com.github.luben.zstd.util; public class ZstdVersion { public static final String VERSION = \"~a\"; }" ,version)))))))) (inputs `(("zstd" ,zstd))) (home-page "https://github.com/luben/zstd-jni") (synopsis "JNI bindings for Zstd native library") (description "Zstd, short for Zstandard, is a lossless compression algorithm, which provides both good compression ratio and speed for standard compression needs. This package provides JNI bindings for Zstd native library that provides fast and high compression lossless algorithm for Android, Java and all JVM languages.") (license license:bsd-2)))