gnu: openjdk: Disallow references to the JDK used for build.

This ensures JDKs don't unintentionally keep references to the one used
to build them, as reported at <https://issues.guix.gnu.org/31719#7> and
fixed by 97a43db8b4.

* gnu/packages/java.scm (icedtea-8)[arguments]: Add #:disallowed-references.
(openjdk9)[arguments]: Likewise.
(openjdk10)[arguments]: Likewise.
(openjdk11)[arguments]: Likewise.
This commit is contained in:
Ludovic Courtès 2021-04-21 12:53:54 +02:00
parent 668384d160
commit 78789cb6e2
No known key found for this signature in database
GPG key ID: 090B11993D9AEBB5

View file

@ -1749,6 +1749,9 @@ (define-public icedtea-8
((guix build ant-build-system) ((guix build ant-build-system)
(guix build syscalls) (guix build syscalls)
,@%gnu-build-system-modules) ,@%gnu-build-system-modules)
#:disallowed-references ((,icedtea-7 "jdk"))
,@(substitute-keyword-arguments (package-arguments icedtea-7) ,@(substitute-keyword-arguments (package-arguments icedtea-7)
((#:modules modules) ((#:modules modules)
`((guix build utils) `((guix build utils)
@ -1902,6 +1905,9 @@ (define-public openjdk9
#:imported-modules #:imported-modules
((guix build syscalls) ((guix build syscalls)
,@%gnu-build-system-modules) ,@%gnu-build-system-modules)
#:disallowed-references (,icedtea-8 (,icedtea-8 "jdk"))
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-after 'patch-source-shebangs 'fix-java-shebangs (add-after 'patch-source-shebangs 'fix-java-shebangs
@ -2097,7 +2103,9 @@ (define-public openjdk10
"--with-libjpeg=system" "--with-libjpeg=system"
"--with-native-debug-symbols=zipped" "--with-native-debug-symbols=zipped"
(string-append "--prefix=" (assoc-ref outputs "out"))) (string-append "--prefix=" (assoc-ref outputs "out")))
#t)))))) #t))))
((#:disallowed-references _ '())
`(,openjdk9 (,openjdk9 "jdk")))))
(native-inputs (native-inputs
`(("openjdk9" ,openjdk9) `(("openjdk9" ,openjdk9)
("openjdk9:jdk" ,openjdk9 "jdk") ("openjdk9:jdk" ,openjdk9 "jdk")
@ -2127,6 +2135,9 @@ (define-public openjdk11
(arguments (arguments
`(#:imported-modules ((guix build syscalls) `(#:imported-modules ((guix build syscalls)
,@%gnu-build-system-modules) ,@%gnu-build-system-modules)
#:disallowed-references (,openjdk10 (,openjdk10 "jdk"))
#:tests? #f; requires jtreg #:tests? #f; requires jtreg
;; TODO package jtreg ;; TODO package jtreg
#:configure-flags #:configure-flags