From 42b2dbb2d09ab5706523f25951f51289e3ad6181 Mon Sep 17 00:00:00 2001 Message-ID: <42b2dbb2d09ab5706523f25951f51289e3ad6181.1694635452.git.arne_bab@web.de> In-Reply-To: References: From: Arne Babenhauserheide Date: Wed, 13 Sep 2023 22:00:55 +0200 Subject: [PATCH 2/4] Add syntax make-openjdk-release-candidate for versions like 21+35 * gnu/packages/java.scm (make-openjdk-release-candidate): new procedure --- gnu/packages/java.scm | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index f7464e2168..0c22f4def9 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -1431,6 +1431,45 @@ (define-syntax make-openjdk field ...))))))) +(define-syntax make-openjdk-release-candidate + ;; Return an OpenJDK package at VERSION with checksum HASH, using BOOTSTRAP, + ;; the bootstrap package. One or more FIELD can be provided to further + ;; refine the package definition; for convenience, the BASE, NAME and + ;; VERSION are defined in their scope. + (lambda (x) + (syntax-case x () + ((_ bootstrap version* hash field ...) + (with-syntax ((base (datum->syntax x 'base)) + (name (datum->syntax x 'name)) + (version (datum->syntax x 'version))) + #'(let ((base (package + (inherit bootstrap) + (name "openjdk") + (version version*) + (source + (origin + (inherit (package-source bootstrap)) + (method git-fetch) + (uri (git-reference + (url (format + #f "https://github.com/openjdk/jdk~au" + (version-prefix-+ version*))) + (commit (string-append "jdk-" version*)))) + (file-name (git-file-name name version)) + (sha256 (base32 hash)))) + (native-inputs + (modify-inputs (package-native-inputs bootstrap) + (replace "openjdk" bootstrap))) + (home-page (string-append + "https://openjdk.java.net/projects/jdk/" + (version-major version))))) + (name "openjdk") + (version version*)) + (package + (inherit base) + field + ...))))))) + (define-public openjdk12 (make-openjdk openjdk11 "12.33" "0mbhdrk12b6878kby0flnbak7444dlpm0ihlmf92vk59y1c02bc2" -- 2.41.0