GNU logs - #58365, boring messages


Message sent to guix-patches@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: [bug#58365] [PATCH 0/6] Support #:tests? in guile-build-system
Resent-From: Maxime Devos <maximedevos@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: guix-patches@HIDDEN
Resent-Date: Fri, 07 Oct 2022 20:49:02 +0000
Resent-Message-ID: <handler.58365.B.166517568314504 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: report 58365
X-GNU-PR-Package: guix-patches
X-GNU-PR-Keywords: patch
To: 58365 <at> debbugs.gnu.org
X-Debbugs-Original-To: "guix-patches@HIDDEN" <guix-patches@HIDDEN>
Received: via spool by submit <at> debbugs.gnu.org id=B.166517568314504
          (code B ref -1); Fri, 07 Oct 2022 20:49:02 +0000
Received: (at submit) by debbugs.gnu.org; 7 Oct 2022 20:48:03 +0000
Received: from localhost ([127.0.0.1]:37514 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1oguGJ-0003ls-6X
	for submit <at> debbugs.gnu.org; Fri, 07 Oct 2022 16:48:03 -0400
Received: from lists.gnu.org ([209.51.188.17]:44980)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <maximedevos@HIDDEN>) id 1oguGG-0003lO-VZ
 for submit <at> debbugs.gnu.org; Fri, 07 Oct 2022 16:48:01 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:60994)
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <maximedevos@HIDDEN>)
 id 1oguGD-0000EU-Lp
 for guix-patches@HIDDEN; Fri, 07 Oct 2022 16:48:00 -0400
Received: from albert.telenet-ops.be ([2a02:1800:110:4::f00:1a]:34038)
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.90_1) (envelope-from <maximedevos@HIDDEN>)
 id 1oguGB-0002DP-0K
 for guix-patches@HIDDEN; Fri, 07 Oct 2022 16:47:57 -0400
Received: from [IPV6:2a02:1811:8c09:9d00:5dba:d409:33f7:a16]
 ([IPv6:2a02:1811:8c09:9d00:5dba:d409:33f7:a16])
 by albert.telenet-ops.be with bizsmtp
 id V8np2800920ykKC068npJU; Fri, 07 Oct 2022 22:47:49 +0200
Message-ID: <e39412d9-edf3-25c7-1e86-5442ecc0a1fd@HIDDEN>
Date: Fri, 7 Oct 2022 22:47:49 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.3.0
Content-Language: en-US
From: Maxime Devos <maximedevos@HIDDEN>
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature";
 boundary="------------o80Ktxkc4psFMldSGTgbQ4Nm"
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=telenet.be; s=r22;
 t=1665175669; bh=+fHMLpYqhRD9r1Yha0HUjGWi0iOLHTKRAxek90BuTBM=;
 h=Date:To:From:Subject;
 b=UiQxVuMjd5iGkaVjWd1OPN3dwl9mUdFzesoLNmfyH4uaxlmyi/JoCQPTg4BasT7QE
 iZIiySwRXI+XCOC+ThORVltlwjkTTucH+NNFWfgHnysC4SnMsVYcHZCjqJvcl77UC3
 qFlTfLUsOmEh2o20h2wf3cBH4yMy8tKL8SMFzkQUzg0s2BHJygVSkaGuJ9h+2PD7Qg
 6BIw94VbaZq59Wvdfl3mgellBGMM3OaLNxIj9r7ZSN8nt9yQAx2Tx0Caus1S923IcQ
 o60agfBVf1eAU43a/NGLwhL9h85gU1tYOBPRvyErNuTMSBDbnI9avPlf2kO33IJHlP
 9PtoBWLl16cOA==
Received-SPF: pass client-ip=2a02:1800:110:4::f00:1a;
 envelope-from=maximedevos@HIDDEN; helo=albert.telenet-ops.be
X-Spam_score_int: -27
X-Spam_score: -2.8
X-Spam_bar: --
X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,
 DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001,
 RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001,
 SPF_PASS=-0.001 autolearn=ham autolearn_force=no
X-Spam_action: no action
X-Spam-Score: -1.3 (-)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -2.3 (--)

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------------o80Ktxkc4psFMldSGTgbQ4Nm
Content-Type: multipart/mixed; boundary="------------RcoaLWqS4SDLHHTPd4lIHcwA";
 protected-headers="v1"
From: Maxime Devos <maximedevos@HIDDEN>
To: "guix-patches@HIDDEN" <guix-patches@HIDDEN>
Message-ID: <e39412d9-edf3-25c7-1e86-5442ecc0a1fd@HIDDEN>
Subject: [PATCH 0/6] Support #:tests? in guile-build-system

--------------RcoaLWqS4SDLHHTPd4lIHcwA
Content-Type: multipart/mixed; boundary="------------0tFClC5Th0YvGSKzPLwAZzVU"

--------------0tFClC5Th0YvGSKzPLwAZzVU
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: base64

Rml4ZXM6IDxodHRwczovL2lzc3Vlcy5ndWl4LmdudS5vcmcvNTgzMzc+DQoNCmd1aWxlLWJ1
aWxkLXN5c3RlbSBjYW4ndCBndWVzcyB3aGVyZSB0aGUgdGVzdHMgYXJlIGxvY2F0ZWQsIHNv
IGN1cnJlbnRseSANCml0J3Mgb3B0LWluLCB2aWEgIzp0ZXN0LXNjcmlwdC4gIEFmdGVyIHRo
aXMgcGF0Y2ggc2VyaWVzLCBpdCBpcyANCmN1cnJlbnRseSBvbmx5IHVzZWQgYnkgZ3VpbGUt
ZmZpLWZmdHcsIGJ1dCBvdGhlciBndWlsZS1idWlsZC1zeXN0ZW0gDQpwYWNrYWdlcyB0aGF0
IHVzZSBTUkZJLTY0IGNvdWxkIHBvdGVudGlhbGx5IHVzZSBpdCB0b28gKGUuZy4gDQpndWls
ZS1zcmZpLTExNywgd2hpY2ggaXMgbm90IHBhY2thZ2VzIG9yIGV2ZW4gcmVsZWFzZWQgeWV0
KS4NCg0KKiBGaXJzdCBjb21taXQ6IHBhY2thZ2UgYSB0ZXN0IGRyaXZlciwgZm9yIG5pY2Vy
IG91dHB1dCBhbmQgZm9yIHByb3BlciANCmV4aXQgc3RhdHVzLiAgSSBjb3BpZWQgdGVzdC1k
cml2ZXIuc2NtIHRvIGF1eC1maWxlcyBzdWNoIHRoYXQgDQp0ZXN0LWRyaXZlci5zY20gY2Fu
IGJlIGNoYW5nZWQgd2l0aG91dCB3b3JyeWluZyBhYm91dCByZWJ1aWxkcy4gIE9UT0gsIA0K
aXQgaXNuJ3QgbW9kaWZpZWQgdGhhdCBvZnRlbiwgc28gdGhhdCBjb3VsZCBiZSBsZWZ0IG91
dC4NCg0KQWxzbywgY29weWluZyB0ZXN0LWRyaXZlci5zY20gY2F1c2VzIHRoZSBmb2xsb3dp
bmc6DQoNCmd1aXggYnVpbGQ6IHdhcm5pbmc6IGZhaWxlZCB0byBsb2FkICcoZ251IHBhY2th
Z2VzIGF1eC1maWxlcyB0ZXN0LWRyaXZlciknOg0Kbm8gY29kZSBmb3IgbW9kdWxlIChnbnUg
cGFja2FnZXMgYXV4LWZpbGVzIHRlc3QtZHJpdmVyKQ0KaGludDogRmlsZSANCmAvaG9tZS9h
bnRpcG9kZS9zb3VyY2UtY29kZS9ndWl4LW1hc3Rlci9nbnUvcGFja2FnZXMvYXV4LWZpbGVz
L3Rlc3QtZHJpdmVyLnNjbScgDQpzaG91bGQgcHJvYmFibHkgc3RhcnQgd2l0aDoNCg0KICAg
ICAgKGRlZmluZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBhdXgtZmlsZXMgdGVzdC1kcml2ZXIp
KQ0KDQpXaGF0ZXZlciBjb2RlIGRvZXMgdGhpcyBsb2FkaW5nLCBzaG91bGQgcHJvYmFibHkg
YmUgbW9kaWZpZWQgdG8gbm90IGxvYWQgDQp0aGluZ3MgdW5kZXIgYXV4LWZpbGVzLg0KDQpH
b2luZyBieSAiZ2l0IGxvZyIsIHRoZSB1cHN0cmVhbSBvZiB0aGlzIHRlc3QgZHJpdmVyIGlz
IEd1aXggaXRzZWxmLg0KDQoqIFNlY29uZCBjb21taXQ6IGFkZCBzdXBwb3J0IGZvciAjOnRl
c3RzPywgdXNpbmcgdGhlIHRlc3QgZHJpdmVyLg0KKiBUaGlyZCBjb21taXQ6IHVzZSBpdCBp
biBndWlsZS1mZmktZmZ0dy4NCiogRm91cnRoIGFuZCBmaWZ0aCBjb21taXQ6IGNsZWFudXAg
b2YgZ3VpbGUtZmZpLWZmdHcuDQoqIFNpeHRoIGNvbW1pdDogYWRqdXN0IGd1aWxlLWFjLWQt
YnVzIHRvIG5ldyAnY2hlY2snIHBoYXNlDQoNCk9ubHkgdGhlIGluaXRpYWwgY29tbWl0IGlz
IHJlcXVpcmVkIGZvciBhZGRpbmcgc3VwcG9ydCBmb3IgdGVzdHMuDQoNCkknbGwgbGVhdmUg
YnVpbGRpbmcgZGVwZW5kZW5jaWVzIHRvIDxodHRwczovL3FhLmd1aXguZ251Lm9yZy8+Lg0K
DQpHcmVldGluZ3MsDQpNYXhpbWUuDQo=
--------------0tFClC5Th0YvGSKzPLwAZzVU
Content-Type: application/pgp-keys; name="OpenPGP_0x49E3EE22191725EE.asc"
Content-Disposition: attachment; filename="OpenPGP_0x49E3EE22191725EE.asc"
Content-Description: OpenPGP public key
Content-Transfer-Encoding: quoted-printable

-----BEGIN PGP PUBLIC KEY BLOCK-----

xjMEX4ch6BYJKwYBBAHaRw8BAQdANPb/d6MrGnGi5HyvODCkBUJPRjiFQcRU5V+m
xvMaAa/NL01heGltZSBEZXZvcyA8bWF4aW1lLmRldm9zQHN0dWRlbnQua3VsZXV2
ZW4uYmU+wpAEExYIADgWIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCX4ch6AIbAwUL
CQgHAwUVCgkICwUWAgMBAAIeAQIXgAAKCRBJ4+4iGRcl7japAQC3opZ2KGWzWmRc
/gIWSu0AAcfMwyinFEEPa/QhUt2CogD/e2RdF4CYAgaRHJJmZ9WU7piKbLZ7llB4
LzgezVDHggzNJU1heGltZSBEZXZvcyA8bWF4aW1lZGV2b3NAdGVsZW5ldC5iZT7C
kAQTFggAOBYhBMHzPuIMUo/bfdcBH0nj7iIZFyXuBQJf56ycAhsDBQsJCAcDBRUK
CQgLBRYCAwEAAh4BAheAAAoJEEnj7iIZFyXujpQBAKV1SwDDl4f24rXciDlB9L8W
ycZt30CgbewMSRQk4mvbAP9dFMbVVixYBd6C8cfhR+NsOBGiOJnQABlUmgNuqGFJ
Dc44BF+HIegSCisGAQQBl1UBBQEBB0BOlzIWiJzgobMF6/cqwLaLk7jIcFSZ++c0
k9cCNT6YXwMBCAfCeAQYFggAIBYhBMHzPuIMUo/bfdcBH0nj7iIZFyXuBQJfhyHo
AhsMAAoJEEnj7iIZFyXuMr0BAJc8cl5PGvVmVuSQVKjleNl4DK1/XAaPAYPe34AE
fZJPAP9IqLCQhH/FeJanHqBP8gNdGNI2qn8RnnLVfRJgUjZ1BA=3D=3D
=3DOVqp
-----END PGP PUBLIC KEY BLOCK-----

--------------0tFClC5Th0YvGSKzPLwAZzVU--

--------------RcoaLWqS4SDLHHTPd4lIHcwA--

--------------o80Ktxkc4psFMldSGTgbQ4Nm
Content-Type: application/pgp-signature; name="OpenPGP_signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="OpenPGP_signature"

-----BEGIN PGP SIGNATURE-----

wnsEABYIACMWIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCY0CQdQUDAAAAAAAKCRBJ4+4iGRcl7qp3
AP92NhTKOc4LEmG/jlrvadTQ1Rw0JtoF+TB6BUaalu67aQD/TKJqB4FGlxSCuQyFL/naEIykxhlF
cwuT4TFiicfgzAc=
=JAdH
-----END PGP SIGNATURE-----

--------------o80Ktxkc4psFMldSGTgbQ4Nm--




Message sent:


Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-Mailer: MIME-tools 5.505 (Entity 5.505)
Content-Type: text/plain; charset=utf-8
X-Loop: help-debbugs@HIDDEN
From: help-debbugs@HIDDEN (GNU bug Tracking System)
To: Maxime Devos <maximedevos@HIDDEN>
Subject: bug#58365: Acknowledgement ([PATCH 0/6] Support #:tests? in
 guile-build-system)
Message-ID: <handler.58365.B.166517568314504.ack <at> debbugs.gnu.org>
References: <e39412d9-edf3-25c7-1e86-5442ecc0a1fd@HIDDEN>
X-Gnu-PR-Message: ack 58365
X-Gnu-PR-Package: guix-patches
X-Gnu-PR-Keywords: patch
Reply-To: 58365 <at> debbugs.gnu.org
Date: Fri, 07 Oct 2022 20:49:02 +0000

Thank you for filing a new bug report with debbugs.gnu.org.

This is an automatically generated reply to let you know your message
has been received.

Your message is being forwarded to the package maintainers and other
interested parties for their attention; they will reply in due course.

Your message has been sent to the package maintainer(s):
 guix-patches@HIDDEN

If you wish to submit further information on this problem, please
send it to 58365 <at> debbugs.gnu.org.

Please do not send mail to help-debbugs@HIDDEN unless you wish
to report a problem with the Bug-tracking system.

--=20
58365: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D58365
GNU Bug Tracking System
Contact help-debbugs@HIDDEN with problems


Message sent to guix-patches@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: [bug#58365] [PATCH 6/6] guile-ac-d-bus: Don't duplicate 'check' phase.
Resent-From: Maxime Devos <maximedevos@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: guix-patches@HIDDEN
Resent-Date: Fri, 07 Oct 2022 20:54:01 +0000
Resent-Message-ID: <handler.58365.B58365.166517603915118 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 58365
X-GNU-PR-Package: guix-patches
X-GNU-PR-Keywords: patch
To: 58365 <at> debbugs.gnu.org
Cc: Maxime Devos <maximedevos@HIDDEN>
Received: via spool by 58365-submit <at> debbugs.gnu.org id=B58365.166517603915118
          (code B ref 58365); Fri, 07 Oct 2022 20:54:01 +0000
Received: (at 58365) by debbugs.gnu.org; 7 Oct 2022 20:53:59 +0000
Received: from localhost ([127.0.0.1]:37539 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1oguM3-0003vf-JR
	for submit <at> debbugs.gnu.org; Fri, 07 Oct 2022 16:53:59 -0400
Received: from laurent.telenet-ops.be ([195.130.137.89]:40962)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <maximedevos@HIDDEN>) id 1oguM0-0003v7-LH
 for 58365 <at> debbugs.gnu.org; Fri, 07 Oct 2022 16:53:57 -0400
Received: from localhost.localdomain
 ([IPv6:2a02:1811:8c09:9d00:5dba:d409:33f7:a16])
 by laurent.telenet-ops.be with bizsmtp
 id V8tu2800920ykKC018tvFV; Fri, 07 Oct 2022 22:53:55 +0200
From: Maxime Devos <maximedevos@HIDDEN>
Date: Fri,  7 Oct 2022 22:53:52 +0200
Message-Id: <20221007205352.1282-6-maximedevos@HIDDEN>
X-Mailer: git-send-email 2.37.3
In-Reply-To: <20221007205352.1282-1-maximedevos@HIDDEN>
References: <20221007205352.1282-1-maximedevos@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=telenet.be; s=r22;
 t=1665176035; bh=aZbjeuw+7bvIRoCctY7daLGCA6VyxP9bmLoo1omsXfE=;
 h=From:To:Cc:Subject:Date:In-Reply-To:References;
 b=G5HpgZFR750JTGuCBiPuQo/hLW/KFDpXTnzEyNSW/tH7xL8PbUaNrWWEszQZYDUrF
 MSMEMkRsF08fmOBqFTwsev3X/2GsZaeDSQdDL+fn09ChyifYbhIgmSxBGChvRn7uXE
 g0wel2qCCNAFMlycEVn72zRgBjOrXChUsWZSNJfYwJdf7YJuAK9lhGS/Z+3rqWcmG7
 3pP6p5v49MRWe8cgcljTOOfCRjVCXsfrX/x/8c8S+I2XQ/eu4LFInL9mO2doPP4kHE
 tk70kgN/xQ7ceuorpk2O7T5VihojOfCxJ6imiCnEx1e2DK1Ixx4XwEFDGx0W+36Ybo
 FYLB/G72/OfaA==
X-Spam-Score: 0.0 (/)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

Now guile-build-system has a 'check' phase, the 'check' phase is duplicated.
It's harmless, but let's not.

* gnu/packages/guile-xyz.scm
(guile-ac-d-bus)[arguments]<#:phases>{check}: Instead of adding the phase,
replace it.
---
 gnu/packages/guile-xyz.scm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm
index 711e2eade9..0339bf8281 100644
--- a/gnu/packages/guile-xyz.scm
+++ b/gnu/packages/guile-xyz.scm
@@ -3911,7 +3911,7 @@ (define (guile-sls->sls file)
             (lambda _
               (with-directory-excursion "docs"
                 (invoke "makeinfo" "ac-d-bus"))))
-          (add-after 'build-doc 'check
+          (replace 'check
             (lambda* (#:key (tests? #t) #:allow-other-keys)
               (when tests?
                 ;; There is no locale for the ö character, which crashes
-- 
2.37.3





Message sent to guix-patches@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: [bug#58365] [PATCH 3/6] guile-ffi-fftw: Respect #:tests?.
Resent-From: Maxime Devos <maximedevos@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: guix-patches@HIDDEN
Resent-Date: Fri, 07 Oct 2022 20:54:02 +0000
Resent-Message-ID: <handler.58365.B58365.166517604015125 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 58365
X-GNU-PR-Package: guix-patches
X-GNU-PR-Keywords: patch
To: 58365 <at> debbugs.gnu.org
Cc: Maxime Devos <maximedevos@HIDDEN>
Received: via spool by 58365-submit <at> debbugs.gnu.org id=B58365.166517604015125
          (code B ref 58365); Fri, 07 Oct 2022 20:54:02 +0000
Received: (at 58365) by debbugs.gnu.org; 7 Oct 2022 20:54:00 +0000
Received: from localhost ([127.0.0.1]:37541 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1oguM3-0003vo-Sb
	for submit <at> debbugs.gnu.org; Fri, 07 Oct 2022 16:54:00 -0400
Received: from laurent.telenet-ops.be ([195.130.137.89]:40936)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <maximedevos@HIDDEN>) id 1oguM0-0003v3-LF
 for 58365 <at> debbugs.gnu.org; Fri, 07 Oct 2022 16:53:57 -0400
Received: from localhost.localdomain
 ([IPv6:2a02:1811:8c09:9d00:5dba:d409:33f7:a16])
 by laurent.telenet-ops.be with bizsmtp
 id V8tu2800920ykKC018tvFN; Fri, 07 Oct 2022 22:53:55 +0200
From: Maxime Devos <maximedevos@HIDDEN>
Date: Fri,  7 Oct 2022 22:53:49 +0200
Message-Id: <20221007205352.1282-3-maximedevos@HIDDEN>
X-Mailer: git-send-email 2.37.3
In-Reply-To: <20221007205352.1282-1-maximedevos@HIDDEN>
References: <20221007205352.1282-1-maximedevos@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=telenet.be; s=r22;
 t=1665176035; bh=Pt16bfvbWzVx0zCQnYB8P2GrRgrIbjiB9pyjCoQQ130=;
 h=From:To:Cc:Subject:Date:In-Reply-To:References;
 b=gxaBnc9piH7YE9waFl3imL6FzFqVhAj44S2Y5/ZHMqpda2jfBcqOQIPOyuFoQdPNZ
 LajCYrLNCziORzIwAX9Mj3bwf8TdARXIa11T8tsfa2zTPHTSDh3JTjxLXS/n4dvqg8
 Rp4lrzex6Mrk1lfuU6NBk98pQalMdq8wzCwLPu6dCcdkgxzs200rNFhnRZFklWPlJv
 xDkWxeZZ3EYRTS+Fk+r23RNB/NIrH1dsMrpoflCxbJkvjXJ2BJNg4LaHHNKZIyDtB3
 0X6VTQunge0NZc3nZ2pAtJPZSo6tbQd9AYa9mP2WkLPA2TJ2sDMViHZwX3a+E1TpNw
 CZYTO6S96ROrQ==
X-Spam-Score: 0.0 (/)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

* gnu/packages/guile-xyz.scm
(guile-ffi-fftw)[arguments]<#:test-script>: Set it.
[arguments]{#:phases}{check}: Remove custom phase.
[native-inputs]: Add native-input required by uncustomised 'check' phase.
---
 gnu/packages/guile-xyz.scm | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm
index 56f0bb8acc..2ab5683d19 100644
--- a/gnu/packages/guile-xyz.scm
+++ b/gnu/packages/guile-xyz.scm
@@ -3682,6 +3682,7 @@ (define-public guile-ffi-fftw
       (build-system guile-build-system)
       (arguments
        `(#:source-directory "mod"
+         #:test-script "../test/test-ffi-fftw.scm"
          #:phases
          (modify-phases %standard-phases
            (add-after 'unpack 'prepare-build
@@ -3689,11 +3690,8 @@ (define-public guile-ffi-fftw
                (substitute* "mod/ffi/fftw.scm"
                  (("\\(getenv \"GUILE_FFI_FFTW_LIBFFTW3_PATH\"\\)")
                   (format #f "\"~a/lib\"" (assoc-ref inputs "fftw"))))
-               #t))
-           (add-after 'build 'check
-             (lambda _
-               (invoke "guile" "-L" "mod"
-                       "-s" "test/test-ffi-fftw.scm"))))))
+               #t)))))
+      (native-inputs (list guile-test-driver))
       (inputs
        (list fftw guile-2.2))
       (home-page "https://github.com/lloda/guile-ffi-fftw/")
-- 
2.37.3





Message sent to guix-patches@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: [bug#58365] [PATCH 5/6] guile-ffi-fftw: Update to new Guile version.
Resent-From: Maxime Devos <maximedevos@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: guix-patches@HIDDEN
Resent-Date: Fri, 07 Oct 2022 20:54:02 +0000
Resent-Message-ID: <handler.58365.B58365.166517604015132 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 58365
X-GNU-PR-Package: guix-patches
X-GNU-PR-Keywords: patch
To: 58365 <at> debbugs.gnu.org
Cc: Maxime Devos <maximedevos@HIDDEN>
Received: via spool by 58365-submit <at> debbugs.gnu.org id=B58365.166517604015132
          (code B ref 58365); Fri, 07 Oct 2022 20:54:02 +0000
Received: (at 58365) by debbugs.gnu.org; 7 Oct 2022 20:54:00 +0000
Received: from localhost ([127.0.0.1]:37543 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1oguM4-0003vu-6S
	for submit <at> debbugs.gnu.org; Fri, 07 Oct 2022 16:54:00 -0400
Received: from laurent.telenet-ops.be ([195.130.137.89]:40956)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <maximedevos@HIDDEN>) id 1oguM0-0003v5-LG
 for 58365 <at> debbugs.gnu.org; Fri, 07 Oct 2022 16:53:58 -0400
Received: from localhost.localdomain
 ([IPv6:2a02:1811:8c09:9d00:5dba:d409:33f7:a16])
 by laurent.telenet-ops.be with bizsmtp
 id V8tu2800920ykKC018tvFT; Fri, 07 Oct 2022 22:53:55 +0200
From: Maxime Devos <maximedevos@HIDDEN>
Date: Fri,  7 Oct 2022 22:53:51 +0200
Message-Id: <20221007205352.1282-5-maximedevos@HIDDEN>
X-Mailer: git-send-email 2.37.3
In-Reply-To: <20221007205352.1282-1-maximedevos@HIDDEN>
References: <20221007205352.1282-1-maximedevos@HIDDEN>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=telenet.be; s=r22;
 t=1665176035; bh=2VkR/tVMkgTqcl8CyakIQxHRwHrIUSTt/wvK348qVpQ=;
 h=From:To:Cc:Subject:Date:In-Reply-To:References;
 b=IWIaKvM/Ensa94KISTbOyo1U73STM7nWeFv0Dm5U20XI+zpv+IKL/iTYX2aKwP/rd
 ktPQFrE4Bw1l+LgOzgZXOcp0kZO7z170imk4uF0oleeOofrVPgPI4wyLMOoitwI6PS
 pKGEOUFFxgHrhvUuOQWfEkw9YLK3znDubmNSyI83twYwZrU3oxqJSweR+WyeWeqDs6
 ZsIojMNpkKlPP0LDZADqTJJSeQCZRUgXyxgGCMfJVMWfXdIkjB2tq7JiQpLfSHFY59
 fPfvVhvLvtcq3nKMJplRcrBP8wHaNFCnCRal13p4PWmMF/JEnM9fU9Xks7xejd5Y54
 rMYYp82A4/wTg==
X-Spam-Score: 0.0 (/)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

It seems to build (including tests) fine and there are no dependents, so it
appears safe to update to a newer Guile version.

* gnu/packages/guile-xyz.scm
(guile-ffi-fftw)[inputs]{guile-2.2}: Replace by guile-3.0.
---
 gnu/packages/guile-xyz.scm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm
index a664e37968..711e2eade9 100644
--- a/gnu/packages/guile-xyz.scm
+++ b/gnu/packages/guile-xyz.scm
@@ -3693,7 +3693,7 @@ (define-public guile-ffi-fftw
                          (dirname
                           (search-input-file inputs "lib/libfftw3.so"))))))))))
       (native-inputs (list guile-test-driver))
-      (inputs (list fftw guile-2.2))
+      (inputs (list fftw guile-3.0))
       (home-page "https://github.com/lloda/guile-ffi-fftw/")
       (synopsis "Access FFTW through Guile's FFI")
       (description
-- 
2.37.3





Message sent to guix-patches@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: [bug#58365] [PATCH 2/6] build-system/guile: Run SRFI-64 tests.
Resent-From: Maxime Devos <maximedevos@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: guix-patches@HIDDEN
Resent-Date: Fri, 07 Oct 2022 20:54:03 +0000
Resent-Message-ID: <handler.58365.B58365.166517604115144 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 58365
X-GNU-PR-Package: guix-patches
X-GNU-PR-Keywords: patch
To: 58365 <at> debbugs.gnu.org
Cc: Maxime Devos <maximedevos@HIDDEN>
Received: via spool by 58365-submit <at> debbugs.gnu.org id=B58365.166517604115144
          (code B ref 58365); Fri, 07 Oct 2022 20:54:03 +0000
Received: (at 58365) by debbugs.gnu.org; 7 Oct 2022 20:54:01 +0000
Received: from localhost ([127.0.0.1]:37545 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1oguM4-0003w6-HF
	for submit <at> debbugs.gnu.org; Fri, 07 Oct 2022 16:54:01 -0400
Received: from laurent.telenet-ops.be ([195.130.137.89]:40930)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <maximedevos@HIDDEN>) id 1oguM0-0003v2-L2
 for 58365 <at> debbugs.gnu.org; Fri, 07 Oct 2022 16:53:58 -0400
Received: from localhost.localdomain
 ([IPv6:2a02:1811:8c09:9d00:5dba:d409:33f7:a16])
 by laurent.telenet-ops.be with bizsmtp
 id V8tu2800920ykKC018tvFL; Fri, 07 Oct 2022 22:53:55 +0200
From: Maxime Devos <maximedevos@HIDDEN>
Date: Fri,  7 Oct 2022 22:53:48 +0200
Message-Id: <20221007205352.1282-2-maximedevos@HIDDEN>
X-Mailer: git-send-email 2.37.3
In-Reply-To: <20221007205352.1282-1-maximedevos@HIDDEN>
References: <20221007205352.1282-1-maximedevos@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=telenet.be; s=r22;
 t=1665176035; bh=TWP8pWUy6TlUor/aXGtz1XUdfD0vWzqHuG48lxids1M=;
 h=From:To:Cc:Subject:Date:In-Reply-To:References;
 b=XpW1CFO+OAN3fKGnJAUVQMIEq8MmNMFx/1NMoadgCG1oLz3LNpeCVXw3/DpTm6UGZ
 ciG8CmgVIXtlpPjWIvRz1EHN5dk83QjQrKI5fp8/7sb0K818jDqh8dOlRf3WNV1/5n
 fceIX0CpElLpIeF77DHgbtZmn5w5Kn8qtZAmpRPacrzQa6kIcWycsgscWI5q4k8dT7
 ve0wkBr3Jo/tQaygnq1Y0KZqkSXkEMcuR0zPj1pnYAb5+7E2QNaW/INXBEKXP/WDh4
 L02Yl0Dr98rQqAsSgQCaXncjKw98asdc9A/0RXsIxDf/rH1HMKK44gJimFjZnV/B2i
 Y87BtPwli7gbQ==
X-Spam-Score: 0.0 (/)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

The build system needs a hint for the location of the test suite(s),
but aside from that tests are now run automatically.  I expect having
multiple test suites to be the exception, so I used 'test-script'
instead of 'test-scripts'.

Fixes: <https://issues.guix.gnu.org/58337>

* guix/build-system/guile.scm (guile-build): Pass on 'tests?', 'test-script'
and 'test-arguments'.
(guile-cross-build): Likewise.
* guix/build/guile-build-system.scm (guile-check): New phase.
(%standard-phases)[check]: Use it.
* doc/guix.texi (Build Systems)[guile-build-system]: Document new behaviour.
---
 doc/guix.texi                     | 15 ++++++++---
 guix/build-system/guile.scm       | 13 +++++++++
 guix/build/guile-build-system.scm | 44 +++++++++++++++++++++++++++++--
 3 files changed, 67 insertions(+), 5 deletions(-)

diff --git a/doc/guix.texi b/doc/guix.texi
index 08dab8e5b1..858bcec96f 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -9022,13 +9022,22 @@ code and that are so lean that they don't even have a makefile, let alone a
 @file{configure} script.  It compiles Scheme code using @command{guild
 compile} (@pxref{Compilation,,, guile, GNU Guile Reference Manual}) and
 installs the @file{.scm} and @file{.go} files in the right place.  It also
-installs documentation.
+installs documentation and runs SRFI-64 test suites.
+
+Test suites cannot be found automatically; the location of the test
+suite can be set with the @code{#:test-script} argument (as a string).
+If there are multiple test scripts, this argument can be set to a staged
+list of locations.  Sometimes some tests need to be skipped, if so,
+@code{#:test-arguments} can be a staged list with extra arguments to
+pass to the test driver (see @code{test-driver.scm --help} for details).
 
 This build system supports cross-compilation by using the
 @option{--target} option of @samp{guild compile}.
 
-Packages built with @code{guile-build-system} must provide a Guile package in
-their @code{native-inputs} field.
+Packages built with @code{guile-build-system} must provide a Guile
+package in their @code{native-inputs} field.  Additionally, if
+@code{#:test-script} is used, a test driver (usually
+@code{guile-test-driver}) must be provided.
 @end defvr
 
 @defvr {Scheme Variable} julia-build-system
diff --git a/guix/build-system/guile.scm b/guix/build-system/guile.scm
index 36a88e181a..75d62fe403 100644
--- a/guix/build-system/guile.scm
+++ b/guix/build-system/guile.scm
@@ -1,5 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2018-2019, 2021-2022 Ludovic Courtès <ludo@HIDDEN>
+;;; Copyright © 2022 Maxime Devos <maximedevos@HIDDEN>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -78,6 +79,9 @@ (define %compile-flags
 
 (define* (guile-build name inputs
                       #:key source
+                      (tests? #true)
+                      (test-script #false)
+                      (test-arguments ''())
                       (guile #f)
                       (phases '%standard-phases)
                       (outputs '("out"))
@@ -98,6 +102,9 @@ (define builder
 
           (guile-build #:name #$name
                        #:source #+source
+                       #:tests? #$tests?
+                       #:test-script #$test-script
+                       #:test-arguments #$test-arguments
                        #:source-directory #$source-directory
                        #:scheme-file-regexp #$scheme-file-regexp
                        #:not-compiled-file-regexp #$not-compiled-file-regexp
@@ -122,6 +129,9 @@ (define* (guile-cross-build name
                             build-inputs target-inputs host-inputs
                             (guile #f)
                             source
+                            (tests? #false)
+                            (test-script #false)
+                            (test-arguments ''())
                             (outputs '("out"))
                             (search-paths '())
                             (native-search-paths '())
@@ -149,6 +159,9 @@ (define %outputs
             #$(outputs->gexp outputs))
 
           (guile-build #:source #+source
+                       #:tests? #$tests?
+                       #:test-script #$test-script
+                       #:test-arguments #$test-arguments
                        #:system #$system
                        #:target #$target
                        #:outputs %outputs
diff --git a/guix/build/guile-build-system.scm b/guix/build/guile-build-system.scm
index 32a431d347..838cb13089 100644
--- a/guix/build/guile-build-system.scm
+++ b/guix/build/guile-build-system.scm
@@ -1,5 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2018, 2019 Ludovic Courtès <ludo@HIDDEN>
+;;; Copyright © 2022 Maxime Devos <maximedevos@HIDDEN>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -19,8 +20,10 @@
 (define-module (guix build guile-build-system)
   #:use-module ((guix build gnu-build-system) #:prefix gnu:)
   #:use-module (guix build utils)
+  #:use-module (rnrs exceptions)
   #:use-module (srfi srfi-1)
   #:use-module (srfi srfi-26)
+  #:use-module (srfi srfi-34)
   #:use-module (ice-9 match)
   #:use-module (ice-9 popen)
   #:use-module (ice-9 rdelim)
@@ -29,7 +32,8 @@ (define-module (guix build guile-build-system)
   #:use-module (guix build utils)
   #:export (target-guile-effective-version
             %standard-phases
-            guile-build))
+            guile-build
+            guile-check))
 
 (define* (target-guile-effective-version #:optional guile)
   "Return the effective version of GUILE or whichever 'guile' is in $PATH.
@@ -201,6 +205,42 @@ (define* (build #:key outputs inputs native-inputs
      source-files))
     #t))
 
+(define* (guile-check #:key tests? test-script (test-arguments '())
+                      (source-directory ".")
+                      native-inputs inputs
+                      #:allow-other-keys)
+  (when tests?
+    ;; Let Guile find the source code of newly compiled modules,
+    ;; otherwise the modules won't be found even if Guile knows
+    ;; where the compiled code is.
+    (setenv "GUILE_LOAD_PATH"
+            (string-append source-directory
+                           (match (getenv "GUILE_LOAD_PATH")
+                             (#f "")
+                             (path (string-append ":" path)))))
+    (for-each
+     (lambda (test-script)
+       (guard (c ((invoke-error? c)
+                  (when (equal? (list (invoke-error-exit-status c)
+                                      (invoke-error-term-signal c)
+                                      (invoke-error-stop-signal c))
+                                '(127 #false #false))
+                    (display "hint: Make sure 'guile-test-driver' is in\
+ 'native-inputs'.\n"
+                             (current-error-port)))
+                  (raise-continuable c)))
+         (apply invoke "test-driver.scm"
+                (string-append "--test-name=" test-script) test-arguments)))
+     (match test-script
+       ;; Tests can be separated over multiple files.
+       ((? list? test-scripts) test-scripts)
+       ((? string? test-script) (list test-script))
+       (#false
+        (format (current-error-port)
+                "warning: location of test suite is unknown; not running\
+ tests~%")
+        '())))))
+
 (define* (install-documentation #:key outputs
                                 (documentation-file-regexp
                                  %documentation-file-regexp)
@@ -222,7 +262,7 @@ (define %standard-phases
     (replace 'build build)
     (add-after 'build 'install-documentation
       install-documentation)
-    (delete 'check)
+    (replace 'check guile-check)
     (delete 'strip)
     (delete 'validate-runpath)
     (delete 'install)))
-- 
2.37.3





Message sent to guix-patches@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: [bug#58365] [PATCH 4/6] guile-ffi-fftw: Modernise style.
Resent-From: Maxime Devos <maximedevos@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: guix-patches@HIDDEN
Resent-Date: Fri, 07 Oct 2022 20:54:03 +0000
Resent-Message-ID: <handler.58365.B58365.166517604115155 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 58365
X-GNU-PR-Package: guix-patches
X-GNU-PR-Keywords: patch
To: 58365 <at> debbugs.gnu.org
Cc: Maxime Devos <maximedevos@HIDDEN>
Received: via spool by 58365-submit <at> debbugs.gnu.org id=B58365.166517604115155
          (code B ref 58365); Fri, 07 Oct 2022 20:54:03 +0000
Received: (at 58365) by debbugs.gnu.org; 7 Oct 2022 20:54:01 +0000
Received: from localhost ([127.0.0.1]:37547 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1oguM5-0003wC-4X
	for submit <at> debbugs.gnu.org; Fri, 07 Oct 2022 16:54:01 -0400
Received: from laurent.telenet-ops.be ([195.130.137.89]:40946)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <maximedevos@HIDDEN>) id 1oguM0-0003v4-LX
 for 58365 <at> debbugs.gnu.org; Fri, 07 Oct 2022 16:53:58 -0400
Received: from localhost.localdomain
 ([IPv6:2a02:1811:8c09:9d00:5dba:d409:33f7:a16])
 by laurent.telenet-ops.be with bizsmtp
 id V8tu2800920ykKC018tvFR; Fri, 07 Oct 2022 22:53:55 +0200
From: Maxime Devos <maximedevos@HIDDEN>
Date: Fri,  7 Oct 2022 22:53:50 +0200
Message-Id: <20221007205352.1282-4-maximedevos@HIDDEN>
X-Mailer: git-send-email 2.37.3
In-Reply-To: <20221007205352.1282-1-maximedevos@HIDDEN>
References: <20221007205352.1282-1-maximedevos@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=telenet.be; s=r22;
 t=1665176035; bh=lG2k5hn/qrsrgU1bAoLtbakH1bjt9nR7foNGcsSmVdg=;
 h=From:To:Cc:Subject:Date:In-Reply-To:References;
 b=CosOHsRJbYGaqP18bWdkP0z67a79c6lDcXlq8xV/IyktxK1ZNKS6txJBxz7zKjafP
 pxeAWy4liVjYPVg55BJajg9JNTsHOR2jTg4CosuVe8CJ3Jc9l/WK2w7EePmZM4YguX
 RxDTf+qWdGfBYnvtbPo/rUP49Rx61agwVueRH2HkuHvFsxqVrFtTQf1spuFjUxeCHj
 uT0lh9nIrRDQq6DARC58mv3rA9QxmhxhlMxsDmHPigOUQI9HJ6d2xr0O5M54hGAhAO
 ejQ+3CGiMCKbFK8IJ74kMnDl9FqhIxHuZuyPJkwy7zbKZuQXP8dkvnMNHOjm0vf3Wh
 3a3UgQXWC6BPQ==
X-Spam-Score: 0.0 (/)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

The 'object->string' change is more a personal thing.
"guix style" adds modify-phases on the same line as #:phases, causing the
80-columns limit to be exceeded, so it has been partially ignored.

* gnu/packages/guile-xyz.scm
(guile-ffi-fftw)[arguments]<#:test-script>: Set it.
[arguments]{#:phases}{check}: Remove custom phase.
[native-inputs]: Add native-input required by uncustomised 'check' phase.
---
 gnu/packages/guile-xyz.scm | 27 ++++++++++++++-------------
 1 file changed, 14 insertions(+), 13 deletions(-)

diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm
index 2ab5683d19..a664e37968 100644
--- a/gnu/packages/guile-xyz.scm
+++ b/gnu/packages/guile-xyz.scm
@@ -3681,22 +3681,23 @@ (define-public guile-ffi-fftw
                   "08j40a5p6a8pgvhffmzb5rfdnrav2mksy3gfjkdqy93jfj1z5afg"))))
       (build-system guile-build-system)
       (arguments
-       `(#:source-directory "mod"
-         #:test-script "../test/test-ffi-fftw.scm"
-         #:phases
-         (modify-phases %standard-phases
-           (add-after 'unpack 'prepare-build
-             (lambda* (#:key inputs #:allow-other-keys)
-               (substitute* "mod/ffi/fftw.scm"
-                 (("\\(getenv \"GUILE_FFI_FFTW_LIBFFTW3_PATH\"\\)")
-                  (format #f "\"~a/lib\"" (assoc-ref inputs "fftw"))))
-               #t)))))
+       (list #:source-directory "mod"
+             #:test-script "../test/test-ffi-fftw.scm"
+             #:phases
+             #~(modify-phases %standard-phases
+                 (add-after 'unpack 'prepare-build
+                   (lambda* (#:key inputs #:allow-other-keys)
+                     (substitute* "mod/ffi/fftw.scm"
+                       (("\\(getenv \"GUILE_FFI_FFTW_LIBFFTW3_PATH\"\\)")
+                        (object->string
+                         (dirname
+                          (search-input-file inputs "lib/libfftw3.so"))))))))))
       (native-inputs (list guile-test-driver))
-      (inputs
-       (list fftw guile-2.2))
+      (inputs (list fftw guile-2.2))
       (home-page "https://github.com/lloda/guile-ffi-fftw/")
       (synopsis "Access FFTW through Guile's FFI")
-      (description "This is a minimal set of Guile FFI bindings for the FFTW
+      (description
+       "This is a minimal set of Guile FFI bindings for the FFTW
 library's ‘guru interface’.  It provides two functions: @code{fftw-dft! rank
 sign in out} and @code{fftw-dft rank sign in}.  These bindings being minimal,
 there is no support for computing & reusing plans, or split r/i transforms, or
-- 
2.37.3





Message sent to guix-patches@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: [bug#58365] [PATCH 1/6] gnu: Add guile-test-driver.
References: <e39412d9-edf3-25c7-1e86-5442ecc0a1fd@HIDDEN>
In-Reply-To: <e39412d9-edf3-25c7-1e86-5442ecc0a1fd@HIDDEN>
Resent-From: Maxime Devos <maximedevos@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: guix-patches@HIDDEN
Resent-Date: Fri, 07 Oct 2022 20:54:04 +0000
Resent-Message-ID: <handler.58365.B58365.166517604315182 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 58365
X-GNU-PR-Package: guix-patches
X-GNU-PR-Keywords: patch
To: 58365 <at> debbugs.gnu.org
Cc: Maxime Devos <maximedevos@HIDDEN>
Received: via spool by 58365-submit <at> debbugs.gnu.org id=B58365.166517604315182
          (code B ref 58365); Fri, 07 Oct 2022 20:54:04 +0000
Received: (at 58365) by debbugs.gnu.org; 7 Oct 2022 20:54:03 +0000
Received: from localhost ([127.0.0.1]:37549 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1oguM5-0003wM-GR
	for submit <at> debbugs.gnu.org; Fri, 07 Oct 2022 16:54:03 -0400
Received: from laurent.telenet-ops.be ([195.130.137.89]:40926)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <maximedevos@HIDDEN>) id 1oguM0-0003v1-L1
 for 58365 <at> debbugs.gnu.org; Fri, 07 Oct 2022 16:53:59 -0400
Received: from localhost.localdomain
 ([IPv6:2a02:1811:8c09:9d00:5dba:d409:33f7:a16])
 by laurent.telenet-ops.be with bizsmtp
 id V8tu2800920ykKC018tuFH; Fri, 07 Oct 2022 22:53:55 +0200
From: Maxime Devos <maximedevos@HIDDEN>
Date: Fri,  7 Oct 2022 22:53:47 +0200
Message-Id: <20221007205352.1282-1-maximedevos@HIDDEN>
X-Mailer: git-send-email 2.37.3
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=telenet.be; s=r22;
 t=1665176035; bh=PkKo1n9bMrITQ3JXlqu6Tv7ujg4NH68MqDLJm3M2yZc=;
 h=From:To:Cc:Subject:Date;
 b=S96SfXOySs0L84SFNQZ3UhZqyTtvBTkQRmDOFvnB13haOAk6ZCRQ/r1S/R9vXVp2l
 eCaI4QY4O+bxy6gRyZVdkJlSdQYKl9S/PaPkcHeD5IpcXwpC3RyPA2lrzdzm8CNQYr
 ING5U11V+IR/s6cYCMs9jTipojeWj/YK6cQh8WCTnmbPVEwjffCGHSHaOaHmp21qtR
 s5zw1/Sma5Mh1My6gqPVVZ2Hph6s72IE1s6zqPQyRZ6zw3fLXW1AUVAvPqRsawQDqK
 B6QDmLMsVqs/N5+5xJUEIXmb4jRuLOIsCWw+HO9asazIgBv2KzR0klO8vS/KtoOTMq
 PmCHnV1Hu9rkA==
X-Spam-Score: 0.0 (/)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

A copy is made of test-driver.scm to avoid potentially surprising rebuilds
when changes are made.

* gnu/packages/guile.scm (guile-test-driver): New variable.
* gnu/packages/aux-files/test-driver.scm: New file.
* Makefile.am (AUX_FILES): Register it.
* build-aux/test-driver.scm: Add a note.
---
 Makefile.am                            |   3 +-
 build-aux/test-driver.scm              |   2 +
 gnu/packages/aux-files/test-driver.scm | 284 +++++++++++++++++++++++++
 gnu/packages/guile.scm                 |  39 +++-
 4 files changed, 326 insertions(+), 2 deletions(-)
 create mode 100755 gnu/packages/aux-files/test-driver.scm

diff --git a/Makefile.am b/Makefile.am
index bfabf0bf2e..e1f1a4573e 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -427,7 +427,8 @@ AUX_FILES =						\
   gnu/packages/aux-files/python/sanity-check.py		\
   gnu/packages/aux-files/python/sitecustomize.py	\
   gnu/packages/aux-files/renpy/renpy.in	\
-  gnu/packages/aux-files/run-in-namespace.c
+  gnu/packages/aux-files/run-in-namespace.c \
+  gnu/packages/aux-files/test-driver.scm
 
 # Templates, examples.
 EXAMPLES =					\
diff --git a/build-aux/test-driver.scm b/build-aux/test-driver.scm
index 1cdd4ff8f7..7ff8d45031 100755
--- a/build-aux/test-driver.scm
+++ b/build-aux/test-driver.scm
@@ -2,6 +2,8 @@
 exec guile --no-auto-compile -e main -s "$0" "$@"
 !#
 ;;;; test-driver.scm - Guile test driver for Automake testsuite harness
+;;;; When update this code, consider updating
+;;;; gnu/packages/aux-files/test-driver.scm as well.
 
 (define script-version "2021-02-02.05") ;UTC
 
diff --git a/gnu/packages/aux-files/test-driver.scm b/gnu/packages/aux-files/test-driver.scm
new file mode 100755
index 0000000000..1cdd4ff8f7
--- /dev/null
+++ b/gnu/packages/aux-files/test-driver.scm
@@ -0,0 +1,284 @@
+#!/bin/sh
+exec guile --no-auto-compile -e main -s "$0" "$@"
+!#
+;;;; test-driver.scm - Guile test driver for Automake testsuite harness
+
+(define script-version "2021-02-02.05") ;UTC
+
+;;; Copyright © 2015, 2016 Mathieu Lirzin <mthl@HIDDEN>
+;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@HIDDEN>
+;;;
+;;; This program is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; This program is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+;;;; Commentary:
+;;;
+;;; This script provides a Guile test driver using the SRFI-64 Scheme API for
+;;; test suites.  SRFI-64 is distributed with Guile since version 2.0.9.
+;;;
+;;;; Code:
+
+(use-modules (ice-9 format)
+             (ice-9 getopt-long)
+             (ice-9 pretty-print)
+             (ice-9 regex)
+             (srfi srfi-1)
+             (srfi srfi-19)
+             (srfi srfi-26)
+             (srfi srfi-64))
+
+(define (show-help)
+  (display "Usage:
+   test-driver --test-name=NAME --log-file=PATH --trs-file=PATH
+               [--expect-failure={yes|no}] [--color-tests={yes|no}]
+               [--select=REGEXP] [--exclude=REGEXP] [--errors-only={yes|no}]
+               [--enable-hard-errors={yes|no}] [--brief={yes|no}}]
+               [--show-duration={yes|no}] [--]
+               TEST-SCRIPT [TEST-SCRIPT-ARGUMENTS]
+The '--test-name' option is mandatory.  The '--select' and '--exclude' options
+allow selecting or excluding individual test cases via a regexp, respectively.
+The '--errors-only' option can be set to \"yes\" to limit the logged test case
+metadata to only those test cases that failed.  When set to \"yes\", the
+'--brief' option disables printing the individual test case result to the
+console.  When '--show-duration' is set to \"yes\", the time elapsed per test
+case is shown.\n"))
+
+(define %options
+  '((test-name                 (value #t))
+    (log-file                  (value #t))
+    (trs-file                  (value #t))
+    (select                    (value #t))
+    (exclude                   (value #t))
+    (errors-only               (value #t))
+    (color-tests               (value #t))
+    (expect-failure            (value #t)) ;XXX: not implemented yet
+    (enable-hard-errors        (value #t)) ;not implemented in SRFI-64
+    (brief                     (value #t))
+    (show-duration             (value #t))
+    (help    (single-char #\h) (value #f))
+    (version (single-char #\V) (value #f))))
+
+(define (option->boolean options key)
+  "Return #t if the value associated with KEY in OPTIONS is \"yes\"."
+  (and=> (option-ref options key #f) (cut string=? <> "yes")))
+
+(define* (test-display field value  #:optional (port (current-output-port))
+                       #:key pretty?)
+  "Display \"FIELD: VALUE\\n\" on PORT."
+  (if pretty?
+      (begin
+        (format port "~A:~%" field)
+        (pretty-print value port #:per-line-prefix "+ "))
+      (format port "~A: ~S~%" field value)))
+
+(define* (result->string symbol #:key colorize?)
+  "Return SYMBOL as an upper case string.  Use colors when COLORIZE is #t."
+  (let ((result (string-upcase (symbol->string symbol))))
+    (if colorize?
+        (string-append (case symbol
+                         ((pass)       "")  ;green
+                         ((xfail)      "")  ;light green
+                         ((skip)       "")  ;blue
+                         ((fail xpass) "")  ;red
+                         ((error)      "")) ;magenta
+                       result
+                       "")          ;no color
+        result)))
+
+
+;;;
+;;; SRFI 64 custom test runner.
+;;;
+
+(define* (test-runner-gnu test-name #:key color? brief? errors-only?
+                          show-duration?
+                          (out-port (current-output-port))
+                          (trs-port (%make-void-port "w"))
+                          select exclude)
+  "Return an custom SRFI-64 test runner.  TEST-NAME is a string specifying the
+file name of the current the test.  COLOR? specifies whether to use colors.
+When BRIEF? is true, the individual test cases results are masked and only the
+summary is shown.  ERRORS-ONLY? reduces the amount of test case metadata
+logged to only that of the failed test cases.  OUT-PORT and TRS-PORT must be
+output ports.  OUT-PORT defaults to the current output port, while TRS-PORT
+defaults to a void port, which means no TRS output is logged.  SELECT and
+EXCLUDE may take a regular expression to select or exclude individual test
+cases based on their names."
+
+  (define test-cases-start-time (make-hash-table))
+
+  (define (test-on-test-begin-gnu runner)
+    ;; Procedure called at the start of an individual test case, before the
+    ;; test expression (and expected value) are evaluated.
+    (let ((test-case-name (test-runner-test-name runner))
+          (start-time     (current-time time-monotonic)))
+      (hash-set! test-cases-start-time test-case-name start-time)))
+
+  (define (test-skipped? runner)
+    (eq? 'skip (test-result-kind runner)))
+
+  (define (test-failed? runner)
+    (not (or (test-passed? runner)
+             (test-skipped? runner))))
+
+  (define (test-on-test-end-gnu runner)
+    ;; Procedure called at the end of an individual test case, when the result
+    ;; of the test is available.
+    (let* ((results (test-result-alist runner))
+           (result? (cut assq <> results))
+           (result  (cut assq-ref results <>))
+           (test-case-name (test-runner-test-name runner))
+           (start (hash-ref test-cases-start-time test-case-name))
+           (end (current-time time-monotonic))
+           (time-elapsed (time-difference end start))
+           (time-elapsed-seconds (+ (time-second time-elapsed)
+                                    (* 1e-9 (time-nanosecond time-elapsed)))))
+      (unless (or brief? (and errors-only? (test-skipped? runner)))
+        ;; Display the result of each test case on the console.
+        (format out-port "~a: ~a - ~a ~@[[~,3fs]~]~%"
+                (result->string (test-result-kind runner) #:colorize? color?)
+                test-name test-case-name
+                (and show-duration? time-elapsed-seconds)))
+
+      (unless (and errors-only? (not (test-failed? runner)))
+        (format #t "test-name: ~A~%" (result 'test-name))
+        (format #t "location: ~A~%"
+                (string-append (result 'source-file) ":"
+                               (number->string (result 'source-line))))
+        (test-display "source" (result 'source-form) #:pretty? #t)
+        (when (result? 'expected-value)
+          (test-display "expected-value" (result 'expected-value)))
+        (when (result? 'expected-error)
+          (test-display "expected-error" (result 'expected-error) #:pretty? #t))
+        (when (result? 'actual-value)
+          (test-display "actual-value" (result 'actual-value)))
+        (when (result? 'actual-error)
+          (test-display "actual-error" (result 'actual-error) #:pretty? #t))
+        (format #t "result: ~a~%" (result->string (result 'result-kind)))
+        (newline))
+
+      (format trs-port ":test-result: ~A ~A [~,3fs]~%"
+              (result->string (test-result-kind runner))
+              (test-runner-test-name runner) time-elapsed-seconds)))
+
+  (define (test-on-group-end-gnu runner)
+    ;; Procedure called by a 'test-end', including at the end of a test-group.
+    (let ((fail (or (positive? (test-runner-fail-count runner))
+                    (positive? (test-runner-xpass-count runner))))
+          (skip (or (positive? (test-runner-skip-count runner))
+                    (positive? (test-runner-xfail-count runner)))))
+      ;; XXX: The global results need some refinements for XPASS.
+      (format trs-port ":global-test-result: ~A~%"
+              (if fail "FAIL" (if skip "SKIP" "PASS")))
+      (format trs-port ":recheck: ~A~%"
+              (if fail "yes" "no"))
+      (format trs-port ":copy-in-global-log: ~A~%"
+              (if (or fail skip) "yes" "no"))
+      (when brief?
+        ;; Display the global test group result on the console.
+        (format out-port "~A: ~A~%"
+                (result->string (if fail 'fail (if skip 'skip 'pass))
+                                #:colorize? color?)
+                test-name))
+      #f))
+
+  (let ((runner (test-runner-null)))
+    (test-runner-on-test-begin! runner test-on-test-begin-gnu)
+    (test-runner-on-test-end! runner test-on-test-end-gnu)
+    (test-runner-on-group-end! runner test-on-group-end-gnu)
+    (test-runner-on-bad-end-name! runner test-on-bad-end-name-simple)
+    runner))
+
+
+;;;
+;;; SRFI 64 test specifiers.
+;;;
+(define (test-match-name* regexp)
+  "Return a test specifier that matches a test name against REGEXP."
+  (lambda (runner)
+    (string-match regexp (test-runner-test-name runner))))
+
+(define (test-match-name*/negated regexp)
+  "Return a negated test specifier version of test-match-name*."
+  (lambda (runner)
+    (not (string-match regexp (test-runner-test-name runner)))))
+
+;;; XXX: test-match-all is a syntax, which isn't convenient to use with a list
+;;; of test specifiers computed at run time.  Copy this SRFI 64 internal
+;;; definition here, which is the procedural equivalent of 'test-match-all'.
+(define (%test-match-all . pred-list)
+  (lambda (runner)
+    (let ((result #t))
+      (let loop ((l pred-list))
+	(if (null? l)
+	    result
+	    (begin
+	      (if (not ((car l) runner))
+		  (set! result #f))
+	      (loop (cdr l))))))))
+
+
+;;;
+;;; Entry point.
+;;;
+
+(define (main . args)
+  (let* ((opts   (getopt-long (command-line) %options))
+         (option (cut option-ref opts <> <>)))
+    (cond
+     ((option 'help #f)    (show-help))
+     ((option 'version #f) (format #t "test-driver.scm ~A~%" script-version))
+     (else
+      (let* ((log (and=> (option 'log-file #f) (cut open-file <> "w0")))
+             (trs (and=> (option 'trs-file #f) (cut open-file <> "wl")))
+             (out (duplicate-port (current-output-port) "wl"))
+             (test-name (option 'test-name #f))
+             (select (option 'select #f))
+             (exclude (option 'exclude #f))
+             (test-specifiers (filter-map
+                               identity
+                               (list (and=> select test-match-name*)
+                                     (and=> exclude test-match-name*/negated))))
+             (test-specifier (apply %test-match-all test-specifiers))
+             (color-tests (if (assoc 'color-tests opts)
+                              (option->boolean opts 'color-tests)
+                              #t)))
+        (when log
+          (redirect-port log (current-output-port))
+          (redirect-port log (current-warning-port))
+          (redirect-port log (current-error-port)))
+        (test-with-runner
+            (test-runner-gnu test-name
+                             #:color? color-tests
+                             #:brief? (option->boolean opts 'brief)
+                             #:errors-only? (option->boolean opts 'errors-only)
+                             #:show-duration? (option->boolean
+                                               opts 'show-duration)
+                             #:out-port out #:trs-port trs)
+          (test-apply test-specifier
+                      (lambda _
+                        (load-from-path test-name))))
+        (and=> log close-port)
+        (and=> trs close-port)
+        (close-port out))))
+    (exit 0)))
+
+;;; Local Variables:
+;;; eval: (add-hook 'write-file-functions 'time-stamp)
+;;; time-stamp-start: "(define script-version \""
+;;; time-stamp-format: "%:y-%02m-%02d.%02H"
+;;; time-stamp-time-zone: "UTC"
+;;; time-stamp-end: "\") ;UTC"
+;;; End:
+
+;;;; test-driver.scm ends here.
diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm
index fcdf75051c..b847ee6be4 100644
--- a/gnu/packages/guile.scm
+++ b/gnu/packages/guile.scm
@@ -16,7 +16,7 @@
 ;;; Copyright © 2018 Eric Bavier <bavier@HIDDEN>
 ;;; Copyright © 2019 Taylan Kammer <taylan.kammer@HIDDEN>
 ;;; Copyright © 2020, 2021, 2022 Efraim Flashner <efraim@HIDDEN>
-;;; Copyright © 2021 Maxime Devos <maximedevos@HIDDEN>
+;;; Copyright © 2021, 2022 Maxime Devos <maximedevos@HIDDEN>
 ;;; Copyright © 2021 Timothy Sample <samplet@HIDDEN>
 ;;;
 ;;; This file is part of GNU Guix.
@@ -60,9 +60,11 @@ (define-module (gnu packages guile)
   #:use-module (gnu packages version-control)
   #:use-module (guix packages)
   #:use-module (guix download)
+  #:use-module (guix gexp)
   #:use-module (guix git-download)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system guile)
+  #:use-module (guix build-system trivial)
   #:use-module (guix deprecation)
   #:use-module (guix utils))
 
@@ -961,4 +963,39 @@ (define-public guile-lzma
 libraries, like Guile-zlib.")
     (license license:gpl3+)))
 
+(define-public guile-test-driver
+  (package
+    (name "guile-test-driver")
+    ;; (define script-version ...) in the source code
+    (version "2021-01-02.05")
+    ;; 'search-auxiliary-file' could be used here, but that causes warnings.
+    (source (local-file "../../gnu/packages/aux-files/test-driver.scm"))
+    (build-system gnu-build-system)
+    (inputs (list guile-3.0))
+    (arguments
+     (list #:phases
+           #~(modify-phases %standard-phases
+               (delete 'configure)
+               (delete 'check)
+               (delete 'install) ; no point in separating build and install
+               (replace 'build
+                 (lambda _
+                   (define destination
+                     (string-append #$output "/bin/test-driver.scm"))
+                   (mkdir-p (dirname destination))
+                   (copy-file #$source destination)
+                   (substitute* destination
+                     (("/bin/sh")
+                      ;; Reference to Guile will be patched by patch-shebangs.
+                      "/bin/guile \\")
+                     (("^exec guile(.*)$") "--no-auto-compile -e main -s\n"))
+                   (chmod destination #o500))))))
+    (home-page "https://www.gnu.org/software/guix")
+    (synopsis "Guile test driver for SRFI-64 test suites")
+    (description "This package, also known as @file{test-driver.scm}, provides
+a Guile test driver using the SRFI-64 Scheme API for test suites.  Unlike the
+default test runner, its output is consistent with other test drivers used
+by Automake.")
+    (license license:gpl3+)))
+
 ;;; guile.scm ends here

base-commit: 31a56967e2869c916b7a5e8ee570e8e10f0210a5
prerequisite-patch-id: 2712efb97bf33985fd0658e4dd8e936dc08be5fe
prerequisite-patch-id: 9d2409b480a8bff0fef029b4b095922d4957e06f
prerequisite-patch-id: 51a32abca3efec1ba67ead59b8694c5ea3129ad3
prerequisite-patch-id: 9092927761a340c07a99f5f3ed314a6add04cdee
prerequisite-patch-id: d0af09fbd5ee0ef60bdee53b87d729e46c1db2ca
prerequisite-patch-id: 4fee177b2d8c9478c6a7b8ce1ca9072942f39863
prerequisite-patch-id: c2b101598fa5b6f93470ae41d51a983dcb931b04
prerequisite-patch-id: 8fe65a852a4463203ea6b92abb3968bd819475b1
prerequisite-patch-id: 7585c78056095ec991615cbbe877e06f713aada9
prerequisite-patch-id: a9fb1bf1718ad8de6fc26d97a7dc5baf41dc38bd
prerequisite-patch-id: 1e5c9ef57d1df286042f4ae3eb420394c8b3b045
-- 
2.37.3





Message sent to guix-patches@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: [bug#58365] [PATCH 0/6] Support #:tests? in guile-build-system
Resent-From: Ludovic =?UTF-8?Q?Court=C3=A8s?= <ludo@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: guix-patches@HIDDEN
Resent-Date: Tue, 18 Oct 2022 12:38:02 +0000
Resent-Message-ID: <handler.58365.B58365.16660966462470 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 58365
X-GNU-PR-Package: guix-patches
X-GNU-PR-Keywords: patch
To: Maxime Devos <maximedevos@HIDDEN>
Cc: 58365 <at> debbugs.gnu.org
Received: via spool by 58365-submit <at> debbugs.gnu.org id=B58365.16660966462470
          (code B ref 58365); Tue, 18 Oct 2022 12:38:02 +0000
Received: (at 58365) by debbugs.gnu.org; 18 Oct 2022 12:37:26 +0000
Received: from localhost ([127.0.0.1]:51453 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1oklqY-0000dl-EA
	for submit <at> debbugs.gnu.org; Tue, 18 Oct 2022 08:37:26 -0400
Received: from eggs.gnu.org ([209.51.188.92]:58896)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <ludo@HIDDEN>) id 1oklqQ-0000dN-4Q
 for 58365 <at> debbugs.gnu.org; Tue, 18 Oct 2022 08:37:25 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e]:33772)
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <ludo@HIDDEN>)
 id 1oklqI-0002iN-0z; Tue, 18 Oct 2022 08:37:10 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=MIME-Version:In-Reply-To:Date:References:Subject:To:
 From; bh=627oRkED+9UlBQx8TQb4gt0wfH5s+YGiLdQNDLX1XsQ=; b=ok3L0doC0dHX5IlkkACE
 sOdP359AP1gRni73hRj1O+w1CHG+2KzzNBX2bRbFIP3HUPHk80IB2NkS5+ut+l3UNuG51L/YByba+
 M4Voon9sL0FO24Zevdd9K7xMt5ejNTU+5UjoPhRf2TYD/rwW+z470YfFTJi7IOdMfUztQ50K1LC8q
 LRLeA0Qgb3OvG3S6gw/I0xDcEy7qht0QEjZ+1KXrfYe5zmfqRlnDcDNofINI9zLIcAbDPIob4QGA3
 XYreTBVJ2wZl1zeSxnW5oQ9nJIcIWs7TEg/Wq9RZMxuFy+vCBz1WxhB34nQHYH5VGxGNn9F9m7Cvz
 2OPa7icNQXwbIQ==;
Received: from [193.50.110.209] (port=50484 helo=ribbon)
 by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <ludo@HIDDEN>)
 id 1oklpy-0001YD-Bn; Tue, 18 Oct 2022 08:37:08 -0400
From: Ludovic =?UTF-8?Q?Court=C3=A8s?= <ludo@HIDDEN>
References: <e39412d9-edf3-25c7-1e86-5442ecc0a1fd@HIDDEN>
 <20221007205352.1282-1-maximedevos@HIDDEN>
Date: Tue, 18 Oct 2022 14:36:48 +0200
In-Reply-To: <20221007205352.1282-1-maximedevos@HIDDEN> (Maxime Devos's
 message of "Fri, 7 Oct 2022 22:53:47 +0200")
Message-ID: <87sfjlnw9r.fsf_-_@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.1 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: -2.3 (--)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

Hello,

Maxime Devos <maximedevos@HIDDEN> skribis:

> A copy is made of test-driver.scm to avoid potentially surprising rebuilds
> when changes are made.
>
> * gnu/packages/guile.scm (guile-test-driver): New variable.
> * gnu/packages/aux-files/test-driver.scm: New file.
> * Makefile.am (AUX_FILES): Register it.
> * build-aux/test-driver.scm: Add a note.

I very much like the idea of supporting #:tests? in
=E2=80=98guile-build-system=E2=80=99, but I=E2=80=99m skeptical about this =
approach.

The reason I=E2=80=99m skeptical is because =E2=80=98test-driver.scm=E2=80=
=99 is written as an
Automake test driver (it follows the =E2=80=9Cprotocol=E2=80=9D defined by =
Automake) for
tests that use SRFI-64=E2=80=94that=E2=80=99s a specific kind of tool, and =
one approach
to writing test suites in Guile.

I guess all I=E2=80=99m saying is that I doubt this is widely applicable, w=
hich
the diff seems to confirm:

>  4 files changed, 326 insertions(+), 2 deletions(-)

Perhaps at this stage there really isn=E2=80=99t much we can factorize, aft=
er
all.  It would be nice to fix this, but that=E2=80=99s probably work to be =
done
upstream=E2=80=94for example, by adding a =E2=80=9Cguild test=E2=80=9D comm=
and.  We can even
beta-test such a command as an external project before including it in
Guile proper.

WDYT?

Thanks,
Ludo=E2=80=99.





Last modified: Tue, 18 Oct 2022 12:45:01 UTC

GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997 nCipher Corporation Ltd, 1994-97 Ian Jackson.