diff mbox series

[bug#49597,core-updates,14/15] gnu: Use 'search-input-file' when looking for .jar files.

Message ID 20210716155420.32447-14-ludo@gnu.org
State Accepted
Headers show
Series Ajust packages to label-less input style | expand

Checks

Context Check Description
cbaines/comparison success View comparision
cbaines/git branch success View Git branch
cbaines/applying patch fail View Laminar job
cbaines/issue success View issue

Commit Message

Ludovic Courtès July 16, 2021, 3:54 p.m. UTC
* gnu/packages/bioinformatics.scm (java-picard-1.113): Use
'search-input-file' when looking for *.jar.
(fastqc): Likewise.
* gnu/packages/groovy.scm (groovy): Likewise.
* gnu/packages/java.scm (ant-bootstrap): Likewise.
(ecj-bootstrap): Likewise.
(java-cisd-base): Likewise.
(java-cisd-args4j): Likewise.
(java-cisd-jhdf5): Likewise.
(java-native-access): Likewise.
(java-native-access-platform): Likewise.
* gnu/packages/maths.scm (hdf-java): Likewise.
---
 gnu/packages/bioinformatics.scm | 20 ++++-----
 gnu/packages/groovy.scm         |  2 +-
 gnu/packages/java.scm           | 76 +++++++++++++++++----------------
 gnu/packages/maths.scm          |  3 +-
 4 files changed, 49 insertions(+), 52 deletions(-)

Comments

M July 18, 2021, 3:56 p.m. UTC | #1
> diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
> index fdfd044926..f4a426e559 100644
> --- a/gnu/packages/java.scm
> +++ b/gnu/packages/java.scm
> @@ -382,8 +382,7 @@ JNI.")
>               (setenv "JAVAC"
>                       (search-input-file inputs "/bin/jikes"))
>               (setenv "CLASSPATH"
> -                     (string-append (assoc-ref inputs "jamvm")
> -                                    "/lib/rt.jar"))
> +                     (search-input-file inputs "/lib/rt.jar"))
>  
>               ;; Ant complains if this file doesn't exist.
>               (setenv "HOME" "/tmp")

This is "ant-bootstrap", right?
"jikes" and "jamvm" are in 'native-inputs',
so 'search-input-file (or native-inputs inputs) [...]' is required
here.

> @@ -486,8 +485,7 @@ build process and its dependencies, whereas Make uses Makefile format.")
>             (lambda* (#:key inputs #:allow-other-keys)
>               (setenv "CLASSPATH"
>                       (string-join
> -                      (cons (string-append (assoc-ref inputs "jamvm")
> -                                           "/lib/rt.jar")
> +                      (cons (search-input-file inputs "/lib/rt.jar")
>                              (find-files (string-append
>                                           (assoc-ref inputs "ant-bootstrap")
>                                           "/lib")

Likewise.

That issue was present in the original code, though,
but something to consider.

Greetings,
Maxime.
Ludovic Courtès July 19, 2021, 2:52 p.m. UTC | #2
Maxime Devos <maximedevos@telenet.be> skribis:

>> diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
>> index fdfd044926..f4a426e559 100644
>> --- a/gnu/packages/java.scm
>> +++ b/gnu/packages/java.scm
>> @@ -382,8 +382,7 @@ JNI.")
>>               (setenv "JAVAC"
>>                       (search-input-file inputs "/bin/jikes"))
>>               (setenv "CLASSPATH"
>> -                     (string-append (assoc-ref inputs "jamvm")
>> -                                    "/lib/rt.jar"))
>> +                     (search-input-file inputs "/lib/rt.jar"))
>>  
>>               ;; Ant complains if this file doesn't exist.
>>               (setenv "HOME" "/tmp")
>
> This is "ant-bootstrap", right?
> "jikes" and "jamvm" are in 'native-inputs',
> so 'search-input-file (or native-inputs inputs) [...]' is required
> here.

[...]

> That issue was present in the original code, though,
> but something to consider.

Ah, good catch.  Let’s address it separately.

Thanks,
Ludo’.
diff mbox series

Patch

diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index d57c00a451..7a8e5f16c0 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -4379,9 +4379,7 @@  VCF.")
            (lambda* (#:key inputs #:allow-other-keys)
              (substitute* "build.xml"
                (("\\$\\{lib\\}/apache-ant-1.8.2-bzip2.jar")
-                (string-append (assoc-ref inputs "ant")
-                               "/lib/ant.jar")))
-             #t))
+                (search-input-file inputs "/lib/ant.jar")))))
          (add-after 'unpack 'make-test-target-independent
            (lambda* (#:key inputs #:allow-other-keys)
              (substitute* "build.xml"
@@ -4478,15 +4476,13 @@  VCF.")
            (lambda* (#:key inputs #:allow-other-keys)
              (substitute* "build.xml"
                (("jbzip2-0.9.jar")
-                (string-append (assoc-ref inputs "java-jbzip2")
-                               "/share/java/jbzip2.jar"))
+                (search-input-file inputs "/share/java/jbzip2.jar"))
                (("sam-1.103.jar")
-                (string-append (assoc-ref inputs "java-picard-1.113")
-                               "/share/java/sam-1.112.jar"))
+                (search-input-file inputs
+                                   "/share/java/sam-1.112.jar"))
                (("cisd-jhdf5.jar")
-                (string-append (assoc-ref inputs "java-cisd-jhdf5")
-                               "/share/java/sis-jhdf5.jar")))
-             #t))
+                (search-input-file inputs
+                                   "/share/java/sis-jhdf5.jar")))))
          ;; There is no installation target
          (replace 'install
            (lambda* (#:key inputs outputs #:allow-other-keys)
@@ -9137,8 +9133,8 @@  browser.")
                  (substitute* "bin/linux/fseq"
                    (("java") (which "java"))
                    (("\\$REALDIR/../lib/commons-cli-1.1.jar")
-                    (string-append (assoc-ref inputs "java-commons-cli")
-                                   "/share/java/commons-cli.jar"))
+                    (search-input-file inputs
+                                       "/share/java/commons-cli.jar"))
                    (("REALDIR=.*")
                     (string-append "REALDIR=" bin "\n")))
                  (install-file "README.txt" doc)
diff --git a/gnu/packages/groovy.scm b/gnu/packages/groovy.scm
index c44a17b59e..73a62e1045 100644
--- a/gnu/packages/groovy.scm
+++ b/gnu/packages/groovy.scm
@@ -827,7 +827,7 @@  and modify groovy's @dfn{Abstract Syntax Tree} (AST)."))))
                      "java-jansi" "java-jline-2"))
                  ;; antlr.jar is present twice in antlr2.  Symlink doesn't like
                  ;; it, so we symlink it here.
-                 (symlink (string-append (assoc-ref inputs "antlr2") "/lib/antlr.jar")
+                 (symlink (search-input-file inputs "/lib/antlr.jar")
                           (string-append out-lib "/antlr.jar"))
                  (for-each
                    (lambda (tool)
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index fdfd044926..f4a426e559 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -382,8 +382,7 @@  JNI.")
              (setenv "JAVAC"
                      (search-input-file inputs "/bin/jikes"))
              (setenv "CLASSPATH"
-                     (string-append (assoc-ref inputs "jamvm")
-                                    "/lib/rt.jar"))
+                     (search-input-file inputs "/lib/rt.jar"))
 
              ;; Ant complains if this file doesn't exist.
              (setenv "HOME" "/tmp")
@@ -486,8 +485,7 @@  build process and its dependencies, whereas Make uses Makefile format.")
            (lambda* (#:key inputs #:allow-other-keys)
              (setenv "CLASSPATH"
                      (string-join
-                      (cons (string-append (assoc-ref inputs "jamvm")
-                                           "/lib/rt.jar")
+                      (cons (search-input-file inputs "/lib/rt.jar")
                             (find-files (string-append
                                          (assoc-ref inputs "ant-bootstrap")
                                          "/lib")
@@ -3221,19 +3219,22 @@  Main-Class: org.eclipse.jdt.internal.compiler.batch.Main\n"
              (lambda* (#:key inputs #:allow-other-keys)
                (substitute* "build/build.xml"
                  (("\\$\\{lib\\}/testng/testng-jdk15.jar")
-                  (string-append (assoc-ref inputs "java-testng")
-                                 "/share/java/java-testng.jar"))
+                  (search-input-file inputs
+                                     "/share/java/java-testng.jar"))
                  (("\\$\\{lib\\}/commons-lang/commons-lang.jar")
-                  (string-append (assoc-ref inputs "java-commons-lang")
-                                 "/share/java/commons-lang-"
-                                 ,(package-version java-commons-lang) ".jar"))
+                  (search-input-file inputs
+                                     (string-append
+                                      "/share/java/commons-lang-"
+                                      ,(package-version java-commons-lang)
+                                      ".jar")))
                  (("\\$\\{lib\\}/commons-io/commons-io.jar")
-                  (string-append (assoc-ref inputs "java-commons-io")
-                                 "/lib/m2/commons-io/commons-io/"
-                                 ,(package-version java-commons-io)
-                                 "/commons-io-"
-                                 ,(package-version java-commons-io)
-                                 ".jar"))
+                  (search-input-file inputs
+                                     (string-append
+                                      "/lib/m2/commons-io/commons-io/"
+                                      ,(package-version java-commons-io)
+                                      "/commons-io-"
+                                      ,(package-version java-commons-io)
+                                      ".jar")))
                  ;; Remove dependency on svn
                  (("<build-info.*") "")
                  (("\\$\\{revision.number\\}")
@@ -3406,8 +3407,7 @@  libraries from the SIS division at ETH Zurich like jHDF5.")
                  (rename-file "build-common.xml.new" "build-common.xml"))
                (substitute* "build/build.xml"
                  (("\\$\\{lib\\}/cisd-base/cisd-base.jar")
-                  (string-append (assoc-ref inputs "java-cisd-base")
-                                 "/share/java/sis-base.jar"))
+                  (search-input-file inputs "/share/java/sis-base.jar"))
                  ;; Remove dependency on svn
                  (("<build-info.*") "")
                  (("\\$\\{revision.number\\}")
@@ -3509,29 +3509,32 @@  libraries from the SIS division at ETH Zurich like jHDF5.")
              (lambda* (#:key inputs #:allow-other-keys)
                (substitute* "../build_resources/ant/build-common.xml"
                  (("../libraries/testng/testng-jdk15.jar")
-                  (string-append (assoc-ref inputs "java-testng")
-                                 "/share/java/java-testng.jar")))
+                  (search-input-file inputs
+                                     "/share/java/java-testng.jar")))
                (substitute* "build/build.xml"
                  (("\\$\\{lib\\}/sis-base/sis-base.jar")
-                  (string-append (assoc-ref inputs "java-cisd-base")
-                                 "/share/java/sis-base.jar"))
+                  (search-input-file inputs
+                                     "/share/java/sis-base.jar"))
                  (("\\$\\{lib\\}/cisd-args4j/cisd-args4j.jar")
-                  (string-append (assoc-ref inputs "java-cisd-args4j")
-                                 "/share/java/cisd-args4j.jar"))
+                  (search-input-file inputs
+                                     "/share/java/cisd-args4j.jar"))
                  (("\\$\\{lib\\}/commons-lang/commons-lang.jar")
-                  (string-append (assoc-ref inputs "java-commons-lang")
-                                 "/share/java/commons-lang-"
-                                 ,(package-version java-commons-lang) ".jar"))
+                  (search-input-file inputs
+                                     (string-append
+                                      "/share/java/commons-lang-"
+                                      ,(package-version java-commons-lang)
+                                      ".jar")))
                  (("\\$\\{lib\\}/commons-io/commons-io.jar")
-                  (string-append (assoc-ref inputs "java-commons-io")
-                                 "/lib/m2/commons-io/commons-io/"
-                                 ,(package-version java-commons-io)
-                                 "/commons-io-"
-                                 ,(package-version java-commons-io)
-                                 ".jar"))
+                  (search-input-file inputs
+                                     (string-append
+                                      "/lib/m2/commons-io/commons-io/"
+                                      ,(package-version java-commons-io)
+                                      "/commons-io-"
+                                      ,(package-version java-commons-io)
+                                      ".jar")))
                  (("\\$\\{lib\\}/testng/testng-jdk15.jar")
-                  (string-append (assoc-ref inputs "java-testng")
-                                 "/share/java/java-testng.jar"))
+                  (search-input-file inputs
+                                     "/share/java/java-testng.jar"))
                  (("\\$\\{lib\\}/junit4/junit.jar")
                   (car (find-files (assoc-ref inputs "java-junit") "jar$")))
                  (("\\$\\{lib\\}/jmock/hamcrest/hamcrest-core.jar")
@@ -12916,7 +12919,7 @@  from ORO, Inc.")
            (lambda* (#:key inputs #:allow-other-keys)
              (substitute* "build.xml"
                ;; Since we removed the bundled ant.jar, give the correct path
-               (("lib/ant.jar") (string-append (assoc-ref inputs "ant") "/lib/ant.jar"))
+               (("lib/ant.jar") (search-input-file inputs "/lib/ant.jar"))
                ;; We removed generated native libraries. We can only rebuild one
                ;; so don't fail if we can't find a native library for another architecture.
                (("zipfileset") "zipfileset erroronmissingarchive=\"false\""))
@@ -12970,8 +12973,7 @@  Java method invocation.")
            (lambda* (#:key inputs #:allow-other-keys)
              (substitute* "nbproject/project.properties"
                (("../../build/jna.jar")
-                (string-append (assoc-ref inputs "java-native-access")
-                               "/share/java/jna.jar"))
+                (search-input-file inputs "/share/java/jna.jar"))
                (("../../lib/hamcrest-core-.*.jar")
                 (car (find-files (assoc-ref inputs "java-hamcrest-core")
                                  "jar$")))
diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index 3e0b5d0c4b..7362ce9a8e 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -1348,8 +1348,7 @@  extremely large and complex data collections.")
                             "hdf/hdf5lib/exceptions/Makefile.in"
                             "hdf/hdflib/Makefile.in")
                (("\\$\\(TOP\\)/lib/slf4j-api-1\\.7\\.5\\.jar")
-                (string-append (assoc-ref inputs "slf4j-api")
-                               "/share/java/slf4j-api.jar")))
+                (search-input-file inputs "/share/java/slf4j-api.jar")))
              ;; Replace outdated config.sub and config.guess:
              (with-directory-excursion "config"
                (for-each (lambda (file)