civodul pushed a commit to branch version-1.3.0
in repository guix.

commit 92b02d0c18a6783c751a5b8b28d6bfbb77184ac7
Author: Carlo Zancanaro <[email protected]>
AuthorDate: Sat Apr 17 16:33:06 2021 +1000

    gnu: openjdk: Clean up runtime dependencies between Java versions.
    
    * gnu/packages/java.scm (icedtea-8, openjdk9, openjdk11): Do not consider
    icedtea/openjdk input paths when rewriting JNI libraries.
    
    Signed-off-by: Andreas Enge <[email protected]>
---
 gnu/packages/java.scm | 36 ++++++++++++++++++++++++++----------
 1 file changed, 26 insertions(+), 10 deletions(-)

diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 207f136..3c4013a 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -2,7 +2,7 @@
 ;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020, 2021 Ricardo Wurmus 
<[email protected]>
 ;;; Copyright © 2016 Leo Famulari <[email protected]>
 ;;; Copyright © 2016, 2017 Roel Janssen <[email protected]>
-;;; Copyright © 2017, 2019 Carlo Zancanaro <[email protected]>
+;;; Copyright © 2017, 2019, 2021 Carlo Zancanaro <[email protected]>
 ;;; Copyright © 2017-2020 Julien Lepiller <[email protected]>
 ;;; Copyright © 2017 Thomas Danckaert <[email protected]>
 ;;; Copyright © 2016, 2017, 2018 Alex Vong <[email protected]>
@@ -1792,8 +1792,13 @@ new Date();"))
                  (add-after 'unpack 'patch-jni-libs
                    ;; Hardcode dynamically loaded libraries.
                    (lambda _
-                     (let* ((library-path (search-path-as-string->list
-                                           (getenv "LIBRARY_PATH")))
+                     (use-modules (srfi srfi-1))
+                     (define (icedtea-or-openjdk? path)
+                       (or (string-contains path "openjdk")
+                           (string-contains path "icedtea")))
+                     (let* ((library-path (remove icedtea-or-openjdk?
+                                                  (search-path-as-string->list
+                                                   (getenv "LIBRARY_PATH"))))
                             (find-library (lambda (name)
                                             (search-path
                                              library-path
@@ -1931,12 +1936,18 @@ new Date();"))
          (add-after 'unpack 'patch-jni-libs
            ;; Hardcode dynamically loaded libraries.
            (lambda _
-             (let* ((library-path (search-path-as-string->list
-                                   (getenv "LIBRARY_PATH")))
+             (use-modules (srfi srfi-1))
+             (define (icedtea-or-openjdk? path)
+               (or (string-contains path "openjdk")
+                   (string-contains path "icedtea")))
+             (let* ((library-path (remove icedtea-or-openjdk?
+                                          (search-path-as-string->list
+                                           (getenv "LIBRARY_PATH"))))
                     (find-library (lambda (name)
-                                    (search-path
-                                     library-path
-                                     (string-append "lib" name ".so")))))
+                                    (or (search-path
+                                         library-path
+                                         (string-append "lib" name ".so"))
+                                        (string-append "lib" name ".so")))))
                (for-each
                 (lambda (file)
                   (catch 'decoding-error
@@ -2139,8 +2150,13 @@ new Date();"))
          (add-after 'unpack 'patch-jni-libs
            ;; Hardcode dynamically loaded libraries.
            (lambda _
-             (let* ((library-path (search-path-as-string->list
-                                   (getenv "LIBRARY_PATH")))
+             (use-modules (srfi srfi-1))
+             (define (icedtea-or-openjdk? path)
+               (or (string-contains path "openjdk")
+                   (string-contains path "icedtea")))
+             (let* ((library-path (remove icedtea-or-openjdk?
+                                          (search-path-as-string->list
+                                           (getenv "LIBRARY_PATH"))))
                     (find-library (lambda (name)
                                     (search-path
                                      library-path

Reply via email to