summaryrefslogtreecommitdiff
path: root/gnu/packages/java-compression.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/java-compression.scm')
-rw-r--r--gnu/packages/java-compression.scm93
1 files changed, 90 insertions, 3 deletions
diff --git a/gnu/packages/java-compression.scm b/gnu/packages/java-compression.scm
index 091ffdd9196..ebb6e48d17b 100644
--- a/gnu/packages/java-compression.scm
+++ b/gnu/packages/java-compression.scm
@@ -323,6 +323,35 @@ It can be used as a replacement for the Apache @code{CBZip2InputStream} /
323algorithms in Java.") 323algorithms in Java.")
324 (license license:public-domain))) 324 (license license:public-domain)))
325 325
326(define-public java-xz-for-graal-truffle
327 (package
328 (inherit java-xz)
329 (name "java-xz-for-graal-truffle")
330 (version "1.10")
331 (source (origin
332 (method url-fetch/zipbomb)
333 (uri (string-append "https://tukaani.org/xz/xz-java-" version ".zip"))
334 (sha256
335 (base32 "1rbzbzab8iizic4yqh2ps9hmjxxym7hghc4gkiggscpl8bd54an0"))))
336 (arguments
337 `(#:tests? #f
338 #:jdk ,openjdk
339 #:phases
340 (modify-phases %standard-phases
341 (add-after 'build 'create-sources-jar
342 (lambda _
343 ;; Create a sources JAR from the source files.
344 ;; Only include org/tukaani/xz - exclude demo files in root.
345 (invoke "jar" "cf" "build/jar/xz-sources.jar"
346 "-C" "src" "org")))
347 (replace 'install
348 (lambda* (#:key outputs #:allow-other-keys)
349 (let* ((out (assoc-ref outputs "out"))
350 (share (string-append out "/share/java")))
351 (mkdir-p share)
352 (install-file "build/jar/xz.jar" share)
353 (install-file "build/jar/xz-sources.jar" share)))))))))
354
326(define-public java-zstd 355(define-public java-zstd
327 (package 356 (package
328 (name "java-zstd") 357 (name "java-zstd")
@@ -338,9 +367,9 @@ algorithms in Java.")
338 "0z26z04sc4j6k0g4gvq4xc86mc4wiyp1j7z5hh6wpqgmy9b6h2zb")))) 367 "0z26z04sc4j6k0g4gvq4xc86mc4wiyp1j7z5hh6wpqgmy9b6h2zb"))))
339 (build-system ant-build-system) 368 (build-system ant-build-system)
340 (arguments 369 (arguments
341 `(#:jar-name "java-zstd.jar" 370 `(#:jar-name "zstd-jni.jar"
342 #:source-dir "src/main/java" 371 #:source-dir "src/main/java"
343 #:tests? #f; Require scala 372 #:tests? #f
344 #:phases 373 #:phases
345 (modify-phases %standard-phases 374 (modify-phases %standard-phases
346 (add-before 'build 'generate-version 375 (add-before 'build 'generate-version
@@ -352,7 +381,21 @@ algorithms in Java.")
352 381
353public class ZstdVersion { 382public class ZstdVersion {
354 public static final String VERSION = \"~a\"; 383 public static final String VERSION = \"~a\";
355}" ,version)))))))) 384}" ,version)))))
385 (add-before 'install 'generate-pom
386 (lambda _
387 (with-output-to-file "pom.xml"
388 (lambda _
389 (format #t "<?xml version=\"1.0\" encoding=\"UTF-8\"?>
390<project>
391 <modelVersion>4.0.0</modelVersion>
392 <groupId>com.github.luben</groupId>
393 <artifactId>zstd-jni</artifactId>
394 <version>~a</version>
395 <packaging>jar</packaging>
396 <name>zstd-jni</name>
397</project>" ,version)))))
398 (replace 'install (install-from-pom "pom.xml")))))
356 (inputs 399 (inputs
357 `(("zstd" ,zstd))) 400 `(("zstd" ,zstd)))
358 (home-page "https://github.com/luben/zstd-jni") 401 (home-page "https://github.com/luben/zstd-jni")
@@ -363,3 +406,47 @@ compression needs. This package provides JNI bindings for Zstd native
363library that provides fast and high compression lossless algorithm for 406library that provides fast and high compression lossless algorithm for
364Android, Java and all JVM languages.") 407Android, Java and all JVM languages.")
365 (license license:bsd-2))) 408 (license license:bsd-2)))
409
410(define-public java-zstd-1.5.7
411 (package
412 (inherit java-zstd)
413 (version "1.5.7")
414 (source (origin
415 (method git-fetch)
416 (uri (git-reference
417 (url "https://github.com/luben/zstd-jni")
418 (commit (string-append "v" version "-6"))))
419 (file-name (git-file-name "java-zstd" version))
420 (sha256
421 (base32
422 "014pmfix7rd1p1kmalvxyigqyiii5q3l7qahfnp32pz886pjd41i"))))
423 (arguments
424 `(#:jar-name "zstd-jni.jar"
425 #:source-dir "src/main/java"
426 #:tests? #f
427 #:phases
428 (modify-phases %standard-phases
429 (add-before 'build 'generate-version
430 (lambda _
431 (with-output-to-file
432 "src/main/java/com/github/luben/zstd/util/ZstdVersion.java"
433 (lambda _
434 (format #t "package com.github.luben.zstd.util;
435
436public class ZstdVersion {
437 public static final String VERSION = \"~a\";
438}" ,version)))))
439 (add-before 'install 'generate-pom
440 (lambda _
441 (with-output-to-file "pom.xml"
442 (lambda _
443 (format #t "<?xml version=\"1.0\" encoding=\"UTF-8\"?>
444<project>
445 <modelVersion>4.0.0</modelVersion>
446 <groupId>com.github.luben</groupId>
447 <artifactId>zstd-jni</artifactId>
448 <version>~a</version>
449 <packaging>jar</packaging>
450 <name>zstd-jni</name>
451</project>" ,version)))))
452 (replace 'install (install-from-pom "pom.xml")))))))