File: blake3-skip-embedded-C-code-use-pure-implementation.patch

package info (click to toggle)
rustc 1.87.0%2Bdfsg1-1
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 925,564 kB
  • sloc: xml: 158,127; python: 36,039; javascript: 19,761; sh: 19,737; cpp: 18,981; ansic: 13,133; asm: 4,376; makefile: 710; perl: 29; lisp: 28; ruby: 19; sql: 11
file content (64 lines) | stat: -rw-r--r-- 2,072 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
From: =?utf-8?q?Fabian_Gr=C3=BCnbichler?= <git@fabian.gruenbichler.email>
Date: Sat, 30 Nov 2024 12:24:03 +0100
Subject: blake3: skip embedded C code, use pure implementation
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 8bit

Forwarded: not-needed

Signed-off-by: Fabian Grünbichler <git@fabian.gruenbichler.email>
---
 vendor/blake3-1.6.1/Cargo.toml |  2 +-
 vendor/blake3-1.6.1/build.rs   | 18 ++++++++++++------
 2 files changed, 13 insertions(+), 7 deletions(-)

diff --git a/vendor/blake3-1.6.1/Cargo.toml b/vendor/blake3-1.6.1/Cargo.toml
index ae0142e..669fe83 100644
--- a/vendor/blake3-1.6.1/Cargo.toml
+++ b/vendor/blake3-1.6.1/Cargo.toml
@@ -38,7 +38,7 @@ features = [
 ]
 
 [features]
-default = ["std"]
+default = ["std", "pure"]
 digest = ["dep:digest"]
 mmap = [
     "std",
diff --git a/vendor/blake3-1.6.1/build.rs b/vendor/blake3-1.6.1/build.rs
index 2557120..9d47f1d 100644
--- a/vendor/blake3-1.6.1/build.rs
+++ b/vendor/blake3-1.6.1/build.rs
@@ -277,7 +277,11 @@ fn main() -> Result<(), Box<dyn std::error::Error>> {
     }
 
     if is_x86_64() || is_x86_32() {
-        let support = c_compiler_support();
+        let support = if is_pure() {
+            NoCompiler
+        } else {
+            c_compiler_support()
+        };
         if is_x86_32() || should_prefer_intrinsics() || is_pure() || support == NoCompiler {
             build_sse2_sse41_avx2_rust_intrinsics();
         } else {
@@ -314,11 +318,13 @@ fn main() -> Result<(), Box<dyn std::error::Error>> {
     println!("cargo:rerun-if-env-changed=CFLAGS");
 
     // Ditto for source files, though these shouldn't change as often.
-    for file in std::fs::read_dir("c")? {
-        println!(
-            "cargo:rerun-if-changed={}",
-            file?.path().to_str().expect("utf-8")
-        );
+    if !is_pure() {
+        for file in std::fs::read_dir("c")? {
+            println!(
+                "cargo:rerun-if-changed={}",
+                file?.path().to_str().expect("utf-8")
+            );
+        }
     }
 
     Ok(())