From patchwork Sat Aug 10 07:11:44 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Christopher Baines X-Patchwork-Id: 66908 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 7BF4927BBEA; Sat, 10 Aug 2024 08:12:44 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-7.6 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,MAILING_LIST_MULTI,RCVD_IN_VALIDITY_CERTIFIED, RCVD_IN_VALIDITY_RPBL,RCVD_IN_VALIDITY_SAFE,SPF_HELO_PASS, URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id CE9F027BBE2 for ; Sat, 10 Aug 2024 08:12:43 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1scgHE-0003zB-1L; Sat, 10 Aug 2024 03:12:36 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1scgHC-0003yB-1Q for guix-patches@gnu.org; Sat, 10 Aug 2024 03:12:34 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1scgHB-0005zs-Od for guix-patches@gnu.org; Sat, 10 Aug 2024 03:12:33 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=debbugs.gnu.org; s=debbugs-gnu-org; h=MIME-Version:Date:From:To:In-Reply-To:References:Subject; bh=9SfZiqaqQ2QnyyJEfYAtcIFgsyP0eqou2VYqzqbtqGs=; b=vStG2OGlPCQ+oLkR7SzUQCPA8zzMDwNS1+FxiNxvDKNND0Pe59aYSEve3qAqNAE4VS2QaC7buWM8ksnOKtnqTDcIYWxg4Da3YcLTJCTJJYS0+N4R/9OmohU7Y1Y2d6YrqNZbDs0+19hzWiw7rmElQdSHiAZJwU78MDrZNt2i8CjwLntJ3dGbeIdw6vsZj+xldoDnAyxUc5zNTzKP03Pub+Na/Hd2at2r3IDanCGtejns1Lp2LBvSPssKeO5Ky8ZUwIp9Rr+yMZF/TFt+hef7EsrgxQ7gkNR4Z+HRKlSNsuKqbjJO0rtY3hF4gj+Xbft3x8vb10xF5Ywci532jkwCPg==; Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1scgHe-0004w0-Ec; Sat, 10 Aug 2024 03:13:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#72553] [PATCH 1/4] gnu: rust: Add profiling support. References: <871q2w26ru.fsf@cbaines.net> In-Reply-To: <871q2w26ru.fsf@cbaines.net> Resent-From: Christopher Baines Original-Sender: "Debbugs-submit" Resent-CC: efraim@flashner.co.il, guix-patches@gnu.org Resent-Date: Sat, 10 Aug 2024 07:13:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 72553 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 72553@debbugs.gnu.org Cc: Efraim Flashner X-Debbugs-Original-Xcc: Efraim Flashner Received: via spool by 72553-submit@debbugs.gnu.org id=B72553.172327397518928 (code B ref 72553); Sat, 10 Aug 2024 07:13:02 +0000 Received: (at 72553) by debbugs.gnu.org; 10 Aug 2024 07:12:55 +0000 Received: from localhost ([127.0.0.1]:38955 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1scgHW-0004v7-Mu for submit@debbugs.gnu.org; Sat, 10 Aug 2024 03:12:55 -0400 Received: from mira.cbaines.net ([212.71.252.8]:43984) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1scgHS-0004uf-Rm for 72553@debbugs.gnu.org; Sat, 10 Aug 2024 03:12:52 -0400 Received: from localhost (136.249.6.51.dyn.plus.net [51.6.249.136]) by mira.cbaines.net (Postfix) with ESMTPSA id 011F227BBE2 for <72553@debbugs.gnu.org>; Sat, 10 Aug 2024 08:11:50 +0100 (BST) Received: from localhost (localhost [local]) by localhost (OpenSMTPD) with ESMTPA id ba281b2b for <72553@debbugs.gnu.org>; Sat, 10 Aug 2024 07:11:50 +0000 (UTC) From: Christopher Baines Date: Sat, 10 Aug 2024 08:11:44 +0100 Message-ID: <0917fd5934be09855e7baec9901fa090d98a524b.1723273907.git.mail@cbaines.net> X-Mailer: git-send-email 2.45.2 MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches From: Milkey Mouse * gnu/packages/rust.scm (rust-1.52) [phases] : New phases. Change-Id: Iecb4aef518e52f71ff7f539778bf0341288a3458 --- gnu/packages/rust.scm | 25 +++++++++++++++++++------ 1 file changed, 19 insertions(+), 6 deletions(-) base-commit: ce055b806eaff8fec329c30ae0deb82c50a86240 diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm index 12529d2420..4a3ad99e88 100644 --- a/gnu/packages/rust.scm +++ b/gnu/packages/rust.scm @@ -1216,11 +1216,24 @@ (define-public rust (lambda* (#:key outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out"))) (substitute* "src/bootstrap/src/core/builder.rs" - ((" = rpath.*" all) - (string-append all - " " - "rustflags.arg(\"-Clink-args=-Wl,-rpath=" - out "/lib\");\n")))))) + ((" = rpath.*" all) + (string-append all + " " + "rustflags.arg(\"-Clink-args=-Wl,-rpath=" + out "/lib\");\n")))))) + (add-after 'unpack 'unpack-profiler-rt + ;; Copy compiler-rt sources to where libprofiler_builtins looks + ;; for its vendored copy. Keep the clang-runtime version in + ;; sync with the LLVM version used to build Rust. + (lambda* (#:key inputs #:allow-other-keys) + (mkdir-p "src/llvm-project/compiler-rt") + (invoke "tar" "-xf" #$(package-source clang-runtime-15) + "-C" "src/llvm-project/compiler-rt" "--strip-components=1"))) + (add-after 'enable-codegen-tests 'enable-profiling + (lambda _ + (substitute* "config.toml" + (("^profiler =.*$") "") + (("\\[build\\]") "\n[build]\nprofiler = true\n")))) (add-after 'configure 'add-gdb-to-config (lambda* (#:key inputs #:allow-other-keys) (let ((gdb (assoc-ref inputs "gdb"))) @@ -1236,7 +1249,7 @@ (define-public rust (number->string (parallel-job-count)) "1")))) (invoke "./x.py" job-spec "build" - "library/std" ;rustc + "library/std" ;rustc "src/tools/cargo" "src/tools/clippy" "src/tools/rust-analyzer" From patchwork Sat Aug 10 07:11:45 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Christopher Baines X-Patchwork-Id: 66909 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id DE64027BBEA; Sat, 10 Aug 2024 08:12:47 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-7.6 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,MAILING_LIST_MULTI,RCVD_IN_VALIDITY_CERTIFIED, RCVD_IN_VALIDITY_RPBL,RCVD_IN_VALIDITY_SAFE,SPF_HELO_PASS, URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 5633027BBE2 for ; Sat, 10 Aug 2024 08:12:47 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1scgHC-0003yO-La; Sat, 10 Aug 2024 03:12:34 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1scgHB-0003y3-BI for guix-patches@gnu.org; Sat, 10 Aug 2024 03:12:33 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1scgHB-0005zk-22 for guix-patches@gnu.org; Sat, 10 Aug 2024 03:12:33 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=debbugs.gnu.org; s=debbugs-gnu-org; h=MIME-Version:References:In-Reply-To:Date:From:To:Subject; bh=SzAieCG25zxGacRj17EZ+PQRtpV04qe6yrAgNYV3DPw=; b=mwbNbhIh9iNagbSD4MMczUiRe9U9eO4IEgCKUxy3DhjWJOJH7BfMT14gA/34VhnqC5ms4Z1FcFIVw0LkWVZOCPgjp/LqYtW2pSGG+wxWowDUhWTb+uUpl5/MVph79kmN5T3Uq3jYQiunK7bZd3qpJsa+/8MArRmYFDesSLdTPNW+vJRBJOMZCpoeBZL8x4CyKeyU9jx4MFKrx16qCz1p57Dm4mypedgfm6Iwy1nEzQW/K9EN1OVUiuYdAlf3V8hyMB4Hx4PTOW0/V+8NjWJJqxLmwA6byiBKZVdLE3KM6SJt7ElNyWzfEdlKXqV0V99oFNuaGAMYPQI2Xtwr4as80g==; Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1scgHd-0004vs-Va; Sat, 10 Aug 2024 03:13:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#72553] [PATCH 2/4] gnu: rust: Fix building. Resent-From: Christopher Baines Original-Sender: "Debbugs-submit" Resent-CC: efraim@flashner.co.il, guix-patches@gnu.org Resent-Date: Sat, 10 Aug 2024 07:13:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 72553 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 72553@debbugs.gnu.org Cc: Efraim Flashner X-Debbugs-Original-Xcc: Efraim Flashner Received: via spool by 72553-submit@debbugs.gnu.org id=B72553.172327397418920 (code B ref 72553); Sat, 10 Aug 2024 07:13:01 +0000 Received: (at 72553) by debbugs.gnu.org; 10 Aug 2024 07:12:54 +0000 Received: from localhost ([127.0.0.1]:38953 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1scgHV-0004v4-NP for submit@debbugs.gnu.org; Sat, 10 Aug 2024 03:12:54 -0400 Received: from mira.cbaines.net ([212.71.252.8]:43986) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1scgHS-0004ug-UU for 72553@debbugs.gnu.org; Sat, 10 Aug 2024 03:12:51 -0400 Received: from localhost (136.249.6.51.dyn.plus.net [51.6.249.136]) by mira.cbaines.net (Postfix) with ESMTPSA id 18E4627BBE9 for <72553@debbugs.gnu.org>; Sat, 10 Aug 2024 08:11:51 +0100 (BST) Received: from localhost (localhost [local]) by localhost (OpenSMTPD) with ESMTPA id 65c7c1ab for <72553@debbugs.gnu.org>; Sat, 10 Aug 2024 07:11:50 +0000 (UTC) From: Christopher Baines Date: Sat, 10 Aug 2024 08:11:45 +0100 Message-ID: X-Mailer: git-send-email 2.45.2 In-Reply-To: <0917fd5934be09855e7baec9901fa090d98a524b.1723273907.git.mail@cbaines.net> References: <0917fd5934be09855e7baec9901fa090d98a524b.1723273907.git.mail@cbaines.net> MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches From: Efraim Flashner * gnu/packages/rust.scm (rust)[arguments]: Adjust 'unpack-compiler-rt phase to correctly copy the sources into the target directory. Adjust 'enable-profiling phase to come after an existing phase. [native-inputs]: Add clang-runtime-source. Change-Id: I2e05fa86c4eaf8c2f5f3562d9f7939cd881cde3f --- gnu/packages/rust.scm | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm index 4a3ad99e88..fe503b0d5f 100644 --- a/gnu/packages/rust.scm +++ b/gnu/packages/rust.scm @@ -1223,13 +1223,14 @@ (define-public rust out "/lib\");\n")))))) (add-after 'unpack 'unpack-profiler-rt ;; Copy compiler-rt sources to where libprofiler_builtins looks - ;; for its vendored copy. Keep the clang-runtime version in - ;; sync with the LLVM version used to build Rust. + ;; for its vendored copy. (lambda* (#:key inputs #:allow-other-keys) (mkdir-p "src/llvm-project/compiler-rt") - (invoke "tar" "-xf" #$(package-source clang-runtime-15) - "-C" "src/llvm-project/compiler-rt" "--strip-components=1"))) - (add-after 'enable-codegen-tests 'enable-profiling + (copy-recursively + (string-append (assoc-ref inputs "clang-source") + "/compiler-rt") + "src/llvm-project/compiler-rt"))) + (add-after 'configure 'enable-profiling (lambda _ (substitute* "config.toml" (("^profiler =.*$") "") @@ -1315,10 +1316,13 @@ (define-public rust (inputs (modify-inputs (package-inputs base-rust) (prepend curl libffi `(,nghttp2 "lib") zlib))) - ;; Add test inputs. - (native-inputs (cons* `("gdb" ,gdb/pinned) - `("procps" ,procps) - (package-native-inputs base-rust)))))) + (native-inputs (cons* + ;; Keep in sync with the llvm used to build rust. + `("clang-source" ,(package-source clang-runtime-15)) + ;; Add test inputs. + `("gdb" ,gdb/pinned) + `("procps" ,procps) + (package-native-inputs base-rust)))))) (define*-public (make-rust-sysroot target) (make-rust-sysroot/implementation target rust)) From patchwork Sat Aug 10 07:11:46 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Christopher Baines X-Patchwork-Id: 66910 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 9250927BBEA; Sat, 10 Aug 2024 08:13:06 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-7.6 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,MAILING_LIST_MULTI,RCVD_IN_VALIDITY_CERTIFIED, RCVD_IN_VALIDITY_RPBL,RCVD_IN_VALIDITY_SAFE,SPF_HELO_PASS, URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id A6B5D27BBE2 for ; Sat, 10 Aug 2024 08:13:02 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1scgHE-0003zL-4o; Sat, 10 Aug 2024 03:12:36 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1scgHC-0003ym-T0 for guix-patches@gnu.org; Sat, 10 Aug 2024 03:12:34 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1scgHC-000606-J0 for guix-patches@gnu.org; Sat, 10 Aug 2024 03:12:34 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=debbugs.gnu.org; s=debbugs-gnu-org; h=MIME-Version:References:In-Reply-To:Date:From:To:Subject; bh=SoG7kqeFz62vQx88ODAhR8u7vG9KTrKP3xTgNa5TkeA=; b=kAMWnMdu4qTYV9Ytf2h34rENNJUQSfAOoasBoY9zyVR+NW6AU2NKzFBO2nFndivOkuHMI6J7WSazMysTbCQpeV+nBGesVrB+5KH0qz+Hnozf+cjRI3ZI7Erlbc+pvH7XptKq6wYVtI4H2A5aJwXS3GhSZ08NrPn3tFF7fZtt7BGegVl+178zJdFH0Swk+h7nSJLzmqoKknRNnmtWpqN+YpakhEG6iddiKzv/2HZP0jgy8P8dG4oPWxAh+BFpO6MPaq+Bm/Q4YYk4o8U+RNWJ4LbINdOUcenQf2crCihS8iJD3rauk3K6E6ktCwVA4j8jo7Pu7+8eVfkipHlCCn36tA==; Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1scgHf-0004wH-H9; Sat, 10 Aug 2024 03:13:03 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#72553] [PATCH 3/4] gnu: rust: Use gexps; fix enable-profiling phase. Resent-From: Christopher Baines Original-Sender: "Debbugs-submit" Resent-CC: efraim@flashner.co.il, guix-patches@gnu.org Resent-Date: Sat, 10 Aug 2024 07:13:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 72553 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 72553@debbugs.gnu.org Cc: Efraim Flashner X-Debbugs-Original-Xcc: Efraim Flashner Received: via spool by 72553-submit@debbugs.gnu.org id=B72553.172327398018953 (code B ref 72553); Sat, 10 Aug 2024 07:13:03 +0000 Received: (at 72553) by debbugs.gnu.org; 10 Aug 2024 07:13:00 +0000 Received: from localhost ([127.0.0.1]:38959 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1scgHZ-0004vY-Ps for submit@debbugs.gnu.org; Sat, 10 Aug 2024 03:13:00 -0400 Received: from mira.cbaines.net ([212.71.252.8]:43988) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1scgHT-0004ui-MM for 72553@debbugs.gnu.org; Sat, 10 Aug 2024 03:12:56 -0400 Received: from localhost (136.249.6.51.dyn.plus.net [51.6.249.136]) by mira.cbaines.net (Postfix) with ESMTPSA id 339E327BBEA for <72553@debbugs.gnu.org>; Sat, 10 Aug 2024 08:11:52 +0100 (BST) Received: from localhost (localhost [local]) by localhost (OpenSMTPD) with ESMTPA id a94d3b40 for <72553@debbugs.gnu.org>; Sat, 10 Aug 2024 07:11:51 +0000 (UTC) From: Christopher Baines Date: Sat, 10 Aug 2024 08:11:46 +0100 Message-ID: <4c8352f7faa046bcdd1b00c7d9e3c0d2732f1d2d.1723273907.git.mail@cbaines.net> X-Mailer: git-send-email 2.45.2 In-Reply-To: <0917fd5934be09855e7baec9901fa090d98a524b.1723273907.git.mail@cbaines.net> References: <0917fd5934be09855e7baec9901fa090d98a524b.1723273907.git.mail@cbaines.net> MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches From: Maxim Cournoyer This is a follow up commit to 8219ab0443129c71eef83ee4bd3aae0a0a12b6f9, which had a few problems. * gnu/packages/rust.scm (rust) [arguments]: Use gexps. Replace unpack-profiler-rt phase with copy-compiler-rt-source. Rename the enable-profiling phase to enable-profiler; streamline substitute regexp/replacement. Change-Id: I058de60f25c6a96cf4bbcd3a7dd4a682341e2ac5 --- gnu/packages/rust.scm | 493 +++++++++++++++++++++--------------------- 1 file changed, 246 insertions(+), 247 deletions(-) diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm index fe503b0d5f..13e57cd3f5 100644 --- a/gnu/packages/rust.scm +++ b/gnu/packages/rust.scm @@ -11,7 +11,7 @@ ;;; Copyright © 2020, 2021 Jakub Kądziołka ;;; Copyright © 2020 Pierre Langlois ;;; Copyright © 2020 Matthew James Kraai -;;; Copyright © 2021 Maxim Cournoyer +;;; Copyright © 2021, 2024 Maxim Cournoyer ;;; Copyright © 2021 (unmatched parenthesis ;;; Copyright © 2022 Zheng Junjie <873216071@qq.com> ;;; Copyright © 2022 Jim Newsome @@ -1072,257 +1072,256 @@ (define-public rust (strip-keyword-arguments '(#:tests?) (package-arguments base-rust)) ((#:phases phases) - `(modify-phases ,phases - (add-after 'unpack 'relax-gdb-auto-load-safe-path - ;; Allow GDB to load binaries from any location, otherwise the - ;; gdbinfo tests fail. This is only useful when testing with a - ;; GDB version newer than 8.2. - (lambda _ - (setenv "HOME" (getcwd)) - (with-output-to-file (string-append (getenv "HOME") "/.gdbinit") - (lambda _ - (format #t "set auto-load safe-path /~%"))) - ;; Do not launch gdb with '-nx' which causes it to not execute - ;; any init file. - (substitute* "src/tools/compiletest/src/runtest.rs" - (("\"-nx\".as_ref\\(\\), ") - "")))) - (add-after 'unpack 'disable-tests-requiring-git - (lambda _ - (substitute* "src/tools/cargo/tests/testsuite/git.rs" - ,@(make-ignore-test-list - '("fn fetch_downloads_with_git2_first_"))))) - (add-after 'unpack 'disable-tests-requiring-mercurial - (lambda _ - (with-directory-excursion "src/tools/cargo/tests/testsuite/cargo_init" - (substitute* '("mercurial_autodetect/mod.rs" - "simple_hg_ignore_exists/mod.rs") - ,@(make-ignore-test-list - '("fn case")))))) - (add-after 'unpack 'disable-tests-using-cargo-publish - (lambda _ - (with-directory-excursion "src/tools/cargo/tests/testsuite" - (substitute* "alt_registry.rs" - ,@(make-ignore-test-list - '("fn warn_for_unused_fields"))) - (substitute* '("cargo_add/locked_unchanged/mod.rs" - "cargo_add/lockfile_updated/mod.rs" - "cargo_remove/update_lock_file/mod.rs") - ,@(make-ignore-test-list - '("fn case"))) - (substitute* "git_shallow.rs" - ,@(make-ignore-test-list - '("fn gitoxide_clones_git_dependency_with_shallow_protocol_and_git2_is_used_for_followup_fetches" - "fn gitoxide_clones_registry_with_shallow_protocol_and_aborts_and_updates_again" - "fn gitoxide_clones_registry_with_shallow_protocol_and_follow_up_fetch_maintains_shallowness" - "fn gitoxide_clones_registry_with_shallow_protocol_and_follow_up_with_git2_fetch" - "fn gitoxide_clones_registry_without_shallow_protocol_and_follow_up_fetch_uses_shallowness" - "fn gitoxide_shallow_clone_followed_by_non_shallow_update" - "fn gitoxide_clones_shallow_two_revs_same_deps" - "fn gitoxide_git_dependencies_switch_from_branch_to_rev" - "fn shallow_deps_work_with_revisions_and_branches_mixed_on_same_dependency"))) - (substitute* "install.rs" - ,@(make-ignore-test-list - '("fn failed_install_retains_temp_directory"))) - (substitute* "offline.rs" - ,@(make-ignore-test-list - '("fn gitoxide_cargo_compile_offline_with_cached_git_dep_shallow_dep"))) - (substitute* "patch.rs" - ,@(make-ignore-test-list - '("fn gitoxide_clones_shallow_old_git_patch")))))) - ,@(if (target-riscv64?) - ;; Keep this phase separate so it can be adjusted without needing - ;; to adjust the skipped tests on other architectures. - `((add-after 'unpack 'disable-tests-broken-on-riscv64 - (lambda _ - (with-directory-excursion "src/tools/cargo/tests/testsuite" - (substitute* "build.rs" - ,@(make-ignore-test-list - '("fn uplift_dwp_of_bin_on_linux"))) - (substitute* "cache_lock.rs" - ,@(make-ignore-test-list - '("fn multiple_download"))))))) - `()) - (add-after 'unpack 'disable-tests-broken-on-aarch64 - (lambda _ - (with-directory-excursion "src/tools/cargo/tests/testsuite/" - (substitute* "build_script_extra_link_arg.rs" - ,@(make-ignore-test-list - '("fn build_script_extra_link_arg_bin_single"))) - (substitute* "build_script.rs" - ,@(make-ignore-test-list - '("fn env_test"))) - (substitute* "collisions.rs" - ,@(make-ignore-test-list - '("fn collision_doc_profile_split"))) - (substitute* "concurrent.rs" - ,@(make-ignore-test-list - '("fn no_deadlock_with_git_dependencies"))) - (substitute* "features2.rs" - ,@(make-ignore-test-list - '("fn dep_with_optional_host_deps_activated")))))) - (add-after 'unpack 'patch-command-exec-tests - ;; This test suite includes some tests that the stdlib's - ;; `Command` execution properly handles in situations where - ;; the environment or PATH variable are empty, but this fails - ;; since we don't have `echo` available at its usual FHS - ;; location. - (lambda _ - (substitute* "tests/ui/command/command-exec.rs" - (("Command::new\\(\"echo\"\\)") - (format #f "Command::new(~s)" (which "echo")))))) - (add-after 'unpack 'patch-command-uid-gid-test - (lambda _ - (substitute* "tests/ui/command/command-uid-gid.rs" - (("/bin/sh") (which "sh")) - (("/bin/ls") (which "ls"))))) - (add-after 'unpack 'skip-shebang-tests - ;; This test make sure that the parser behaves properly when a - ;; source file starts with a shebang. Unfortunately, the - ;; patch-shebangs phase changes the meaning of these edge-cases. - ;; We skip the test since it's drastically unlikely Guix's - ;; packaging will introduce a bug here. - (lambda _ - (delete-file "tests/ui/parser/shebang/sneaky-attrib.rs"))) - (add-after 'unpack 'patch-process-tests - (lambda* (#:key inputs #:allow-other-keys) - (let ((bash (assoc-ref inputs "bash"))) - (with-directory-excursion "library/std/src" - (substitute* "process/tests.rs" - (("\"/bin/sh\"") - (string-append "\"" bash "/bin/sh\""))) - ;; The three tests which are known to fail upstream on QEMU - ;; emulation on aarch64 and riscv64 also fail on x86_64 in - ;; Guix's build system. Skip them on all builds. - (substitute* "sys/unix/process/process_common/tests.rs" - ;; We can't use make-ignore-test-list because we will get - ;; build errors due to the double [ignore] block. - (("target_arch = \"arm\"" arm) - (string-append "target_os = \"linux\",\n" - " " arm))))))) - (add-after 'unpack 'disable-interrupt-tests - (lambda _ - ;; This test hangs in the build container; disable it. - (substitute* "src/tools/cargo/tests/testsuite/freshness.rs" - ,@(make-ignore-test-list - '("fn linking_interrupted"))) - ;; Likewise for the ctrl_c_kills_everyone test. - (substitute* "src/tools/cargo/tests/testsuite/death.rs" - ,@(make-ignore-test-list - '("fn ctrl_c_kills_everyone"))))) - (add-after 'unpack 'adjust-rpath-values - ;; This adds %output:out to rpath, allowing us to install utilities in - ;; different outputs while reusing the shared libraries. - (lambda* (#:key outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out"))) - (substitute* "src/bootstrap/src/core/builder.rs" - ((" = rpath.*" all) - (string-append all - " " - "rustflags.arg(\"-Clink-args=-Wl,-rpath=" - out "/lib\");\n")))))) - (add-after 'unpack 'unpack-profiler-rt - ;; Copy compiler-rt sources to where libprofiler_builtins looks - ;; for its vendored copy. - (lambda* (#:key inputs #:allow-other-keys) - (mkdir-p "src/llvm-project/compiler-rt") - (copy-recursively - (string-append (assoc-ref inputs "clang-source") - "/compiler-rt") - "src/llvm-project/compiler-rt"))) - (add-after 'configure 'enable-profiling - (lambda _ - (substitute* "config.toml" - (("^profiler =.*$") "") - (("\\[build\\]") "\n[build]\nprofiler = true\n")))) - (add-after 'configure 'add-gdb-to-config - (lambda* (#:key inputs #:allow-other-keys) - (let ((gdb (assoc-ref inputs "gdb"))) - (substitute* "config.toml" - (("^python =.*" all) - (string-append all - "gdb = \"" gdb "/bin/gdb\"\n")))))) - (replace 'build - ;; Phase overridden to also build more tools. - (lambda* (#:key parallel-build? #:allow-other-keys) - (let ((job-spec (string-append - "-j" (if parallel-build? - (number->string (parallel-job-count)) - "1")))) - (invoke "./x.py" job-spec "build" - "library/std" ;rustc - "src/tools/cargo" - "src/tools/clippy" - "src/tools/rust-analyzer" - "src/tools/rustfmt")))) - (replace 'check - ;; Phase overridden to also test more tools. - (lambda* (#:key tests? parallel-build? #:allow-other-keys) - (when tests? - (let ((job-spec (string-append - "-j" (if parallel-build? - (number->string (parallel-job-count)) - "1")))) - (invoke "./x.py" job-spec "test" "-vv" - "library/std" - "src/tools/cargo" - "src/tools/clippy" - "src/tools/rust-analyzer" - "src/tools/rustfmt"))))) - (replace 'install - ;; Phase overridden to also install more tools. - (lambda* (#:key outputs #:allow-other-keys) - (invoke "./x.py" "install") - (substitute* "config.toml" - ;; Adjust the prefix to the 'cargo' output. - (("prefix = \"[^\"]*\"") - (format #f "prefix = ~s" (assoc-ref outputs "cargo")))) - (invoke "./x.py" "install" "cargo") - (substitute* "config.toml" - ;; Adjust the prefix to the 'tools' output. - (("prefix = \"[^\"]*\"") - (format #f "prefix = ~s" (assoc-ref outputs "tools")))) - (invoke "./x.py" "install" "clippy") - (invoke "./x.py" "install" "rust-analyzer") - (invoke "./x.py" "install" "rustfmt"))) - (add-after 'install 'install-rust-src - (lambda* (#:key outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "rust-src")) - (dest "/lib/rustlib/src/rust")) - (mkdir-p (string-append out dest)) - (copy-recursively "library" (string-append out dest "/library")) - (copy-recursively "src" (string-append out dest "/src"))))) - (add-after 'install 'remove-uninstall-script - (lambda* (#:key outputs #:allow-other-keys) - ;; This script has no use on Guix - ;; and it retains a reference to the host's bash. - (delete-file (string-append (assoc-ref outputs "out") - "/lib/rustlib/uninstall.sh")))) - (add-after 'install-rust-src 'wrap-rust-analyzer - (lambda* (#:key outputs #:allow-other-keys) - (let ((bin (string-append (assoc-ref outputs "tools") "/bin"))) - (rename-file (string-append bin "/rust-analyzer") - (string-append bin "/.rust-analyzer-real")) - (call-with-output-file (string-append bin "/rust-analyzer") - (lambda (port) - (format port "#!~a + #~(modify-phases #$phases + (add-after 'unpack 'relax-gdb-auto-load-safe-path + ;; Allow GDB to load binaries from any location, otherwise the + ;; gdbinfo tests fail. This is only useful when testing with a + ;; GDB version newer than 8.2. + (lambda _ + (setenv "HOME" (getcwd)) + (with-output-to-file (string-append (getenv "HOME") "/.gdbinit") + (lambda _ + (format #t "set auto-load safe-path /~%"))) + ;; Do not launch gdb with '-nx' which causes it to not execute + ;; any init file. + (substitute* "src/tools/compiletest/src/runtest.rs" + (("\"-nx\".as_ref\\(\\), ") + "")))) + (add-after 'unpack 'disable-tests-requiring-git + (lambda _ + (substitute* "src/tools/cargo/tests/testsuite/git.rs" + #$@(make-ignore-test-list + '("fn fetch_downloads_with_git2_first_"))))) + (add-after 'unpack 'disable-tests-requiring-mercurial + (lambda _ + (with-directory-excursion "src/tools/cargo/tests/testsuite/cargo_init" + (substitute* '("mercurial_autodetect/mod.rs" + "simple_hg_ignore_exists/mod.rs") + #$@(make-ignore-test-list + '("fn case")))))) + (add-after 'unpack 'disable-tests-using-cargo-publish + (lambda _ + (with-directory-excursion "src/tools/cargo/tests/testsuite" + (substitute* "alt_registry.rs" + #$@(make-ignore-test-list + '("fn warn_for_unused_fields"))) + (substitute* '("cargo_add/locked_unchanged/mod.rs" + "cargo_add/lockfile_updated/mod.rs" + "cargo_remove/update_lock_file/mod.rs") + #$@(make-ignore-test-list + '("fn case"))) + (substitute* "git_shallow.rs" + #$@(make-ignore-test-list + '("fn gitoxide_clones_git_dependency_with_shallow_protocol_and_git2_is_used_for_followup_fetches" + "fn gitoxide_clones_registry_with_shallow_protocol_and_aborts_and_updates_again" + "fn gitoxide_clones_registry_with_shallow_protocol_and_follow_up_fetch_maintains_shallowness" + "fn gitoxide_clones_registry_with_shallow_protocol_and_follow_up_with_git2_fetch" + "fn gitoxide_clones_registry_without_shallow_protocol_and_follow_up_fetch_uses_shallowness" + "fn gitoxide_shallow_clone_followed_by_non_shallow_update" + "fn gitoxide_clones_shallow_two_revs_same_deps" + "fn gitoxide_git_dependencies_switch_from_branch_to_rev" + "fn shallow_deps_work_with_revisions_and_branches_mixed_on_same_dependency"))) + (substitute* "install.rs" + #$@(make-ignore-test-list + '("fn failed_install_retains_temp_directory"))) + (substitute* "offline.rs" + #$@(make-ignore-test-list + '("fn gitoxide_cargo_compile_offline_with_cached_git_dep_shallow_dep"))) + (substitute* "patch.rs" + #$@(make-ignore-test-list + '("fn gitoxide_clones_shallow_old_git_patch")))))) + #$@(if (target-riscv64?) + ;; Keep this phase separate so it can be adjusted without needing + ;; to adjust the skipped tests on other architectures. + #~((add-after 'unpack 'disable-tests-broken-on-riscv64 + (lambda _ + (with-directory-excursion "src/tools/cargo/tests/testsuite" + (substitute* "build.rs" + #$@(make-ignore-test-list + '("fn uplift_dwp_of_bin_on_linux"))) + (substitute* "cache_lock.rs" + #$@(make-ignore-test-list + '("fn multiple_download"))))))) + #~()) + (add-after 'unpack 'disable-tests-broken-on-aarch64 + (lambda _ + (with-directory-excursion "src/tools/cargo/tests/testsuite/" + (substitute* "build_script_extra_link_arg.rs" + #$@(make-ignore-test-list + '("fn build_script_extra_link_arg_bin_single"))) + (substitute* "build_script.rs" + #$@(make-ignore-test-list + '("fn env_test"))) + (substitute* "collisions.rs" + #$@(make-ignore-test-list + '("fn collision_doc_profile_split"))) + (substitute* "concurrent.rs" + #$@(make-ignore-test-list + '("fn no_deadlock_with_git_dependencies"))) + (substitute* "features2.rs" + #$@(make-ignore-test-list + '("fn dep_with_optional_host_deps_activated")))))) + (add-after 'unpack 'patch-command-exec-tests + ;; This test suite includes some tests that the stdlib's + ;; `Command` execution properly handles in situations where + ;; the environment or PATH variable are empty, but this fails + ;; since we don't have `echo` available at its usual FHS + ;; location. + (lambda _ + (substitute* "tests/ui/command/command-exec.rs" + (("Command::new\\(\"echo\"\\)") + (format #f "Command::new(~s)" (which "echo")))))) + (add-after 'unpack 'patch-command-uid-gid-test + (lambda _ + (substitute* "tests/ui/command/command-uid-gid.rs" + (("/bin/sh") (which "sh")) + (("/bin/ls") (which "ls"))))) + (add-after 'unpack 'skip-shebang-tests + ;; This test make sure that the parser behaves properly when a + ;; source file starts with a shebang. Unfortunately, the + ;; patch-shebangs phase changes the meaning of these edge-cases. + ;; We skip the test since it's drastically unlikely Guix's + ;; packaging will introduce a bug here. + (lambda _ + (delete-file "tests/ui/parser/shebang/sneaky-attrib.rs"))) + (add-after 'unpack 'patch-process-tests + (lambda* (#:key inputs #:allow-other-keys) + (let ((bash (assoc-ref inputs "bash"))) + (with-directory-excursion "library/std/src" + (substitute* "process/tests.rs" + (("\"/bin/sh\"") + (string-append "\"" bash "/bin/sh\""))) + ;; The three tests which are known to fail upstream on QEMU + ;; emulation on aarch64 and riscv64 also fail on x86_64 in + ;; Guix's build system. Skip them on all builds. + (substitute* "sys/unix/process/process_common/tests.rs" + ;; We can't use make-ignore-test-list because we will get + ;; build errors due to the double [ignore] block. + (("target_arch = \"arm\"" arm) + (string-append "target_os = \"linux\",\n" + " " arm))))))) + (add-after 'unpack 'disable-interrupt-tests + (lambda _ + ;; This test hangs in the build container; disable it. + (substitute* "src/tools/cargo/tests/testsuite/freshness.rs" + #$@(make-ignore-test-list + '("fn linking_interrupted"))) + ;; Likewise for the ctrl_c_kills_everyone test. + (substitute* "src/tools/cargo/tests/testsuite/death.rs" + #$@(make-ignore-test-list + '("fn ctrl_c_kills_everyone"))))) + (add-after 'unpack 'adjust-rpath-values + ;; This adds %output:out to rpath, allowing us to install utilities in + ;; different outputs while reusing the shared libraries. + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (substitute* "src/bootstrap/src/core/builder.rs" + ((" = rpath.*" all) + (string-append all + " " + "rustflags.arg(\"-Clink-args=-Wl,-rpath=" + out "/lib\");\n")))))) + (add-after 'unpack 'copy-compiler-rt-source + ;; Note: Keep the clang-runtime version in sync with the LLVM + ;; version used to build Rust. + (lambda _ + (let ((compiler-rt "src/llvm-project/compiler-rt")) + (mkdir-p compiler-rt) + (copy-recursively + (string-append #$(package-source clang-runtime-15) + "/compiler-rt") + compiler-rt)))) + (add-after 'configure 'enable-profiler + (lambda _ + (substitute* "config.toml" + (("^profiler =.*") "") + (("\\[build]") + "[build]\nprofiler = true\n")))) + (add-after 'configure 'add-gdb-to-config + (lambda* (#:key inputs #:allow-other-keys) + (let ((gdb (assoc-ref inputs "gdb"))) + (substitute* "config.toml" + (("^python =.*" all) + (string-append all + "gdb = \"" gdb "/bin/gdb\"\n")))))) + (replace 'build + ;; Phase overridden to also build more tools. + (lambda* (#:key parallel-build? #:allow-other-keys) + (let ((job-spec (string-append + "-j" (if parallel-build? + (number->string (parallel-job-count)) + "1")))) + (invoke "./x.py" job-spec "build" + "library/std" ;rustc + "src/tools/cargo" + "src/tools/clippy" + "src/tools/rust-analyzer" + "src/tools/rustfmt")))) + (replace 'check + ;; Phase overridden to also test more tools. + (lambda* (#:key tests? parallel-build? #:allow-other-keys) + (when tests? + (let ((job-spec (string-append + "-j" (if parallel-build? + (number->string (parallel-job-count)) + "1")))) + (invoke "./x.py" job-spec "test" "-vv" + "library/std" + "src/tools/cargo" + "src/tools/clippy" + "src/tools/rust-analyzer" + "src/tools/rustfmt"))))) + (replace 'install + ;; Phase overridden to also install more tools. + (lambda* (#:key outputs #:allow-other-keys) + (invoke "./x.py" "install") + (substitute* "config.toml" + ;; Adjust the prefix to the 'cargo' output. + (("prefix = \"[^\"]*\"") + (format #f "prefix = ~s" (assoc-ref outputs "cargo")))) + (invoke "./x.py" "install" "cargo") + (substitute* "config.toml" + ;; Adjust the prefix to the 'tools' output. + (("prefix = \"[^\"]*\"") + (format #f "prefix = ~s" (assoc-ref outputs "tools")))) + (invoke "./x.py" "install" "clippy") + (invoke "./x.py" "install" "rust-analyzer") + (invoke "./x.py" "install" "rustfmt"))) + (add-after 'install 'install-rust-src + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "rust-src")) + (dest "/lib/rustlib/src/rust")) + (mkdir-p (string-append out dest)) + (copy-recursively "library" (string-append out dest "/library")) + (copy-recursively "src" (string-append out dest "/src"))))) + (add-after 'install 'remove-uninstall-script + (lambda* (#:key outputs #:allow-other-keys) + ;; This script has no use on Guix + ;; and it retains a reference to the host's bash. + (delete-file (string-append (assoc-ref outputs "out") + "/lib/rustlib/uninstall.sh")))) + (add-after 'install-rust-src 'wrap-rust-analyzer + (lambda* (#:key outputs #:allow-other-keys) + (let ((bin (string-append (assoc-ref outputs "tools") "/bin"))) + (rename-file (string-append bin "/rust-analyzer") + (string-append bin "/.rust-analyzer-real")) + (call-with-output-file (string-append bin "/rust-analyzer") + (lambda (port) + (format port "#!~a if test -z \"${RUST_SRC_PATH}\";then export RUST_SRC_PATH=~S;fi; exec -a \"$0\" \"~a\" \"$@\"" - (which "bash") - (string-append (assoc-ref outputs "rust-src") - "/lib/rustlib/src/rust/library") - (string-append bin "/.rust-analyzer-real")))) - (chmod (string-append bin "/rust-analyzer") #o755)))))))) + (which "bash") + (string-append (assoc-ref outputs "rust-src") + "/lib/rustlib/src/rust/library") + (string-append bin "/.rust-analyzer-real")))) + (chmod (string-append bin "/rust-analyzer") #o755)))))))) (inputs (modify-inputs (package-inputs base-rust) (prepend curl libffi `(,nghttp2 "lib") zlib))) - (native-inputs (cons* - ;; Keep in sync with the llvm used to build rust. - `("clang-source" ,(package-source clang-runtime-15)) - ;; Add test inputs. - `("gdb" ,gdb/pinned) - `("procps" ,procps) - (package-native-inputs base-rust)))))) + ;; Add test inputs. + (native-inputs (cons* `("gdb" ,gdb/pinned) + `("procps" ,procps) + (package-native-inputs base-rust)))))) (define*-public (make-rust-sysroot target) (make-rust-sysroot/implementation target rust)) From patchwork Sat Aug 10 07:11:47 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Christopher Baines X-Patchwork-Id: 66911 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 6A68E27BBE2; Sat, 10 Aug 2024 08:13:09 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-7.6 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,MAILING_LIST_MULTI,RCVD_IN_VALIDITY_CERTIFIED, RCVD_IN_VALIDITY_RPBL,RCVD_IN_VALIDITY_SAFE,SPF_HELO_PASS, URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id EEC4D27BBE9 for ; Sat, 10 Aug 2024 08:13:07 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1scgHD-0003z6-U1; Sat, 10 Aug 2024 03:12:35 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1scgHC-0003yK-D4 for guix-patches@gnu.org; Sat, 10 Aug 2024 03:12:34 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1scgHC-0005zz-3r for guix-patches@gnu.org; Sat, 10 Aug 2024 03:12:34 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=debbugs.gnu.org; s=debbugs-gnu-org; h=MIME-Version:References:In-Reply-To:Date:From:To:Subject; bh=Yz9wBUogHa2lCEDZlkvDFjmKezndzRllSZHta+ksscI=; b=mci4n7pbDPkX6nu6pgIDo6GvrULF8unl46jeipBm05XB76T7vio+ecOrwtt9BTSb+h3a6TQm+HLel+meE409j2RdDe0aV5hMQ/YtBNxcETUjcy/w8kUd+qBxY+RSKWJutW+dDWIdSk1bfrvJTMVMioOUxym+NhkL+T0tne4EkfhmgF7t4LIIO4Mgh4usI7FpRbkpY/Z5IAuDM3lTOYVJ4BPq0jVHgF5d5lrsVyDykfNGr0vGgxsRD5pS0/aWHydbE0oayUJFmYvTKrsZa28jQ3KbyAzvvBWybFjrMN8BisRwcXtIcVlNxoCAltcbqbTtT57IdGe7qTJfISt6LDD8QQ==; Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1scgHf-0004w9-15; Sat, 10 Aug 2024 03:13:03 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#72553] [PATCH 4/4] gnu: rust: Disable token_not_logged test. Resent-From: Christopher Baines Original-Sender: "Debbugs-submit" Resent-CC: efraim@flashner.co.il, guix-patches@gnu.org Resent-Date: Sat, 10 Aug 2024 07:13:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 72553 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 72553@debbugs.gnu.org Cc: Efraim Flashner X-Debbugs-Original-Xcc: Efraim Flashner Received: via spool by 72553-submit@debbugs.gnu.org id=B72553.172327397518934 (code B ref 72553); Sat, 10 Aug 2024 07:13:02 +0000 Received: (at 72553) by debbugs.gnu.org; 10 Aug 2024 07:12:55 +0000 Received: from localhost ([127.0.0.1]:38957 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1scgHX-0004vF-Cj for submit@debbugs.gnu.org; Sat, 10 Aug 2024 03:12:55 -0400 Received: from mira.cbaines.net ([212.71.252.8]:43990) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1scgHT-0004uj-OR for 72553@debbugs.gnu.org; Sat, 10 Aug 2024 03:12:52 -0400 Received: from localhost (136.249.6.51.dyn.plus.net [51.6.249.136]) by mira.cbaines.net (Postfix) with ESMTPSA id 435A927BBEB for <72553@debbugs.gnu.org>; Sat, 10 Aug 2024 08:11:52 +0100 (BST) Received: from localhost (localhost [local]) by localhost (OpenSMTPD) with ESMTPA id 69417597 for <72553@debbugs.gnu.org>; Sat, 10 Aug 2024 07:11:51 +0000 (UTC) From: Christopher Baines Date: Sat, 10 Aug 2024 08:11:47 +0100 Message-ID: X-Mailer: git-send-email 2.45.2 In-Reply-To: <0917fd5934be09855e7baec9901fa090d98a524b.1723273907.git.mail@cbaines.net> References: <0917fd5934be09855e7baec9901fa090d98a524b.1723273907.git.mail@cbaines.net> MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches From: Maxim Cournoyer * gnu/packages/rust.scm (rust) [arguments]: Disable an extra test in the disable-tests-using-cargo-publish phase. Change-Id: I7d5d9603cfeeffd95f565b5bda455e28022fa745 --- gnu/packages/rust.scm | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm index 13e57cd3f5..1d89cd212c 100644 --- a/gnu/packages/rust.scm +++ b/gnu/packages/rust.scm @@ -1100,11 +1100,16 @@ (define-public rust #$@(make-ignore-test-list '("fn case")))))) (add-after 'unpack 'disable-tests-using-cargo-publish + ;; The publish procedure doesn't work in the build environment + ;; (see: https://github.com/rust-lang/rust/issues/120340). (lambda _ (with-directory-excursion "src/tools/cargo/tests/testsuite" (substitute* "alt_registry.rs" #$@(make-ignore-test-list '("fn warn_for_unused_fields"))) + (substitute* "registry_auth.rs" + #$@(make-ignore-test-list + '("fn token_not_logged"))) (substitute* '("cargo_add/locked_unchanged/mod.rs" "cargo_add/lockfile_updated/mod.rs" "cargo_remove/update_lock_file/mod.rs")