gnu: Add java-gson-2.8.6.

This introduces a new package rather than upgrading the exist java-gson
package because it is built using OpenJDK11; I didn't want to have to
propagate that JDK dependency to the other packages that use it.

OpenJDK 11 was chosen becuase this dependency was introduced for
tla2tools.

* gnu/packages/java.scm (java-gson-2.8.6): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
This commit is contained in:
Mike Gerwitz 2021-04-15 21:23:42 -04:00 committed by Ludovic Courtès
parent 0ca37f3c7d
commit 45915d331a
No known key found for this signature in database
GPG key ID: 090B11993D9AEBB5

View file

@ -15,6 +15,7 @@
;;; Copyright © 2020 Raghav Gururajan <raghavgururajan@disroot.org>
;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2021 Vincent Legoll <vincent.legoll@gmail.com>
;;; Copyright © 2021 Mike Gerwitz <mtg@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -11762,6 +11763,37 @@ (define-public java-gson
including pre-existing objects that you do not have source-code of.")
(license license:asl2.0)))
;; This requires a different Java version than 2.8.2 above
(define-public java-gson-2.8.6
(package
(inherit java-gson)
(name "java-gson")
(version "2.8.6")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/google/gson")
(commit (string-append "gson-parent-" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0kk5p3vichdb0ph1lzknrcpbklgnmq455mngmjpxvvj29p3rgpk3"))))
(arguments
`(#:jar-name "gson.jar"
#:jdk ,openjdk11
#:source-dir "gson/src/main/java"
#:test-dir "gson/src/test"
#:phases
(modify-phases %standard-phases
;; avoid Maven dependency
(add-before 'build 'fill-template
(lambda _
(with-directory-excursion "gson/src/main"
(copy-file "java-templates/com/google/gson/internal/GsonBuildConfig.java"
"java/com/google/gson/internal/GsonBuildConfig.java")
(substitute* "java/com/google/gson/internal/GsonBuildConfig.java"
(("\\$\\{project.version\\}") ,version))))))))))
(define-public java-hawtjni
(package
(name "java-hawtjni")