summaryrefslogtreecommitdiff
path: root/gnu/packages/rust.scm
diff options
context:
space:
mode:
authorEfraim Flashner <efraim@flashner.co.il>2025-02-13 16:35:39 +0200
committerHilton Chain <hako@ultrarare.space>2025-08-21 19:07:30 +0800
commit0f7ba06b6f316a52b66dda4fa433e70d920f15ef (patch)
tree3f85bd438dd96e5546e6236e2d4f0eeb1413e7e1 /gnu/packages/rust.scm
parent035a31940765adf2c2c991eb6f30380f96ecc3a5 (diff)
gnu: rust: Update to 1.84.
* gnu/packages/rust.scm (rust): Update to 1.84. [source]: Adjust snippet for directories to delete. [arguments]: Only add 'disable-tests-broken-on-aarch64 phase for aarch64. Adjust other test modifying phases for changes in the test suite. [native-inputs]: Replace the clang-runtime sources from 17 to 19. [properties]: Update the llvm cpu architecture. Change-Id: I17a357534d168d87f11f497b25c297003bb76f2a
Diffstat (limited to 'gnu/packages/rust.scm')
-rw-r--r--gnu/packages/rust.scm79
1 files changed, 44 insertions, 35 deletions
diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm
index f1daed2c77e..48e2ce56b25 100644
--- a/gnu/packages/rust.scm
+++ b/gnu/packages/rust.scm
@@ -1100,12 +1100,13 @@ safety and thread safety guarantees.")
1100;;; Here we take the latest included Rust, make it public, and re-enable tests 1100;;; Here we take the latest included Rust, make it public, and re-enable tests
1101;;; and extra components such as rustfmt. 1101;;; and extra components such as rustfmt.
1102(define-public rust 1102(define-public rust
1103 (let ((base-rust rust-1.82)) 1103 (let ((base-rust rust-1.84))
1104 (package 1104 (package
1105 (inherit base-rust) 1105 (inherit base-rust)
1106 (properties (append 1106 (properties (append
1107 (alist-delete 'hidden? (package-properties base-rust)) 1107 (alist-delete 'hidden? (package-properties base-rust))
1108 (clang-compiler-cpu-architectures "17"))) 1108 ;; Keep in sync with the llvm used to build rust.
1109 (clang-compiler-cpu-architectures "19")))
1109 (outputs (cons* "rust-src" "tools" (package-outputs base-rust))) 1110 (outputs (cons* "rust-src" "tools" (package-outputs base-rust)))
1110 (source 1111 (source
1111 (origin 1112 (origin
@@ -1113,7 +1114,9 @@ safety and thread safety guarantees.")
1113 (snippet 1114 (snippet
1114 '(begin 1115 '(begin
1115 (for-each delete-file-recursively 1116 (for-each delete-file-recursively
1116 '("src/llvm-project" 1117 '("src/gcc"
1118 "src/llvm-project"
1119 "vendor/jemalloc-sys-0.3.2/jemalloc"
1117 "vendor/jemalloc-sys-0.5.3+5.3.0-patched/jemalloc" 1120 "vendor/jemalloc-sys-0.5.3+5.3.0-patched/jemalloc"
1118 "vendor/jemalloc-sys-0.5.4+5.3.0-patched/jemalloc" 1121 "vendor/jemalloc-sys-0.5.4+5.3.0-patched/jemalloc"
1119 "vendor/openssl-src-111.17.0+1.1.1m/openssl" 1122 "vendor/openssl-src-111.17.0+1.1.1m/openssl"
@@ -1123,10 +1126,10 @@ safety and thread safety guarantees.")
1123 ;; so we unbundle them. 1126 ;; so we unbundle them.
1124 "vendor/curl-sys-0.4.52+curl-7.81.0/curl" 1127 "vendor/curl-sys-0.4.52+curl-7.81.0/curl"
1125 "vendor/curl-sys-0.4.74+curl-8.9.0/curl" 1128 "vendor/curl-sys-0.4.74+curl-8.9.0/curl"
1129 "vendor/curl-sys-0.4.77+curl-8.10.1/curl"
1126 "vendor/libffi-sys-2.3.0/libffi" 1130 "vendor/libffi-sys-2.3.0/libffi"
1127 "vendor/libz-sys-1.1.3/src/zlib" 1131 "vendor/libz-sys-1.1.3/src/zlib"
1128 "vendor/libz-sys-1.1.18/src/zlib" 1132 "vendor/libz-sys-1.1.20/src/zlib"))
1129 "vendor/libz-sys-1.1.19/src/zlib"))
1130 ;; Use the packaged nghttp2 1133 ;; Use the packaged nghttp2
1131 (for-each 1134 (for-each
1132 (lambda (ver) 1135 (lambda (ver)
@@ -1155,9 +1158,8 @@ safety and thread safety guarantees.")
1155 (string-append all ", \"use-libc\""))))) 1158 (string-append all ", \"use-libc\"")))))
1156 '("3.3.0" 1159 '("3.3.0"
1157 "3.4.0" 1160 "3.4.0"
1158 "3.7.1"
1159 "3.10.1" 1161 "3.10.1"
1160 "3.12.0")))))) 1162 "3.13.0"))))))
1161 (arguments 1163 (arguments
1162 (substitute-keyword-arguments 1164 (substitute-keyword-arguments
1163 (strip-keyword-arguments '(#:tests?) 1165 (strip-keyword-arguments '(#:tests?)
@@ -1182,7 +1184,8 @@ safety and thread safety guarantees.")
1182 (lambda _ 1184 (lambda _
1183 (substitute* "src/tools/cargo/tests/testsuite/git.rs" 1185 (substitute* "src/tools/cargo/tests/testsuite/git.rs"
1184 ,@(make-ignore-test-list 1186 ,@(make-ignore-test-list
1185 '("fn fetch_downloads_with_git2_first_"))) 1187 '("fn fetch_downloads_with_git2_first_"
1188 "fn corrupted_checkout_with_cli")))
1186 (substitute* "src/tools/cargo/tests/testsuite/build.rs" 1189 (substitute* "src/tools/cargo/tests/testsuite/build.rs"
1187 ,@(make-ignore-test-list 1190 ,@(make-ignore-test-list
1188 '("fn build_with_symlink_to_path_dependency_with_build_script_in_git"))) 1191 '("fn build_with_symlink_to_path_dependency_with_build_script_in_git")))
@@ -1245,35 +1248,41 @@ safety and thread safety guarantees.")
1245 ,@(make-ignore-test-list 1248 ,@(make-ignore-test-list
1246 '("fn package_cache_lock_during_build"))))))) 1249 '("fn package_cache_lock_during_build")))))))
1247 `()) 1250 `())
1248 (add-after 'unpack 'disable-tests-broken-on-aarch64 1251 ,@(if (target-aarch64?)
1252 ;; Keep this phase separate so it can be adjusted without needing
1253 ;; to adjust the skipped tests on other architectures.
1254 `((add-after 'unpack 'disable-tests-broken-on-aarch64
1255 (lambda _
1256 (with-directory-excursion "src/tools/cargo/tests/testsuite"
1257 (substitute* "build_script_extra_link_arg.rs"
1258 ,@(make-ignore-test-list
1259 '("fn build_script_extra_link_arg_bin_single")))
1260 (substitute* "build_script.rs"
1261 ,@(make-ignore-test-list
1262 '("fn env_test")))
1263 (substitute* "collisions.rs"
1264 ,@(make-ignore-test-list
1265 '("fn collision_doc_profile_split")))
1266 (substitute* "concurrent.rs"
1267 ,@(make-ignore-test-list
1268 '("fn no_deadlock_with_git_dependencies")))
1269 (substitute* "features2.rs"
1270 ,@(make-ignore-test-list
1271 '("fn dep_with_optional_host_deps_activated")))))))
1272 `())
1273 (add-after 'unpack 'disable-tests-requiring-crates.io
1249 (lambda _ 1274 (lambda _
1250 (with-directory-excursion "src/tools/cargo/tests/testsuite/" 1275 (with-directory-excursion "src/tools/cargo/tests/testsuite"
1251 (substitute* "build_script_extra_link_arg.rs" 1276 (substitute* "install.rs"
1252 ,@(make-ignore-test-list
1253 '("fn build_script_extra_link_arg_bin_single")))
1254 (substitute* "build_script.rs"
1255 ,@(make-ignore-test-list
1256 '("fn env_test")))
1257 (substitute* "collisions.rs"
1258 ,@(make-ignore-test-list 1277 ,@(make-ignore-test-list
1259 '("fn collision_doc_profile_split"))) 1278 '("fn install_global_cargo_config")))
1260 (substitute* "concurrent.rs" 1279 (substitute* '("cargo_add/add_workspace_non_fuzzy/mod.rs"
1280 "cargo_info/within_ws_with_alternative_registry/mod.rs")
1261 ,@(make-ignore-test-list 1281 ,@(make-ignore-test-list
1262 '("fn no_deadlock_with_git_dependencies"))) 1282 '("fn case")))
1263 (substitute* "features2.rs" 1283 (substitute* "package.rs"
1264 ,@(make-ignore-test-list 1284 ,@(make-ignore-test-list
1265 '("fn dep_with_optional_host_deps_activated")))))) 1285 '("fn workspace_with_local_deps_index_mismatch"))))))
1266 (add-after 'unpack 'disable-tests-requiring-crates.io
1267 (lambda _
1268 (substitute* "src/tools/cargo/tests/testsuite/install.rs"
1269 ,@(make-ignore-test-list
1270 '("fn install_global_cargo_config")))
1271 (substitute* "src/tools/cargo/tests/testsuite/cargo_info/within_ws_with_alternative_registry/mod.rs"
1272 ,@(make-ignore-test-list
1273 '("fn case")))
1274 (substitute* "src/tools/cargo/tests/testsuite/package.rs"
1275 ,@(make-ignore-test-list
1276 '("fn workspace_with_local_deps_index_mismatch")))))
1277 (add-after 'unpack 'disable-miscellaneous-broken-tests 1286 (add-after 'unpack 'disable-miscellaneous-broken-tests
1278 (lambda _ 1287 (lambda _
1279 (substitute* "src/tools/cargo/tests/testsuite/check_cfg.rs" 1288 (substitute* "src/tools/cargo/tests/testsuite/check_cfg.rs"
@@ -1342,7 +1351,7 @@ safety and thread safety guarantees.")
1342 ;; different outputs while reusing the shared libraries. 1351 ;; different outputs while reusing the shared libraries.
1343 (lambda* (#:key outputs #:allow-other-keys) 1352 (lambda* (#:key outputs #:allow-other-keys)
1344 (let ((out (assoc-ref outputs "out"))) 1353 (let ((out (assoc-ref outputs "out")))
1345 (substitute* "src/bootstrap/src/core/builder.rs" 1354 (substitute* "src/bootstrap/src/core/builder/cargo.rs"
1346 ((" = rpath.*" all) 1355 ((" = rpath.*" all)
1347 (string-append all 1356 (string-append all
1348 " " 1357 " "
@@ -1458,7 +1467,7 @@ exec -a \"$0\" \"~a\" --proc-macro-srv \"~a\" \"$@\""
1458 (prepend curl libffi `(,nghttp2 "lib") zlib))) 1467 (prepend curl libffi `(,nghttp2 "lib") zlib)))
1459 (native-inputs (cons* 1468 (native-inputs (cons*
1460 ;; Keep in sync with the llvm used to build rust. 1469 ;; Keep in sync with the llvm used to build rust.
1461 `("clang-source" ,(package-source clang-runtime-17)) 1470 `("clang-source" ,(package-source clang-runtime-19))
1462 ;; Add test inputs. 1471 ;; Add test inputs.
1463 `("gdb" ,gdb/pinned) 1472 `("gdb" ,gdb/pinned)
1464 `("procps" ,procps) 1473 `("procps" ,procps)