mirror of
https://codeberg.org/guix/guix.git
synced 2026-01-25 03:55:08 -06:00
Compare commits
45 commits
1b911fbb1f
...
81c2963e07
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
81c2963e07 | ||
|
|
f0ab81c097 | ||
|
|
90defc6a0f | ||
|
|
f816e9a6df | ||
|
|
91bf688f5a | ||
|
|
73fd3ad464 | ||
|
|
dc479ce1bf | ||
|
|
ea3317d9c2 | ||
|
|
57c927fafe | ||
|
|
8dc2387ec1 | ||
|
|
e8a1e9a3a9 | ||
|
|
35d663e979 | ||
|
|
0487ac47e0 | ||
|
|
843aea279b | ||
|
|
036196369c | ||
|
|
7b49734b71 | ||
|
|
3db8e4262b | ||
|
|
942ddefae2 | ||
|
|
e0649603cc | ||
|
|
e93da8693c | ||
|
|
7b286b0809 | ||
|
|
7155f4fd84 | ||
|
|
5826939080 | ||
|
|
08fd05112f | ||
|
|
e7b7fa6390 | ||
|
|
a179385712 | ||
|
|
f4c70e99f9 | ||
|
|
804ddea526 | ||
|
|
6e2cadbfa0 | ||
|
|
24facf1bbd | ||
|
|
63cc24336f | ||
|
|
483582fee1 | ||
|
|
5e72dee586 | ||
|
|
0d5e2fd391 | ||
|
|
80b505325b | ||
|
|
6af15438ea | ||
|
|
602e7ad5b9 | ||
|
|
b843a3f5d8 | ||
|
|
920043cf0e | ||
|
|
3b8fb6de62 | ||
|
|
6aa00f4084 | ||
|
|
37ef9fb544 | ||
|
|
55e0744ec8 | ||
|
|
b155bcbe4d | ||
|
|
58a3cc8623 |
14 changed files with 526 additions and 264 deletions
|
|
@ -3,7 +3,7 @@ exec guile --no-auto-compile -e main -s "$0" "$@"
|
|||
!#
|
||||
;;;; test-driver.scm - Guile test driver for Automake testsuite harness
|
||||
|
||||
(define script-version "2023-12-08.14") ;UTC
|
||||
(define script-version "2026-01-23.07") ;UTC
|
||||
|
||||
;;; Copyright © 2015, 2016 Mathieu Lirzin <mthl@gnu.org>
|
||||
;;; Copyright © 2021 Maxim Cournoyer <maxim@guixotic.coop>
|
||||
|
|
@ -151,7 +151,7 @@ cases based on their names."
|
|||
(and show-duration? time-elapsed-seconds)))
|
||||
|
||||
(unless (and errors-only? (not (test-failed? runner)))
|
||||
(format #t "test-name: ~A~%" (result 'test-name))
|
||||
(format #t "test-name: ~A~%" (test-runner-test-name runner))
|
||||
(format #t "location: ~A~%"
|
||||
(string-append (result 'source-file) ":"
|
||||
(number->string (result 'source-line))))
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@
|
|||
;;; Code:
|
||||
|
||||
(define %artwork-repository
|
||||
(let ((commit "4c7f2ce6428a63e202cd2a9474a06f68a946934d"))
|
||||
(let ((commit "08259679a0faef63e3ba169df5b937d836bd9262"))
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
|
|
@ -39,6 +39,6 @@
|
|||
"-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"1rl569759q9wm1dxn7nkq3873d2k92giic7aa6jwzwr3n16prc7y")))))
|
||||
"0anryix0y8w9brksiaz39r8c10vdd0fp4h96b9f3m4aw0xpv8xlf")))))
|
||||
|
||||
;;; artwork.scm ends here
|
||||
|
|
|
|||
|
|
@ -2426,6 +2426,7 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/uftrace-fix-tests.patch \
|
||||
%D%/packages/patches/ultrastar-deluxe-no-freesans.patch \
|
||||
%D%/packages/patches/unity-test-set-subdir-correctly.patch \
|
||||
%D%/packages/patches/unity-test-support-int64.patch \
|
||||
%D%/packages/patches/ungoogled-chromium-extension-search-path.patch \
|
||||
%D%/packages/patches/ungoogled-chromium-RUNPATH.patch \
|
||||
%D%/packages/patches/ungoogled-chromium-system-nspr.patch \
|
||||
|
|
|
|||
|
|
@ -3410,11 +3410,13 @@ portable to just about any platform.")
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1s0jj9f2zav49mn9ib90idcmb6hq93aczbqysn5hj6binjmrnjw3"))
|
||||
(patches (search-patches "unity-test-set-subdir-correctly.patch"))))
|
||||
(patches (search-patches "unity-test-set-subdir-correctly.patch"
|
||||
"unity-test-support-int64.patch"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
(list #:configure-flags
|
||||
#~(list "-Dsupport_double=true")
|
||||
#~(list "-Dsupport_double=true"
|
||||
"-Dsupport_int64=true")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'patch-source-shebangs 'patch-more-shebangs
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@
|
|||
;;; Copyright © 2019 Jesse Gibbons <jgibbons2357+guix@gmail.com>
|
||||
;;; Copyright © 2020 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2024 Roman Scherer <roman@burningswell.com>
|
||||
;;; Copyright © 2025, 2026 Mathieu Lirzin <mthl@gnu.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
|
@ -35,53 +36,232 @@
|
|||
#:use-module (guix build-system clojure)
|
||||
#:use-module (ice-9 match))
|
||||
|
||||
(define-public clojure
|
||||
(let* ((lib (lambda (prefix version hash)
|
||||
(origin (method url-fetch)
|
||||
(uri (string-append "https://github.com/clojure/"
|
||||
prefix version ".tar.gz"))
|
||||
(sha256 (base32 hash)))))
|
||||
;; The libraries below are needed to run the tests.
|
||||
(libraries
|
||||
`(("core-specs-alpha-src"
|
||||
,(lib "core.specs.alpha/archive/v"
|
||||
"0.4.74"
|
||||
"1hgl3222381349s4w5bnz02gghxfc8jjsqxhrvgadvn8ybh3dcsp"))
|
||||
("data-generators-src"
|
||||
,(lib "data.generators/archive/data.generators-"
|
||||
"1.0.0"
|
||||
"0s3hf1njvs68b8igasikvzagzqxl0gbri7w2qhzsypkhfh60v2cp"))
|
||||
("java-classpath-src"
|
||||
,(lib "java.classpath/archive/java.classpath-"
|
||||
"1.0.0"
|
||||
"178zajjsc9phk5l61r8w9hcpk0wgc9a811pl7kjgvn7rg4l7fh7j"))
|
||||
("spec-alpha-src"
|
||||
,(lib "spec.alpha/archive/v"
|
||||
"0.5.238"
|
||||
"0h15q9cmxaa7l2pqwwcykfyql8vbw6ns2a4lqfchik1mpfpr9jrb"))
|
||||
("test-check-src"
|
||||
,(lib "test.check/archive/v"
|
||||
"1.1.1"
|
||||
"0kx8l79mhpnn94rpsgc7nac7gb222g7a47mzrycj8crfc54wf0c1"))
|
||||
("test-generative-src"
|
||||
,(lib "test.generative/archive/v"
|
||||
"1.1.0"
|
||||
"0sm3q4jkcn06b3r0m0p29z159zqc8jk3k02yz92xwvdbnywaqnfz"))
|
||||
("tools-namespace-src"
|
||||
,(lib "tools.namespace/archive/tools.namespace-"
|
||||
"1.0.0"
|
||||
"1ifpk93m33rj2xm1qnnninlsdvm1liqmsp9igr63pjjwwwjw1cnn"))
|
||||
("tools-reader-src"
|
||||
,(lib "tools.reader/archive/tools.reader-"
|
||||
"1.3.2"
|
||||
"1n4dhg61iyypnjbxmihhqjb7lfpc0lzfvlk4jd8w0yr6za414f3a"))))
|
||||
(library-names (match libraries
|
||||
(((library-name _) ...)
|
||||
library-name))))
|
||||
(define-public clojure-spec-alpha
|
||||
(package
|
||||
(name "clojure-spec-alpha")
|
||||
(version "0.6.249")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/clojure/spec.alpha")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1rzy7mjzchsjpwkn3b5vg5hnmsj5h9ljxdjn48j92bgh7vl3k2r5"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments '(#:source-dirs '("src/main/clojure")
|
||||
#:test-dirs '("src/test/clojure")
|
||||
#:doc-dirs '()))
|
||||
(native-inputs (list clojure-test-check))
|
||||
(synopsis
|
||||
"Clojure library to describe the structure of data and functions")
|
||||
(description
|
||||
"This package can be used to validate data, conform (destructure) data, explain
|
||||
invalid data, generate examples that conform to the specs, and automatically
|
||||
use generative testing to test functions.
|
||||
|
||||
Clojure depends on this library and provides it. Thus it is not recommended
|
||||
to add a direct dependency on this package.")
|
||||
(home-page "https://github.com/clojure/spec.alpha")
|
||||
(license license:epl1.0)))
|
||||
|
||||
(define-public clojure-core-specs-alpha
|
||||
(package
|
||||
(name "clojure-core-specs-alpha")
|
||||
(version "0.5.81")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/clojure/core.specs.alpha")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1hy060mb2hxirynkk36plx1rvpj6i2ldn8mvnwfd02wvjvh57dad"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments '(#:source-dirs '("src/main/clojure")
|
||||
#:test-dirs '()
|
||||
#:doc-dirs '()))
|
||||
(synopsis "Describe clojure.core macros and functions")
|
||||
(description
|
||||
"This package contains specs to describe Clojure core macros and functions.
|
||||
|
||||
Clojure depends on this library and provides it. Thus it is not recommended
|
||||
to add a direct dependency on this package.")
|
||||
(home-page "https://github.com/clojure/core.specs.alpha")
|
||||
(license license:epl1.0)))
|
||||
|
||||
(define-public clojure-java-classpath
|
||||
(package
|
||||
(name "clojure-java-classpath")
|
||||
(version "1.1.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/clojure/java.classpath")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1k34yrx3gmvf46984zdgn2vb98ixf47q1vgh9p78bgmpyhrwzx2z"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments '(#:source-dirs '("src/main/clojure")
|
||||
#:test-dirs '("src/test/clojure")
|
||||
#:doc-dirs '()))
|
||||
(synopsis "Examine the Java classpath from Clojure programs")
|
||||
(description
|
||||
"This package provides utilities for dealing with the JVM's classpath from
|
||||
Clojure.")
|
||||
(home-page "https://github.com/clojure/java.classpath")
|
||||
(license license:epl1.0)))
|
||||
|
||||
(define-public clojure-data-generators
|
||||
(package
|
||||
(name "clojure-data-generators")
|
||||
(version "1.1.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/clojure/data.generators")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1ynazp55v15zv5jwz1wh2p8cawjcmn0bwzgfs2dwrp6aq231jafm"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments '(#:source-dirs '("src/main/clojure")
|
||||
#:test-dirs '("src/test/clojure")
|
||||
#:doc-dirs '()))
|
||||
(synopsis "Generators for random Clojure data")
|
||||
(description
|
||||
"This package contains various functions to generate random clojure data.")
|
||||
(home-page "https://github.com/clojure/data.generators")
|
||||
(license license:epl1.0)))
|
||||
|
||||
(define-public clojure-tools-namespace
|
||||
(package
|
||||
(name "clojure-tools-namespace")
|
||||
(version "1.5.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/clojure/tools.namespace")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0j1lz3xnpgvyi0mcg9mjz7hrchf3hwhbhxi2163d739dxdx60s22"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments '(#:source-dirs '("src/main/clojure")
|
||||
#:test-dirs '("src/test/clojure")
|
||||
#:doc-dirs '()))
|
||||
(propagated-inputs (list clojure-java-classpath
|
||||
clojure-tools-reader))
|
||||
(synopsis "Tools for managing namespaces in Clojure")
|
||||
(description
|
||||
"This package parses ns declarations from source files, extract their
|
||||
dependencies, build a graph of namespace dependencies within a project, update
|
||||
that graph as files change, and reload files in the correct order.
|
||||
|
||||
This is only about namespace dependencies within a single project. It has
|
||||
nothing to do with Leiningen, Maven, JAR files, or repositories.")
|
||||
(home-page "https://github.com/clojure/tools.namespace")
|
||||
(license license:epl1.0)))
|
||||
|
||||
(define-public clojure-test-generative
|
||||
(package
|
||||
(name "clojure-test-generative")
|
||||
(version "1.1.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/clojure/test.generative")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0lb72cr4s6rgpg18v3jr67ps6wx4p7j7mfzwnfgmm0v8rldlcycf"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments '(#:source-dirs '("src/main/clojure")
|
||||
#:test-dirs '("src/examples/clojure")
|
||||
#:doc-dirs '()))
|
||||
(propagated-inputs (list clojure-tools-namespace
|
||||
clojure-data-generators))
|
||||
(synopsis "Generative test runner")
|
||||
(description
|
||||
"This package defines generators functions and property based testing macros.")
|
||||
(home-page "https://github.com/clojure/test.generative")
|
||||
(license license:epl1.0)))
|
||||
|
||||
(define-public clojure-test-check
|
||||
(package
|
||||
(name "clojure-test-check")
|
||||
(version "1.1.3")
|
||||
(home-page "https://github.com/clojure/test.check")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url home-page)
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1j1x80rv0pli3g91wy01panlqbhgf7zqm7jdr2rzjqf2yyksc70n"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
'(#:source-dirs '("src/main/clojure")
|
||||
#:test-dirs '("src/test/clojure")
|
||||
#:doc-dirs '()))
|
||||
(synopsis "QuickCheck for Clojure")
|
||||
(description "@code{test.check} is a Clojure property-based testing tool
|
||||
inspired by QuickCheck. The core idea of @code{test.check} is that instead of
|
||||
enumerating expected input and output for unit tests, you write properties
|
||||
about your function that should hold true for all inputs. This lets you write
|
||||
concise, powerful tests.")
|
||||
(license license:epl1.0)))
|
||||
|
||||
(define-public clojure-tools-reader
|
||||
(package
|
||||
(name "clojure-tools-reader")
|
||||
(version "1.6.0")
|
||||
(home-page "https://github.com/clojure/tools.reader")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url home-page)
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"006zy7dpk678rzawqyqcypccw48bl4b9s4xjrwzhgq8z5s8v6lnd"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
'(#:doc-dirs '()
|
||||
#:source-dirs '("src/main/clojure")
|
||||
#:test-dirs '("src/test/clojure")
|
||||
#:test-exclude '(clojure.tools.common-tests))) ; Loaded by other tests.
|
||||
(synopsis "Clojure reader written in Clojure")
|
||||
(description "The clojure.tools.reader library offers all functionality
|
||||
provided by the Clojure Core reader and more. It adds metadata such as column
|
||||
and line numbers not only to lists, but also to symbols, vectors and maps.")
|
||||
(license license:epl1.0)))
|
||||
|
||||
(define (package-sources . packages)
|
||||
(map package-source packages))
|
||||
|
||||
(define-public clojure
|
||||
(let ((provided-libraries (package-sources clojure-core-specs-alpha
|
||||
clojure-spec-alpha))
|
||||
(test-libraries (package-sources clojure-data-generators
|
||||
clojure-java-classpath
|
||||
clojure-test-check
|
||||
clojure-test-generative
|
||||
clojure-tools-namespace
|
||||
clojure-tools-reader)))
|
||||
(package
|
||||
(name "clojure")
|
||||
(version "1.12.0")
|
||||
(version "1.12.4")
|
||||
(source (let ((name+version (string-append name "-" version)))
|
||||
(origin
|
||||
(method git-fetch)
|
||||
|
|
@ -90,47 +270,35 @@
|
|||
(commit name+version)))
|
||||
(file-name (string-append name+version "-checkout"))
|
||||
(sha256
|
||||
(base32 "17f62x9qq71yhcfpg2npv19xi9wcpgqj255nmvpfy1z2md64gawz")))))
|
||||
(base32
|
||||
"072dv6s2gxcg8snlgkpjk6bp1cb17bgfshdq6ijsa4yslpqbf9wc")))))
|
||||
(build-system ant-build-system)
|
||||
(inputs
|
||||
`(("jre" ,icedtea)))
|
||||
(inputs (list icedtea))
|
||||
(arguments
|
||||
`(#:imported-modules ((guix build clojure-utils)
|
||||
(guix build clojure-build-system)
|
||||
(guix build guile-build-system)
|
||||
,@%ant-build-system-modules)
|
||||
#:modules ((guix build ant-build-system)
|
||||
((guix build clojure-build-system) #:prefix clj:)
|
||||
(guix build clojure-utils)
|
||||
(guix build java-utils)
|
||||
(guix build utils)
|
||||
(ice-9 match)
|
||||
(ice-9 regex)
|
||||
(srfi srfi-26))
|
||||
#:test-target "test"
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'unpack-library-sources
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(define (extract-library name)
|
||||
(mkdir-p name)
|
||||
(with-directory-excursion name
|
||||
(invoke "tar"
|
||||
"--extract"
|
||||
"--verbose"
|
||||
"--file" (assoc-ref inputs name)
|
||||
"--strip-components=1")))
|
||||
(for-each extract-library ',library-names)
|
||||
(copy-recursively "core-specs-alpha-src/src/main/clojure"
|
||||
"src/clj/")
|
||||
(copy-recursively "spec-alpha-src/src/main/clojure"
|
||||
"src/clj/")
|
||||
#t))
|
||||
(define (extract-provided-library name)
|
||||
(copy-recursively
|
||||
(string-append (assoc-ref inputs name) "/src/main/clojure")
|
||||
"src/clj/"))
|
||||
(for-each extract-provided-library
|
||||
',(map origin-actual-file-name provided-libraries))))
|
||||
(add-after 'unpack-library-sources 'fix-manifest-classpath
|
||||
(lambda _
|
||||
(substitute* "build.xml"
|
||||
(("<attribute name=\"Class-Path\" value=\".\"/>") ""))
|
||||
#t))
|
||||
(("<attribute name=\"Class-Path\" value=\".\"/>") ""))))
|
||||
(add-after 'unpack-library-sources 'clojure-spec-skip-macros
|
||||
;; Disable spec macro instrumentation when compiling clojure.spec
|
||||
;; See: https://clojure.atlassian.net/browse/CLJ-2254
|
||||
|
|
@ -140,8 +308,7 @@
|
|||
,(string-join
|
||||
'("<sysproperty key=\"java.awt.headless\" value=\"true\"/>"
|
||||
"<sysproperty key=\"clojure.spec.skip-macros\" value=\"true\"/>\n")
|
||||
"\n")))
|
||||
#t))
|
||||
"\n")))))
|
||||
(add-after 'unpack-library-sources 'clojure-spec-compile
|
||||
;; Compile and include clojure.spec.alpha & clojure.core.specs.alpha
|
||||
(lambda _
|
||||
|
|
@ -152,28 +319,34 @@
|
|||
"<arg value=\"clojure.spec.alpha\"/>"
|
||||
"<arg value=\"clojure.spec.gen.alpha\"/>"
|
||||
"<arg value=\"clojure.spec.test.alpha\"/>"
|
||||
"<arg value=\"clojure.core.specs.alpha\"/>"))))
|
||||
#t))
|
||||
"<arg value=\"clojure.core.specs.alpha\"/>"))))))
|
||||
(add-before 'build 'maven-classpath-properties
|
||||
(lambda _
|
||||
(define (make-classpath libraries)
|
||||
(string-join (map (lambda (library)
|
||||
(string-append library "/src/main/clojure"))
|
||||
libraries) ":"))
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(define (source-dir library)
|
||||
(string-append (assoc-ref inputs library) "/src/main/clojure"))
|
||||
(let* ((libraries ',(map origin-actual-file-name test-libraries))
|
||||
(test-classpath (map source-dir libraries)))
|
||||
(with-output-to-file "maven-classpath.properties"
|
||||
(lambda ()
|
||||
(let ((classpath (make-classpath ',library-names)))
|
||||
(display (string-append "maven.compile.classpath=" classpath "\n"))
|
||||
(display (string-append "maven.test.classpath=" classpath "\n")))))
|
||||
#t))
|
||||
(lambda _
|
||||
(display "maven.compile.classpath=\n")
|
||||
(display (string-append "maven.test.classpath="
|
||||
(string-join test-classpath ":")
|
||||
"\n")))))))
|
||||
(add-before 'check 'fix-test-classpath
|
||||
;; Some java test files need access to compiled classes.
|
||||
(lambda _
|
||||
(substitute* "build.xml"
|
||||
(("javac srcdir=\"\\$\\{jtestsrc\\}\"" cmd)
|
||||
(string-append cmd " classpath=\"${build}\"")))))
|
||||
(add-after 'build 'build-javadoc ant-build-javadoc)
|
||||
(replace 'install (install-jars "./"))
|
||||
(add-after 'install-license-files 'install-doc
|
||||
(cut install-doc #:doc-dirs '("doc/clojure/") <...>))
|
||||
(add-after 'install-doc 'install-javadoc
|
||||
(install-javadoc "target/javadoc/"))
|
||||
(add-after 'reset-gzip-timestamps 'reset-class-timestamps clj:reset-class-timestamps))))
|
||||
(native-inputs libraries)
|
||||
(add-after 'reset-gzip-timestamps 'reset-class-timestamps
|
||||
clj:reset-class-timestamps))))
|
||||
(native-inputs (append provided-libraries test-libraries))
|
||||
(home-page "https://clojure.org/")
|
||||
(synopsis "Lisp dialect running on the JVM")
|
||||
(description "Clojure is a dynamic, general-purpose programming language,
|
||||
|
|
@ -204,14 +377,14 @@ designs.")
|
|||
(define-public clojure-tools
|
||||
(package
|
||||
(name "clojure-tools")
|
||||
(version "1.11.1.1413")
|
||||
(version "1.12.4.1582")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://download.clojure.org/install/clojure-tools-"
|
||||
version
|
||||
".tar.gz"))
|
||||
(sha256 (base32 "1q0z71ifdxwvyy9gvq8mx8jbygf8cszrlhb3h22walfamnisbhwk"))
|
||||
(sha256 (base32 "08gzfblnz0zhnk6pwr9vcm6y168psgrwmqww3wqk1v7j5gr68n7x"))
|
||||
;; Remove AOT compiled JAR. The other JAR only contains uncompiled
|
||||
;; Clojure source code.
|
||||
(snippet
|
||||
|
|
@ -251,7 +424,8 @@ designs.")
|
|||
(inputs (list rlwrap
|
||||
clojure
|
||||
clojure-tools-deps
|
||||
java-commons-logging-minimal))
|
||||
java-commons-logging-minimal
|
||||
java-slf4j-nop))
|
||||
(home-page "https://clojure.org/releases/tools")
|
||||
(synopsis "CLI tools for the Clojure programming language")
|
||||
(description "The Clojure command line tools can be used to start a
|
||||
|
|
@ -261,16 +435,16 @@ Clojure repl, use Clojure and Java libraries, and start Clojure programs.")
|
|||
(define-public clojure-algo-generic
|
||||
(package
|
||||
(name "clojure-algo-generic")
|
||||
(version "0.1.3")
|
||||
(version "1.0.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/clojure/algo.generic")
|
||||
(commit (string-append "algo.generic-" version))))
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1s6q10qp276dcpzv06bq1q3bvkvlw03qhmncqcs9cc6p9lc0w4p4"))))
|
||||
(base32 "0i10rxk5jxsw1cm2a8rsq9zgl04173cbpaj02vvc9nb4ig219a8y"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
'(#:source-dirs '("src/main/clojure/")
|
||||
|
|
@ -294,16 +468,16 @@ that can be implemented for any data type.")
|
|||
(define-public clojure-algo-monads
|
||||
(package
|
||||
(name "clojure-algo-monads")
|
||||
(version "0.1.6")
|
||||
(version "0.2.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/clojure/algo.monads")
|
||||
(commit (string-append "algo.monads-" version))))
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0mv3ba72hyhgasg2k3zy83ij61gak6cs4d6qgh8123z3j02mbh8p"))))
|
||||
(base32 "1l420fzqr1mw45w1lz6iqx0s61m8w3r3ad8zmsg17cqahnfakh00"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
'(#:source-dirs '("src/main/clojure/")
|
||||
|
|
@ -322,7 +496,7 @@ defining and using monads and useful monadic functions.")
|
|||
(define-public clojure-core-async
|
||||
(package
|
||||
(name "clojure-core-async")
|
||||
(version "1.6.681")
|
||||
(version "1.8.741")
|
||||
(home-page "https://github.com/clojure/core.async")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
|
|
@ -332,7 +506,7 @@ defining and using monads and useful monadic functions.")
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1j9yz14hy2qs8g3flsqkn1sx9c0qlr5mmpy6ab1zml9yhbw5arzg"))))
|
||||
"1m6lir2xr119yxz483cz0rfw4k3a40qmmsiwl2y7kyxy65vab60z"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
'(#:source-dirs '("src/main/clojure")
|
||||
|
|
@ -356,7 +530,7 @@ work on Communicating Sequential Processes (CSP).")
|
|||
(define-public clojure-core-cache
|
||||
(package
|
||||
(name "clojure-core-cache")
|
||||
(version "1.1.234")
|
||||
(version "1.2.249")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
|
|
@ -365,7 +539,7 @@ work on Communicating Sequential Processes (CSP).")
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0jiq022kd5jdpmxz884rvg5317xmx7g3gnidkpcfsamchyfh5qxq"))))
|
||||
"0hdwv5dsx49i12riz3frzshwkgw26ah43667lzga2n6zgpmrh8ii"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
'(#:source-dirs '("src/main/clojure")
|
||||
|
|
@ -383,16 +557,16 @@ cache and Naive cache backed with soft references.")
|
|||
(define-public clojure-core-match
|
||||
(package
|
||||
(name "clojure-core-match")
|
||||
(version "1.0.0")
|
||||
(version "1.1.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/clojure/core.match")
|
||||
(commit (string-append "core.match-" version))))
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0ajpxjv4yc282cm0jw8819fay2j6jqp9nfy69k7vll09q7vqsd22"))))
|
||||
"09kijs81js7iy810qkzn7fi996gmf7bmlm2ax571zy0yr38i2hbr"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
'(#:source-dirs '("src/main/clojure")
|
||||
|
|
@ -408,7 +582,7 @@ It supports Clojure 1.5.1 and later as well as ClojureScript.")
|
|||
(define-public clojure-core-memoize
|
||||
(package
|
||||
(name "clojure-core-memoize")
|
||||
(version "1.1.266")
|
||||
(version "1.2.273")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
|
|
@ -417,7 +591,7 @@ It supports Clojure 1.5.1 and later as well as ClojureScript.")
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0nys79zrvcnwgyxb91zlyl3nb4p6r6y4n5rbdvzqkvsxxazi9ji0"))))
|
||||
"009fj19y464an66pryygmqbnx2dqk5wkp40rbkbgkir0ax0k6j3y"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
'(#:source-dirs '("src/main/clojure")
|
||||
|
|
@ -435,17 +609,17 @@ Least-recently-used, Least-used and Time-to-live.")
|
|||
(define-public clojure-data-codec
|
||||
(package
|
||||
(name "clojure-data-codec")
|
||||
(version "0.1.1")
|
||||
(version "0.2.1")
|
||||
(home-page "https://github.com/clojure/data.codec")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url home-page)
|
||||
(commit (string-append "data.codec-" version))))
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"192df1dmbwvf1x837mi731n9x94bdypaz18va45plzgdsh4xx6dr"))))
|
||||
"1wxqwkbpaxjchh03lwy3ngyx6dwv7x7l1qhac42dl6bg213izil5"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
'(#:source-dirs '("src/main/clojure")
|
||||
|
|
@ -464,7 +638,7 @@ is on par with Java implementations, e.g., Apache commons-codec.")
|
|||
(define-public clojure-data-csv
|
||||
(package
|
||||
(name "clojure-data-csv")
|
||||
(version "1.0.1")
|
||||
(version "1.1.1")
|
||||
(home-page "https://github.com/clojure/data.csv")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
|
|
@ -474,7 +648,7 @@ is on par with Java implementations, e.g., Apache commons-codec.")
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1mh1qli6xrw4s3yj9cxxh50z4m7z08indj3ya30znkhi4xsphii2"))))
|
||||
"1i43qzjn29a0xb3q54sfrn8f77nmxd0v0fn9361as07yclh8jzif"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
'(#:source-dirs '("src/main/clojure")
|
||||
|
|
@ -489,7 +663,7 @@ relaxed.")
|
|||
(define-public clojure-data-json
|
||||
(package
|
||||
(name "clojure-data-json")
|
||||
(version "2.5.0")
|
||||
(version "2.5.2")
|
||||
(home-page "https://github.com/clojure/data.json")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
|
|
@ -499,7 +673,7 @@ relaxed.")
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"04k3fr9y1gp337h0d2zxam3aa3hl046r2g2qiizn7aq0rq6311p9"))))
|
||||
"0xkcd6h5g7yhr839wci6dsynmbijj9r5mrrj70gx849mkhj98411"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
'(#:source-dirs '("src/main/clojure")
|
||||
|
|
@ -515,7 +689,7 @@ external dependencies")
|
|||
(define-public clojure-data-priority-map
|
||||
(package
|
||||
(name "clojure-data-priority-map")
|
||||
(version "1.2.0")
|
||||
(version "1.2.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
|
|
@ -524,7 +698,7 @@ external dependencies")
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0aynzrdl0w08q89nd069lcx8s6msqmwrpqnya63jv1l2pn3w6ij4"))))
|
||||
"0yswqr6855n0rg0mfmjfdx0npzasm654m7sz4x0wl13grwgg220k"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
'(#:source-dirs '("src/main/clojure")
|
||||
|
|
@ -544,17 +718,17 @@ maps also support conj/peek/pop operations.")
|
|||
(define-public clojure-data-xml
|
||||
(package
|
||||
(name "clojure-data-xml")
|
||||
(version "0.2.0-alpha6")
|
||||
(version "0.2.0-alpha10")
|
||||
(home-page "https://github.com/clojure/data.xml")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url home-page)
|
||||
(commit (string-append "data.xml-" version))))
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"08vglcapq7sd9zhw8dw1y7dcdks7f21w1pw9p05i475i3bw4cf94"))))
|
||||
"0mnhgrh20p2wwmq8a4631dkpxbgbijwi6sfhw5v784hzkjkfgkh6"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
'(#:source-dirs '("src/main/clojure")
|
||||
|
|
@ -564,6 +738,7 @@ maps also support conj/peek/pop operations.")
|
|||
(modify-phases %standard-phases
|
||||
(add-before 'build 'delete-cljs-tests
|
||||
(lambda _
|
||||
(delete-file "src/test/resources/clojure/data/xml/cljs_repl_nashorn.clj")
|
||||
(delete-file "src/test/resources/clojure/data/xml/cljs_testsuite.clj")
|
||||
(delete-file "src/test/clojure/clojure/data/xml/test_cljs.clj"))))))
|
||||
(propagated-inputs (list clojure-data-codec))
|
||||
|
|
@ -642,37 +817,10 @@ tree.
|
|||
(home-page "https://github.com/Engelberg/instaparse")
|
||||
(license license:epl1.0))))
|
||||
|
||||
(define-public clojure-test-check
|
||||
(package
|
||||
(name "clojure-test-check")
|
||||
(version "1.1.1")
|
||||
(home-page "https://github.com/clojure/test.check")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url home-page)
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"09jvlibnxhjv0l57y0sa7yy5in67gq4sssag77hv2d980mwdnls6"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
'(#:source-dirs '("src/main/clojure")
|
||||
#:test-dirs '("src/test/clojure")
|
||||
#:doc-dirs '()))
|
||||
(synopsis "QuickCheck for Clojure")
|
||||
(description "@code{test.check} is a Clojure property-based testing tool
|
||||
inspired by QuickCheck. The core idea of @code{test.check} is that instead of
|
||||
enumerating expected input and output for unit tests, you write properties
|
||||
about your function that should hold true for all inputs. This lets you write
|
||||
concise, powerful tests.")
|
||||
(license license:epl1.0)))
|
||||
|
||||
(define-public clojure-tools-analyzer
|
||||
(package
|
||||
(name "clojure-tools-analyzer")
|
||||
(version "1.2.0")
|
||||
(version "1.2.1")
|
||||
(home-page "https://github.com/clojure/tools.analyzer")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
|
|
@ -682,7 +830,7 @@ concise, powerful tests.")
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"05v4i8qs5d51lh113phib0brkysphxa2d71khm840586432knyaa"))))
|
||||
"0apa3gc45rmdj19plbvglpj6i9dadkgvvidj5mcnkzi9y3h0nr27"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
'(#:source-dirs '("src/main/clojure")
|
||||
|
|
@ -697,7 +845,7 @@ format.")
|
|||
(define-public clojure-tools-analyzer-jvm
|
||||
(package
|
||||
(name "clojure-tools-analyzer-jvm")
|
||||
(version "1.3.0")
|
||||
(version "1.3.4")
|
||||
(home-page "https://github.com/clojure/tools.analyzer.jvm")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
|
|
@ -707,7 +855,7 @@ format.")
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"13nxzdp15772hzl3jmi5014jkwldkm1qccfycwkk2pn64hycmnxl"))))
|
||||
"0pk9z8zf9bgzj0wi98yx130l7570arnxfsg9508g1jvq83djpn21"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
'(#:source-dirs '("src/main/clojure")
|
||||
|
|
@ -725,16 +873,16 @@ tools.analyzer, providing additional JVM-specific passes.")
|
|||
(define-public clojure-tools-macro
|
||||
(package
|
||||
(name "clojure-tools-macro")
|
||||
(version "0.1.5")
|
||||
(version "0.2.2")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/clojure/tools.macro")
|
||||
(commit (string-append "tools.macro-" version))))
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "14mdxqkwja0cffmyfav5pbcli2qvw1mjdgz0n619a2z2036andx8"))))
|
||||
(base32 "09xxp5vpf86akmn95mvjmd34a1pc48cjxbp6q4lvi3q8rhpkjfd5"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
'(#:source-dirs '("src/main/clojure/")
|
||||
|
|
@ -748,16 +896,16 @@ tools.analyzer, providing additional JVM-specific passes.")
|
|||
(define-public clojure-tools-cli
|
||||
(package
|
||||
(name "clojure-tools-cli")
|
||||
(version "1.0.206")
|
||||
(version "1.3.250")
|
||||
(home-page "https://github.com/clojure/tools.cli")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url home-page)
|
||||
(commit (string-append "tools.cli-" version))))
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1hvk5zacl3fr8lfcbfgckaicqjx697j0kzw2x5hwj8j5xlr8ri2r"))))
|
||||
(base32 "1nyw33w83gd7xlbpma03p4jwcdcp38h8y99x2rqw4zcnw19gsz4p"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
'(#:source-dirs '("src/main/clojure/")
|
||||
|
|
@ -772,7 +920,7 @@ work with command-line arguments.")
|
|||
(define-public clojure-tools-deps
|
||||
(package
|
||||
(name "clojure-tools-deps")
|
||||
(version "0.18.1354")
|
||||
(version "0.28.1569")
|
||||
(home-page "https://github.com/clojure/tools.deps")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
|
|
@ -782,38 +930,26 @@ work with command-line arguments.")
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0ls5nixhsjjhf3qz8kbyhmks5lw7a25zxl46yrizbw7vba3mzrpl"))))
|
||||
"04s8cishxm1y4vnx8mpdk1qma6j0khmb356j69fsy14s615yjgfg"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
`(#:source-dirs '("src/main/clojure" "src/main/resources")
|
||||
#:java-source-dirs '("src/main/java")
|
||||
#:test-dirs '("src/test/clojure")
|
||||
#:doc-dirs '()
|
||||
;; FIXME: Could not initialize class org.eclipse.aether.transport.http.SslSocketFactory
|
||||
;; FIXME: Could not initialize class
|
||||
;; org.eclipse.aether.transport.http.SslSocketFactory
|
||||
#:tests? #f
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
;; FIXME: Currently, the S3 transporter depends on ClojureScript,
|
||||
;; which is very difficult to package due to dependencies on Java
|
||||
;; libraries with non-standard build systems. Instead of actually
|
||||
;; packaging these libraries, we just remove the S3 transporter that
|
||||
;; depends on them.
|
||||
(add-after 'unpack 'remove-s3-transporter
|
||||
(lambda _
|
||||
(for-each delete-file
|
||||
(list
|
||||
(string-append
|
||||
"src/main/clojure/clojure/"
|
||||
"tools/deps/util/s3_aws_client.clj")
|
||||
(string-append
|
||||
"src/main/clojure/clojure/"
|
||||
"tools/deps/util/s3_transporter.clj")
|
||||
(string-append
|
||||
"src/test/clojure/clojure/"
|
||||
"tools/deps/util/test_s3_transporter.clj")))
|
||||
(substitute*
|
||||
"src/main/clojure/clojure/tools/deps/util/maven.clj"
|
||||
(("clojure.tools.deps.util.s3-transporter")
|
||||
"")))))))
|
||||
(add-before 'build 'reference-clojure-jar-input
|
||||
;; Use static clojure jar from build input at runtime by default.
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* "src/main/resources/clojure/tools/deps/deps.edn"
|
||||
(("org\\.clojure/clojure.*$")
|
||||
(string-append "org.clojure/clojure {:local/root \""
|
||||
(assoc-ref inputs "clojure")
|
||||
"/share/java/clojure.jar\"}"))))))))
|
||||
(propagated-inputs (list maven-resolver-api
|
||||
maven-resolver-spi
|
||||
maven-resolver-impl
|
||||
|
|
@ -825,7 +961,8 @@ work with command-line arguments.")
|
|||
maven-resolver-transport-file
|
||||
clojure-tools-gitlibs
|
||||
clojure-tools-cli
|
||||
clojure-data-xml))
|
||||
clojure-data-xml
|
||||
cognitect-aws-api))
|
||||
(synopsis "Clojure library supporting clojure-tools")
|
||||
(description "This package provides a functional API for transitive
|
||||
dependency graph expansion and the creation of classpaths.")
|
||||
|
|
@ -837,7 +974,7 @@ dependency graph expansion and the creation of classpaths.")
|
|||
;; Keeping it to give downstream packages a chance to upgrade
|
||||
(package
|
||||
(name "clojure-tools-deps-alpha")
|
||||
(version "0.14.1212")
|
||||
(version "0.15.1254")
|
||||
(home-page "https://github.com/clojure/tools.deps.alpha")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
|
|
@ -847,7 +984,7 @@ dependency graph expansion and the creation of classpaths.")
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0r8qfihii6cf95kl86x6zfldnm7wlkgda2qmq3340j1x03v244dd"))))
|
||||
"17zvizzw637az7facwipsrg9b1kjci03aycg6w5pnjpg6b6nd5m6"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
`(#:source-dirs '("src/main/clojure" "src/main/resources")
|
||||
|
|
@ -899,7 +1036,7 @@ dependency graph expansion and the creation of classpaths.")
|
|||
(define-public clojure-tools-gitlibs
|
||||
(package
|
||||
(name "clojure-tools-gitlibs")
|
||||
(version "2.4.181")
|
||||
(version "2.6.212")
|
||||
(home-page "https://github.com/clojure/tools.gitlibs")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
|
|
@ -909,7 +1046,7 @@ dependency graph expansion and the creation of classpaths.")
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1d8c79f33axghadwqa955yjfsxa6fgl8jq4nfll2zrp6sjw0597k"))))
|
||||
"199n58dwh44rlb0m514swh6zx3flckq3lccxv9dwbypbv29n9ghq"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
'(#:source-dirs '("src/main/clojure")
|
||||
|
|
@ -927,7 +1064,7 @@ keeps a cache of git directories and working trees that can be reused.")
|
|||
(define-public clojure-tools-logging
|
||||
(package
|
||||
(name "clojure-tools-logging")
|
||||
(version "1.3.0")
|
||||
(version "1.3.1")
|
||||
(home-page "https://github.com/clojure/tools.logging")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
|
|
@ -937,7 +1074,7 @@ keeps a cache of git directories and working trees that can be reused.")
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"106n4cxsxzs0hvpsfi1h14b09xm6klrvj1g5fbd5nw8fj3mpkdac"))))
|
||||
"1jdk7b6zm73m7nki76123ik6px9rl5g5wb06298v34h56qyck8lr"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
'(#:doc-dirs '()
|
||||
|
|
@ -971,36 +1108,10 @@ implementation, selected at runtime when the clojure.tools.logging namespace
|
|||
is first loaded.")
|
||||
(license license:epl1.0)))
|
||||
|
||||
(define-public clojure-tools-reader
|
||||
(package
|
||||
(name "clojure-tools-reader")
|
||||
(version "1.5.0")
|
||||
(home-page "https://github.com/clojure/tools.reader")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url home-page)
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1jf05q4ym8z16qaxidx47g2gjv04qcf1wvkca3wqyiaszpvym4zz"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
'(#:doc-dirs '()
|
||||
#:source-dirs '("src/main/clojure")
|
||||
#:test-dirs '("src/test/clojure")
|
||||
#:test-exclude '(clojure.tools.common-tests))) ; Loaded by other tests.
|
||||
(synopsis "Clojure reader written in Clojure")
|
||||
(description "The clojure.tools.reader library offers all functionality
|
||||
provided by the Clojure Core reader and more. It adds metadata such as column
|
||||
and line numbers not only to lists, but also to symbols, vectors and maps.")
|
||||
(license license:epl1.0)))
|
||||
|
||||
(define-public http-kit
|
||||
(package
|
||||
(name "http-kit")
|
||||
(version "2.8.0")
|
||||
(version "2.8.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
|
|
@ -1009,7 +1120,7 @@ and line numbers not only to lists, but also to symbols, vectors and maps.")
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1361bpb4sn3dbp215s7gf1bcrb45lgx3lk6lix7bndw9lahr5ank"))))
|
||||
"1fqfl7a7ygfw43xjmmlwrl55xbz34qxpzc8230bpqvjh9n417h74"))))
|
||||
(build-system clojure-build-system)
|
||||
(arguments
|
||||
'(#:java-source-dirs '("src/java")
|
||||
|
|
@ -1023,3 +1134,59 @@ high-performance Clojure HTTP client and server library with WebSocket and
|
|||
asynchronous support.")
|
||||
(home-page "https://github.com/http-kit/http-kit")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public cognitect-aws-api
|
||||
(package
|
||||
(name "cognitect-aws-api")
|
||||
(version "0.8.774")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/cognitect-labs/aws-api")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1y3impishicd8niy1vddx6c80pnbpz24zfr7vysi4r56p1vqnwmb"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
(for-each delete-file
|
||||
(list
|
||||
;; Require Cognitect http client
|
||||
"src/cognitect/aws/http/cognitect.clj"
|
||||
;; Requires Babashka.
|
||||
"test/src/bb_test_runner.clj"
|
||||
;; Requires AWS Java SDK v2.
|
||||
"test/src/cognitect/aws/jdk_v2.clj"
|
||||
"test/src/cognitect/aws/signers_test.clj"
|
||||
;; Remove integration tests.
|
||||
"test/src/cognitect/aws/client/shared_test.clj"
|
||||
"test/src/cognitect/aws/api_test.clj"
|
||||
"test/src/cognitect/client/impl_test.clj"
|
||||
"test/src/cognitect/client/test_double_test.clj"))
|
||||
;; Remove integration tests
|
||||
(delete-file-recursively "test/src/cognitect/aws/integration")))))
|
||||
(build-system clojure-build-system)
|
||||
(propagated-inputs (list clojure-core-async
|
||||
clojure-tools-logging
|
||||
clojure-data-json
|
||||
clojure-data-xml))
|
||||
(native-inputs (list clojure-test-check
|
||||
http-kit))
|
||||
(arguments `(#:source-dirs '("src")
|
||||
#:doc-dirs '()
|
||||
#:test-dirs '("test/src" "test/resources")
|
||||
;; Allow using java.net.http client.
|
||||
#:jdk ,openjdk11))
|
||||
(synopsis
|
||||
"Programmatic access to AWS services from Clojure programs")
|
||||
(description
|
||||
"This package is an idiomatic, data-oriented Clojure library for invoking AWS
|
||||
APIs. While the library offers some helper and documentation functions you'll
|
||||
use at development time, the only functions you ever need at runtime are
|
||||
client, which creates a client for a given service and invoke, which invokes
|
||||
an operation on the service. invoke takes a map and returns a map, and works
|
||||
the same way for every operation on every service.")
|
||||
(home-page "https://github.com/cognitect-labs/aws-api")
|
||||
(license license:asl2.0)))
|
||||
|
|
|
|||
|
|
@ -54949,9 +54949,6 @@ the @code{raster} package that is suitable for extracting raster values using
|
|||
#:tests? #false
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'use-system-tbb
|
||||
(lambda _
|
||||
(setenv "TBB_ROOT" #$(this-package-input "tbb"))))
|
||||
(add-before 'install 'relax-gcc-14-strictness
|
||||
(lambda _
|
||||
;; XXX FIXME: $HOME/.R/Makevars seems to be the only way to
|
||||
|
|
|
|||
|
|
@ -10610,7 +10610,8 @@ with Emacs.")
|
|||
(list
|
||||
#:tests? #f ;the testing framework, test-hdl, requires network
|
||||
#:test-command #~(list "make")))
|
||||
(propagated-inputs (list tree-sitter-vhdl))
|
||||
;; TODO: Switch to tree-sitter-vhdl once supported.
|
||||
(propagated-inputs (list tree-sitter-vhdl-0))
|
||||
(home-page "https://github.com/gmlarumbe/vhdl-ts-mode/")
|
||||
(synopsis "VHDL Tree-sitter mode")
|
||||
(description
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
;;; Copyright © 2017 Nikita <nikita@n0.is>
|
||||
;;; Copyright © 2017, 2018, 2020–2022 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2018, 2024 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2018, 2019, 2020, 2021, 2023 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2018-2021, 2023, 2026 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2019, 2020, 2022 Marius Bakke <marius@gnu.org>
|
||||
;;; Copyright © 2020 Roel Janssen <roel@gnu.org>
|
||||
;;; Copyright © 2020, 2021, 2024 Nicolas Goaziou <mail@nicolasgoaziou.fr>
|
||||
|
|
@ -1316,7 +1316,13 @@ TTF (TrueType/OpenType Font) files.")
|
|||
"1l718n4k4widx49xz7qrj4mybzb8q67kp2jw7f47604ips4654mf"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
#~(begin
|
||||
;; Include <unistd.h> for the 'getopt' declaration.
|
||||
(substitute* "t1asm.c"
|
||||
(("#include <stdio.h>" all)
|
||||
(string-append all "\n"
|
||||
"#include <unistd.h>\n")))
|
||||
|
||||
;; Remove trailing backslashes in the sed expression of the
|
||||
;; 'install' rule since sed would otherwise fail.
|
||||
(substitute* "Makefile"
|
||||
|
|
@ -1324,8 +1330,9 @@ TTF (TrueType/OpenType Font) files.")
|
|||
#t))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:tests? #f ;no tests
|
||||
#:phases (modify-phases %standard-phases
|
||||
(list #:tests? #f ;no tests
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(replace 'configure
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out")))
|
||||
|
|
@ -1335,8 +1342,7 @@ TTF (TrueType/OpenType Font) files.")
|
|||
(("OWNER = .*")
|
||||
"OWNER = `id -un`\n")
|
||||
(("GROUP = .*")
|
||||
"GROUP = `id -g`\n"))
|
||||
#t)))
|
||||
"GROUP = `id -g`\n")) #t)))
|
||||
(replace 'build
|
||||
(lambda _
|
||||
(invoke "make" "-j"
|
||||
|
|
|
|||
|
|
@ -9905,7 +9905,7 @@ your score gets higher, you level up and the blocks fall faster.")
|
|||
(define-public endless-sky
|
||||
(package
|
||||
(name "endless-sky")
|
||||
(version "0.10.14")
|
||||
(version "0.10.16")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
|
|
@ -9914,7 +9914,7 @@ your score gets higher, you level up and the blocks fall faster.")
|
|||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "198ijk95qhq5qicp27f26g0pqsqdgjyb9ll3dmd3dq8b68j3xyfc"))))
|
||||
(base32 "1dk25wgbl385dwplq2a6wsdv53q6pylrqqkqrmvn59z7sd8vjywr"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list #:configure-flags #~(list "-DES_USE_VCPKG=0"
|
||||
|
|
@ -9934,7 +9934,9 @@ your score gets higher, you level up and the blocks fall faster.")
|
|||
(("games\\)") "bin)")))))))
|
||||
(inputs
|
||||
(list catch2-3
|
||||
flac
|
||||
glew
|
||||
libavif
|
||||
libjpeg-turbo
|
||||
libmad
|
||||
libpng
|
||||
|
|
|
|||
|
|
@ -7673,6 +7673,24 @@ ftypes.")
|
|||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(install-file "jaro"
|
||||
(string-append #$output "/bin"))))
|
||||
(add-before 'install 'set-paths
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* "jaro"
|
||||
(("^exec guile")
|
||||
(string-append "exec "
|
||||
(search-input-file inputs "/bin/guile")))
|
||||
(("\"mimetype\"")
|
||||
(string-append "\""
|
||||
(search-input-file inputs "/bin/mimetype")
|
||||
"\""))
|
||||
(("\"file\"")
|
||||
(string-append "\""
|
||||
(search-input-file inputs "/bin/file")
|
||||
"\""))
|
||||
(("\"printf\"")
|
||||
(string-append "\""
|
||||
(search-input-file inputs "/bin/printf")
|
||||
"\"")))))
|
||||
(replace 'check
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
|
|
|
|||
47
gnu/packages/patches/unity-test-support-int64.patch
Normal file
47
gnu/packages/patches/unity-test-support-int64.patch
Normal file
|
|
@ -0,0 +1,47 @@
|
|||
Upstream status: https://github.com/ThrowTheSwitch/Unity/pull/823
|
||||
|
||||
From 4d35efd1bc5ecfa67d73bf81e64ba54c08ed5318 Mon Sep 17 00:00:00 2001
|
||||
From: Dariqq <77271900+Dariqq@users.noreply.github.com>
|
||||
Date: Tue, 20 Jan 2026 18:10:14 +0000
|
||||
Subject: [PATCH] meson: Add option for UNITY_SUPPORT_64
|
||||
|
||||
---
|
||||
meson.build | 5 +++++
|
||||
meson_options.txt | 1 +
|
||||
2 files changed, 6 insertions(+)
|
||||
|
||||
diff --git a/meson.build b/meson.build
|
||||
index 6585129..633beb3 100644
|
||||
--- a/meson.build
|
||||
+++ b/meson.build
|
||||
@@ -26,6 +26,7 @@ project('unity', 'c',
|
||||
build_fixture = get_option('extension_fixture')
|
||||
build_memory = get_option('extension_memory')
|
||||
support_double = get_option('support_double')
|
||||
+support_int64 = get_option('support_int64')
|
||||
|
||||
unity_args = []
|
||||
unity_src = []
|
||||
@@ -48,6 +49,10 @@ if support_double
|
||||
unity_args += '-DUNITY_INCLUDE_DOUBLE'
|
||||
endif
|
||||
|
||||
+if support_int64
|
||||
+ unity_args += '-DUNITY_SUPPORT_64'
|
||||
+endif
|
||||
+
|
||||
unity_lib = static_library(meson.project_name(),
|
||||
sources: unity_src,
|
||||
c_args: unity_args,
|
||||
diff --git a/meson_options.txt b/meson_options.txt
|
||||
index 8e66784..d8ab7a7 100644
|
||||
--- a/meson_options.txt
|
||||
+++ b/meson_options.txt
|
||||
@@ -1,3 +1,4 @@
|
||||
option('extension_fixture', type: 'boolean', value: 'false', description: 'Whether to enable the fixture extension.')
|
||||
option('extension_memory', type: 'boolean', value: 'false', description: 'Whether to enable the memory extension.')
|
||||
option('support_double', type: 'boolean', value: 'false', description: 'Whether to enable double precision floating point assertions.')
|
||||
+option('support_int64', type: 'boolean', value: false, description: 'Whether to enable support for 64bit integers. false means autodetect.')
|
||||
--
|
||||
2.52.0
|
||||
|
||||
|
|
@ -12,6 +12,7 @@
|
|||
;;; Copyright © 2025 Nguyễn Gia Phong <cnx@loang.net>
|
||||
;;; Copyright © 2025 Evgenii Klimov <eugene.dev@lipklim.org>
|
||||
;;; Copyright © 2025 Felipe Silva <git@felipeqq2.rocks>
|
||||
;;; Copyright © 2026 Cayetano Santos <csantosb@inventati.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
|
@ -2016,6 +2017,17 @@ files.")))
|
|||
"1.0.3"))
|
||||
|
||||
(define-public tree-sitter-vhdl
|
||||
(tree-sitter-grammar
|
||||
"vhdl" "VHDL"
|
||||
"1q3phfp8wa7c0ava5488s6vpkvk5n5y8ilglg23h9lpygarx7fji"
|
||||
"1.3.1"
|
||||
#:repository-url "https://github.com/jpt13653903/tree-sitter-vhdl"))
|
||||
|
||||
;;; TODO: Remove this package when emacs-vhdl-ts-mode switches to jpt13653903.
|
||||
;;; We keep old one as alemuller is still required by emacs-vhdl-ts-mode.
|
||||
;;; See:
|
||||
;;; https://github.com/gmlarumbe/vhdl-ts-mode/issues/17
|
||||
(define-public tree-sitter-vhdl-0
|
||||
(let ((version "0.1.1") ; In package.json, but untagged
|
||||
(commit "a3b2d84990527c7f8f4ae219c332c00c33d2d8e5")
|
||||
(revision "0"))
|
||||
|
|
|
|||
|
|
@ -7,6 +7,7 @@
|
|||
;;; Copyright © 2020 Jan Wielkiewicz <tona_kosmicznego_smiecia@interia.pl>
|
||||
;;; Copyright © 2021 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2023, 2024 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2026 Andreas Enge <andreas@enge.fr>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
|
@ -32,6 +33,7 @@
|
|||
#:use-module (gnu packages curl)
|
||||
#:use-module (gnu packages file)
|
||||
#:use-module (gnu packages gettext)
|
||||
#:use-module (gnu packages icu4c)
|
||||
#:use-module (gnu packages image)
|
||||
#:use-module (gnu packages javascript)
|
||||
#:use-module (gnu packages linux)
|
||||
|
|
@ -41,6 +43,7 @@
|
|||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages pretty-print)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages serialization)
|
||||
#:use-module (gnu packages sqlite)
|
||||
#:use-module (gnu packages video)
|
||||
#:use-module (gnu packages xiph)
|
||||
|
|
@ -207,7 +210,9 @@ It aims to be fully compliant with DLNA and UPnP-AV standards.")
|
|||
(define-public gerbera
|
||||
(package
|
||||
(name "gerbera")
|
||||
(version "2.5.0")
|
||||
;; Version 3.1.1 requires libzippp, which would have to be packaged
|
||||
;; before the next update.
|
||||
(version "3.0.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
|
|
@ -216,14 +221,20 @@ It aims to be fully compliant with DLNA and UPnP-AV standards.")
|
|||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0lhzjln7ljfvr696wsghhjqn2hrwwvxga4ifpxnjypraxkqkyzyx"))))
|
||||
(base32 "0997zj56m60jkrkwh95b229vkl42nlmd6nnq5jqfb34kckhxvk3n"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:configure-flags
|
||||
#~(list "-DWITH_SYSTEMD=NO"
|
||||
"-DWITH_AVCODEC=YES"
|
||||
"-DWITH_TESTS=YES")))
|
||||
"-DWITH_TESTS=YES")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'configure 'patch
|
||||
(lambda _
|
||||
(substitute* "CMakeLists.txt"
|
||||
(("/usr/share") (string-append #$output "/share"))))))))
|
||||
(inputs
|
||||
(list curl
|
||||
duktape
|
||||
|
|
@ -231,12 +242,14 @@ It aims to be fully compliant with DLNA and UPnP-AV standards.")
|
|||
ffmpeg
|
||||
file
|
||||
fmt
|
||||
icu4c
|
||||
jsoncpp
|
||||
libebml
|
||||
libexif
|
||||
libmatroska
|
||||
libupnp
|
||||
pugixml
|
||||
spdlog-1.13
|
||||
spdlog
|
||||
sqlite
|
||||
taglib
|
||||
`(,util-linux "lib")
|
||||
|
|
|
|||
|
|
@ -1273,17 +1273,13 @@ other git-like projects such as @code{libgit2}.")
|
|||
%build-inputs
|
||||
(string-append "/bin/" ,(%current-target-system)
|
||||
"-pkg-config"))))
|
||||
'())))
|
||||
'())
|
||||
;; See https://github.com/libgit2/libgit2/issues/7169
|
||||
,@(if (target-64bit?)
|
||||
'()
|
||||
'("-DCMAKE_C_FLAGS=-D_FILE_OFFSET_BITS=64"))))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
,@(if (or (target-arm32?) (target-hurd?))
|
||||
;; Some tests are flaky on armhf.
|
||||
;; On GNU/Hurd, the 'diff/workdir' test in libgit2 1.7.1 fails
|
||||
;; while comparing st.st_size to zero.
|
||||
'((add-before 'check 'pre-check
|
||||
(lambda _
|
||||
(setenv "GITTEST_FLAKY_STAT" "true"))))
|
||||
'())
|
||||
;; Run checks more verbosely, unless we are cross-compiling.
|
||||
(replace 'check
|
||||
(lambda* (#:key (tests? #t) #:allow-other-keys)
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue