--- Begin Message ---
Subject: |
[PATCH 1/2] build-system/dune: Automatically deduce test-target in most cases. |
Date: |
Tue, 22 Nov 2022 20:47:11 +0100 |
guix/build-system/dune.scm (dune-build): tests? defaults to #f.
guix/build/dune-build-system.scm (check): Missing test-target is auto-detected.
---
guix/build-system/dune.scm | 2 +-
guix/build/dune-build-system.scm | 9 +++++++--
2 files changed, 8 insertions(+), 3 deletions(-)
diff --git a/guix/build-system/dune.scm b/guix/build-system/dune.scm
index 12100fd8e8..b531d3c337 100644
--- a/guix/build-system/dune.scm
+++ b/guix/build-system/dune.scm
@@ -107,7 +107,7 @@ (define* (dune-build name inputs
(dune-release-flags ''())
(tests? #t)
(test-flags ''())
- (test-target "test")
+ (test-target #f)
(install-target "install")
(validate-runpath? #t)
(patch-shebangs? #t)
diff --git a/guix/build/dune-build-system.scm b/guix/build/dune-build-system.scm
index e9ccc71057..8a3725a4e9 100644
--- a/guix/build/dune-build-system.scm
+++ b/guix/build/dune-build-system.scm
@@ -42,12 +42,17 @@ (define* (build #:key (build-flags '()) (jbuild? #f)
build-flags)))
#t)
-(define* (check #:key (test-flags '()) (test-target "test") tests?
+(define* (check #:key (test-flags '()) (test-target #f) tests?
(jbuild? #f) (package #f) (dune-release-flags '())
#:allow-other-keys)
"Test the given package."
(when tests?
- (let ((program (if jbuild? "jbuilder" "dune")))
+ (let ((program (if jbuild? "jbuilder" "dune"))
+ (test-target (or test-target
+ (cond
+ ((file-exists? "tests") "tests")
+ ((file-exists? "test") "test")
+ (else ".")))))
(apply invoke program "runtest" test-target
(append (if package (list "-p" package)
dune-release-flags)
--
2.38.1
--- End Message ---
--- Begin Message ---
Subject: |
Re: [PATCH v3 0/6] guix: dune-build-system: Run all tests. |
Date: |
Sun, 15 Jan 2023 16:02:54 +0100 |
I was able to check the dependents, so pushed to master as
7686b68f6bb1ae5dc206178805c32bceceea3743 -
79bf3b54a64e304a29334b5029c24d942d9dc051.
Note that I moved patches around, to have the last one before removing
test-target. I merged patches 3, 4 and 5 because intermediate states
would have failing packages otherwise. Also, patch 5 had unrelated
changes to lablgtk3 which I droped, because the package still builds.
If that was intentional, please send a new patch for that :)
I also listed all modified packages in the commit message, and removed
the Co-authored line which listed the author already.
Thanks!
--- End Message ---