Compare commits
10 Commits
a251c78907
...
71d54f3ac4
Author | SHA1 | Date |
---|---|---|
Julien Lepiller | 71d54f3ac4 | |
Julien Lepiller | dd631a891c | |
Julien Lepiller | 14e01e313d | |
Julien Lepiller | 00ec39a4e4 | |
Julien Lepiller | 5392d9db46 | |
Andre A. Gomes | 42bec70a91 | |
Andre A. Gomes | 9b03e84e4e | |
Sharlatan Hellseher | fd48bc959b | |
Sharlatan Hellseher | 3b627af0e1 | |
Sharlatan Hellseher | 8fd37af45a |
|
@ -15402,9 +15402,9 @@ e.g., the expression you've just evaluated would briefly flash and so on.")
|
|||
(license license:gpl3+))))
|
||||
|
||||
(define-public emacs-sly
|
||||
;; Update together with sbcl-slynk .
|
||||
(let ((commit "df62abae73bd511885c9c7ec0ea7ea1469a00923")
|
||||
(revision "8"))
|
||||
;; Update together with sbcl-slynk.
|
||||
(let ((commit "9c43bf65b967e12cef1996f1af5f0671d8aecbf4")
|
||||
(revision "9"))
|
||||
;; Versions are not always tagged. Besides, latest master contains
|
||||
;; important fixes.
|
||||
(package
|
||||
|
@ -15419,7 +15419,7 @@ e.g., the expression you've just evaluated would briefly flash and so on.")
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1nxijv52bja6la2i3asq7kklpj5li25454n52sgsc6xnnfvakbsv"))))
|
||||
"15nyr02ykkws4q79jcmxcawddg8sgq9v5l8k7jv7gg3hnpzxjlb2"))))
|
||||
(build-system emacs-build-system)
|
||||
(native-inputs
|
||||
(list texinfo))
|
||||
|
|
|
@ -1940,7 +1940,7 @@ to the OSM opening hours specification.")
|
|||
(define-public josm
|
||||
(package
|
||||
(name "josm")
|
||||
(version "18646")
|
||||
(version "18822")
|
||||
(source (origin
|
||||
(method svn-fetch)
|
||||
(uri (svn-reference
|
||||
|
@ -1949,7 +1949,7 @@ to the OSM opening hours specification.")
|
|||
(recursive? #f)))
|
||||
(sha256
|
||||
(base32
|
||||
"0zr3p1i39wi0f29lgb3xrnv6lijrq5ia8jxn4wnq1yz0xdlbg98i"))
|
||||
"0b4q6n3jbqrh7dsfmcf2g0xdd1wjj62sjq8lwvggvrpqlk1fyn1b"))
|
||||
(file-name (string-append name "-" version "-checkout"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
|
@ -1963,17 +1963,18 @@ to the OSM opening hours specification.")
|
|||
(list java-commons-jcs
|
||||
java-commons-compress
|
||||
java-jmapviewer
|
||||
java-jsonp-api
|
||||
java-jsonp-impl ; runtime dependency
|
||||
java-jakarta-json
|
||||
java-jsr305
|
||||
java-metadata-extractor
|
||||
java-opening-hours-parser
|
||||
java-openjfx-media
|
||||
java-parsson ; runtime dependency
|
||||
java-signpost-core
|
||||
java-svg-salamander))
|
||||
(arguments
|
||||
`(#:tests? #f
|
||||
#:jar-name "josm.jar"
|
||||
#:jdk ,openjdk11
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'rm-build.xml
|
||||
|
|
|
@ -880,7 +880,14 @@ new Date();"))
|
|||
(build-system gnu-build-system)
|
||||
(outputs '("out" "jdk" "doc"))
|
||||
(arguments
|
||||
`(#:tests? #f; require jtreg
|
||||
`(#:imported-modules
|
||||
((guix build ant-build-system)
|
||||
,@%gnu-build-system-modules)
|
||||
#:modules
|
||||
((guix build utils)
|
||||
(guix build gnu-build-system)
|
||||
(ice-9 popen))
|
||||
#:tests? #f; require jtreg
|
||||
#:make-flags '("all")
|
||||
#:disallowed-references ,(list (gexp-input icedtea-8)
|
||||
(gexp-input icedtea-8 "jdk"))
|
||||
|
@ -973,6 +980,80 @@ new Date();"))
|
|||
(find-files "."
|
||||
"\\.c$|\\.h$"))
|
||||
#t)))
|
||||
;; By default OpenJDK only generates an empty keystore. In order to
|
||||
;; be able to use certificates in Java programs we need to generate a
|
||||
;; keystore from a set of certificates. For convenience we use the
|
||||
;; certificates from the nss-certs package.
|
||||
(add-after 'install 'install-keystore
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(use-modules (ice-9 rdelim))
|
||||
(let* ((keystore "cacerts")
|
||||
(certs-dir (search-input-directory inputs
|
||||
"etc/ssl/certs"))
|
||||
(keytool (string-append (assoc-ref outputs "jdk")
|
||||
"/bin/keytool")))
|
||||
(define (extract-cert file target)
|
||||
(call-with-input-file file
|
||||
(lambda (in)
|
||||
(call-with-output-file target
|
||||
(lambda (out)
|
||||
(let loop ((line (read-line in 'concat))
|
||||
(copying? #f))
|
||||
(cond
|
||||
((eof-object? line) #t)
|
||||
((string-prefix? "-----BEGIN" line)
|
||||
(display line out)
|
||||
(loop (read-line in 'concat) #t))
|
||||
((string-prefix? "-----END" line)
|
||||
(display line out)
|
||||
#t)
|
||||
(else
|
||||
(when copying? (display line out))
|
||||
(loop (read-line in 'concat) copying?)))))))))
|
||||
(define (import-cert cert)
|
||||
(format #t "Importing certificate ~a\n" (basename cert))
|
||||
(let ((temp "tmpcert"))
|
||||
(extract-cert cert temp)
|
||||
(let ((port (open-pipe* OPEN_WRITE keytool
|
||||
"-import"
|
||||
"-alias" (basename cert)
|
||||
"-keystore" keystore
|
||||
"-storepass" "changeit"
|
||||
"-file" temp)))
|
||||
(display "yes\n" port)
|
||||
(when (not (zero? (status:exit-val (close-pipe port))))
|
||||
(format #t "failed to import ~a\n" cert)))
|
||||
(delete-file temp)))
|
||||
|
||||
;; This is necessary because the certificate directory contains
|
||||
;; files with non-ASCII characters in their names.
|
||||
(setlocale LC_ALL "en_US.utf8")
|
||||
(setenv "LC_ALL" "en_US.utf8")
|
||||
|
||||
(copy-file (string-append (assoc-ref outputs "out")
|
||||
"/lib/security/cacerts")
|
||||
keystore)
|
||||
(chmod keystore #o644)
|
||||
(for-each import-cert (find-files certs-dir "\\.pem$"))
|
||||
(mkdir-p (string-append (assoc-ref outputs "out")
|
||||
"/lib/security"))
|
||||
(mkdir-p (string-append (assoc-ref outputs "jdk")
|
||||
"/lib/security"))
|
||||
|
||||
;; The cacerts files we are going to overwrite are chmod'ed as
|
||||
;; read-only (444) in icedtea-8 (which derives from this
|
||||
;; package). We have to change this so we can overwrite them.
|
||||
(chmod (string-append (assoc-ref outputs "out")
|
||||
"/lib/security/" keystore) #o644)
|
||||
(chmod (string-append (assoc-ref outputs "jdk")
|
||||
"/lib/security/" keystore) #o644)
|
||||
|
||||
(install-file keystore
|
||||
(string-append (assoc-ref outputs "out")
|
||||
"/lib/security"))
|
||||
(install-file keystore
|
||||
(string-append (assoc-ref outputs "jdk")
|
||||
"/lib/security")))))
|
||||
;; Some of the libraries in the lib/ folder link to libjvm.so.
|
||||
;; But that shared object is located in the server/ folder, so it
|
||||
;; cannot be found. This phase creates a symbolic link in the
|
||||
|
@ -1046,6 +1127,7 @@ new Date();"))
|
|||
("icedtea-8:jdk" ,icedtea-8 "jdk")
|
||||
;; XXX: The build system fails with newer versions of GNU Make.
|
||||
("make@4.2" ,gnu-make-4.2)
|
||||
("nss-certs" ,nss-certs)
|
||||
("unzip" ,unzip)
|
||||
("which" ,which)
|
||||
("zip" ,zip)))
|
||||
|
@ -1128,6 +1210,7 @@ new Date();"))
|
|||
`(("openjdk9" ,openjdk9)
|
||||
("openjdk9:jdk" ,openjdk9 "jdk")
|
||||
("make@4.2" ,gnu-make-4.2)
|
||||
("nss-certs" ,nss-certs)
|
||||
("unzip" ,unzip)
|
||||
("which" ,which)
|
||||
("zip" ,zip)))))
|
||||
|
@ -1154,6 +1237,7 @@ new Date();"))
|
|||
#:modules `((guix build gnu-build-system)
|
||||
(guix build utils)
|
||||
(ice-9 match)
|
||||
(ice-9 popen)
|
||||
(srfi srfi-1)
|
||||
(srfi srfi-26))
|
||||
#:disallowed-references (list (gexp-input openjdk10)
|
||||
|
@ -1396,6 +1480,7 @@ new Date();"))
|
|||
openjdk10
|
||||
`(,openjdk10 "jdk")
|
||||
gnu-make-4.2
|
||||
nss-certs
|
||||
pkg-config
|
||||
unzip
|
||||
which
|
||||
|
@ -13570,6 +13655,70 @@ and allows building a Java object model for JSON text using API classes
|
|||
parse, generate, transform and query) JSON messages. This package contains
|
||||
a reference implementation of that API.")))
|
||||
|
||||
(define-public java-jakarta-json
|
||||
(package
|
||||
(name "java-jakarta-json")
|
||||
(version "2.1.3")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/jakartaee/jsonp-api")
|
||||
(commit (string-append version "-RELEASE"))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1q600harqfhlf763l75j4fx7ai7ybp7ga06aiky2a2hg8mhz0s5f"))))
|
||||
(build-system ant-build-system)
|
||||
(arguments
|
||||
`(#:jar-name "jakarta-json.jar"
|
||||
#:source-dir "api/src/main/java"
|
||||
#:tests? #f; no tests
|
||||
#:jdk ,openjdk11))
|
||||
(home-page "https://github.com/jakartaee/jsonp-api")
|
||||
(synopsis "Portable API for JSON handling in Java")
|
||||
(description "This project contains API and Compatible Implementation of
|
||||
Jakarta JSON Processing specification. Jakarta JSON Processing provides
|
||||
portable APIs to parse, generate, transform, and query JSON documents.")
|
||||
;; with classpath exception
|
||||
(license license:epl2.0)))
|
||||
|
||||
(define-public java-parsson
|
||||
(package
|
||||
(name "java-parsson")
|
||||
(version "1.1.5")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/eclipse-ee4j/parsson")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"06vvr6qv1ihnk212gdxg4x0sd61lgxk7wf062s7gym5k2h7fms0p"))))
|
||||
(build-system ant-build-system)
|
||||
(arguments
|
||||
`(#:jar-name "parsson.jar"
|
||||
#:source-dir "impl/src/main/java"
|
||||
#:test-dir "impl/src/test"
|
||||
#:use-java-modules? #t
|
||||
#:jdk ,openjdk11
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'copy-resources
|
||||
(lambda _
|
||||
(copy-recursively "impl/src/main/resources"
|
||||
"build/classes"))))))
|
||||
(inputs
|
||||
(list java-jakarta-json))
|
||||
(native-inputs
|
||||
(list java-junit))
|
||||
(home-page "https://github.com/eclipse-ee4j/parsson")
|
||||
(synopsis "Implementation of Jakarta JSON API")
|
||||
(description "Eclipse Parsson is an implementation of the Jakarta JSON
|
||||
Processing specification.")
|
||||
;; with classpath exception
|
||||
(license license:epl2.0)))
|
||||
|
||||
(define-public java-xmp
|
||||
(package
|
||||
(name "java-xmp")
|
||||
|
|
|
@ -2256,8 +2256,9 @@ antialiased TrueType font rendering using CLX and XRender extension.")
|
|||
(sbcl-package->ecl-package sbcl-clx-truetype))
|
||||
|
||||
(define-public sbcl-slynk
|
||||
(let ((commit "df62abae73bd511885c9c7ec0ea7ea1469a00923")
|
||||
(revision "8"))
|
||||
;; Update together with emacs-sly.
|
||||
(let ((commit "9c43bf65b967e12cef1996f1af5f0671d8aecbf4")
|
||||
(revision "9"))
|
||||
(package
|
||||
(name "sbcl-slynk")
|
||||
(version (git-version "1.0.43" revision commit))
|
||||
|
@ -2269,7 +2270,7 @@ antialiased TrueType font rendering using CLX and XRender extension.")
|
|||
(url "https://github.com/joaotavora/sly")
|
||||
(commit commit)))
|
||||
(sha256
|
||||
(base32 "1nxijv52bja6la2i3asq7kklpj5li25454n52sgsc6xnnfvakbsv"))
|
||||
(base32 "15nyr02ykkws4q79jcmxcawddg8sgq9v5l8k7jv7gg3hnpzxjlb2"))
|
||||
(file-name (git-file-name "cl-slynk" version))))
|
||||
(build-system asdf-build-system/sbcl)
|
||||
(outputs '("out" "image"))
|
||||
|
@ -2704,8 +2705,8 @@ arbitrary Lisp data.")
|
|||
(sbcl-package->ecl-package sbcl-cl-dot))
|
||||
|
||||
(define-public sbcl-cl-graph
|
||||
(let ((commit "3cb786797b24883d784b7350e7372e8b1e743508")
|
||||
(revision "1"))
|
||||
(let ((commit "c617de35390cb02db88bc5b5febffafdb8947ae8")
|
||||
(revision "2"))
|
||||
(package
|
||||
(name "sbcl-cl-graph")
|
||||
(version (git-version "0.10.2" revision commit))
|
||||
|
@ -2713,11 +2714,11 @@ arbitrary Lisp data.")
|
|||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/gwkkwg/cl-graph")
|
||||
(url "https://github.com/hraban/cl-graph")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name "cl-graph" version))
|
||||
(sha256
|
||||
(base32 "1748rj52f2jmd5jvsy9jwhn0zf73sjzjhwhnljvq6yi2kdqr30kl"))))
|
||||
(base32 "0g1abkph9zb0m9zz6q2471ml9q9acdhwyapk8ra3bisqpwlxvpyf"))))
|
||||
(build-system asdf-build-system/sbcl)
|
||||
(arguments
|
||||
;; TODO: (Sharlatan-20221118T215839+0000): Tests failed
|
||||
|
@ -5597,8 +5598,8 @@ client and server.")
|
|||
(sbcl-package->ecl-package sbcl-trivial-clipboard))
|
||||
|
||||
(define-public sbcl-trivial-backtrace
|
||||
(let ((commit "6eb65bde7229413040c81d42ea22f0e4c9c8cfc9")
|
||||
(revision "1"))
|
||||
(let ((commit "7f90b4a4144775cca0728791e4b92ac2557b07a1")
|
||||
(revision "2"))
|
||||
(package
|
||||
(name "sbcl-trivial-backtrace")
|
||||
(version (git-version "1.1.0" revision commit))
|
||||
|
@ -5606,11 +5607,11 @@ client and server.")
|
|||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/gwkkwg/trivial-backtrace")
|
||||
(url "https://github.com/hraban/trivial-backtrace")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name "trivial-backtrace" version))
|
||||
(sha256
|
||||
(base32 "1mbaqiwj5034iw6jzw30jyhwzp1pvhnz1zcy0lns0z5j2h9ldapw"))))
|
||||
(base32 "11j0p3vgmnn5q84xw7sacr5p3cvff2hfhsh2is8xpm2iwxc723kn"))))
|
||||
(build-system asdf-build-system/sbcl)
|
||||
(native-inputs
|
||||
(list sbcl-lift))
|
||||
|
@ -7726,8 +7727,8 @@ CPython implementation of Python) and Common Lisp.")
|
|||
(sbcl-package->ecl-package sbcl-burgled-batteries3))
|
||||
|
||||
(define-public sbcl-metabang-bind
|
||||
(let ((commit "c93b7f7e1c18c954c2283efd6a7fdab36746ab5e")
|
||||
(revision "1"))
|
||||
(let ((commit "08196426cb099db0623e6cae2aeca566e0b788b2")
|
||||
(revision "2"))
|
||||
(package
|
||||
(name "sbcl-metabang-bind")
|
||||
(version (git-version "0.8.0" revision commit))
|
||||
|
@ -7735,12 +7736,12 @@ CPython implementation of Python) and Common Lisp.")
|
|||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/gwkkwg/metabang-bind")
|
||||
(url "https://github.com/hraban/metabang-bind")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0hd0kr91795v77akpbcyqiss9p0p7ypa9dznrllincnmgvsxlmf0"))))
|
||||
"14g7k3zhm8cd6bssc5mm5h6iq1dv5lfhiq33aimcmj5a6vbiq47d"))))
|
||||
(build-system asdf-build-system/sbcl)
|
||||
(native-inputs
|
||||
(list sbcl-lift))
|
||||
|
|
|
@ -103,6 +103,7 @@
|
|||
(build-target "jar")
|
||||
(jar-name #f)
|
||||
(main-class #f)
|
||||
(use-java-modules? #f)
|
||||
(test-include (list "**/*Test.java"))
|
||||
(test-exclude (list "**/Abstract*.java"))
|
||||
(source-dir "src")
|
||||
|
@ -131,6 +132,7 @@
|
|||
#:build-target #$build-target
|
||||
#:jar-name #$jar-name
|
||||
#:main-class #$main-class
|
||||
#:use-java-modules? #$use-java-modules?
|
||||
#:test-include (list #$@test-include)
|
||||
#:test-exclude (list #$@test-exclude)
|
||||
#:source-dir #$source-dir
|
||||
|
|
|
@ -37,6 +37,7 @@
|
|||
|
||||
(define* (default-build.xml jar-name prefix #:optional
|
||||
(source-dir ".") (test-dir "./test") (main-class #f)
|
||||
(use-java-modules? #f)
|
||||
(test-include '("**/*Test.java"))
|
||||
(test-exclude '("**/Abstract*Test.java")))
|
||||
"Create a simple build.xml with standard targets for Ant."
|
||||
|
@ -65,7 +66,7 @@
|
|||
(value "first")))
|
||||
(property (@ (environment "env")))
|
||||
(path (@ (id "classpath"))
|
||||
(pathelement (@ (location "${env.CLASSPATH}"))))
|
||||
(pathelement (@ (path "${env.CLASSPATH}"))))
|
||||
|
||||
(target (@ (name "manifest"))
|
||||
(mkdir (@ (dir "${manifest.dir}")))
|
||||
|
@ -79,18 +80,30 @@
|
|||
(mkdir (@ (dir "${classes.dir}")))
|
||||
(javac (@ (includeantruntime "false")
|
||||
(srcdir ,source-dir)
|
||||
(destdir "${classes.dir}")
|
||||
(classpath (@ (refid "classpath"))))))
|
||||
(destdir "${classes.dir}"))
|
||||
,(if use-java-modules?
|
||||
`((modulepath (@ (refid "classpath"))))
|
||||
'())
|
||||
(classpath (@ (refid "classpath")))))
|
||||
|
||||
(target (@ (name "compile-tests"))
|
||||
(mkdir (@ (dir "${test.classes.dir}")))
|
||||
(javac (@ (includeantruntime "false")
|
||||
(srcdir ,test-dir)
|
||||
(destdir "${test.classes.dir}"))
|
||||
(classpath
|
||||
(pathelement (@ (path "${env.CLASSPATH}")))
|
||||
(pathelement (@ (location "${classes.dir}")))
|
||||
(pathelement (@ (location "${test.classes.dir}"))))))
|
||||
,(if use-java-modules?
|
||||
`((classpath
|
||||
(pathelement
|
||||
(@ (path "${env.CLASSPATH}")))
|
||||
(pathelement
|
||||
(@ (location "${classes.dir}")))
|
||||
(pathelement
|
||||
(@ (location "${test.classes.dir}")))))
|
||||
'())
|
||||
(classpath
|
||||
(pathelement (@ (path "${env.CLASSPATH}")))
|
||||
(pathelement (@ (location "${classes.dir}")))
|
||||
(pathelement (@ (location "${test.classes.dir}"))))))
|
||||
|
||||
(target (@ (name "check")
|
||||
(depends "compile-tests"))
|
||||
|
@ -156,13 +169,15 @@ to the default GNU unpack strategy."
|
|||
(source-dir "src")
|
||||
(test-dir "src/test")
|
||||
(main-class #f)
|
||||
(use-java-modules? #f)
|
||||
(test-include '("**/*Test.java"))
|
||||
(test-exclude '("**/Abstract*.java")) #:allow-other-keys)
|
||||
(when jar-name
|
||||
(default-build.xml jar-name
|
||||
(string-append (assoc-ref outputs "out")
|
||||
"/share/java")
|
||||
source-dir test-dir main-class test-include test-exclude))
|
||||
source-dir test-dir main-class use-java-modules?
|
||||
test-include test-exclude))
|
||||
(setenv "JAVA_HOME" (assoc-ref inputs "jdk"))
|
||||
(setenv "CLASSPATH" (generate-classpath inputs))
|
||||
#t)
|
||||
|
|
Loading…
Reference in New Issue