From 38f69c54b9b7022b199b65d7aa5f253ab88ca7ef Mon Sep 17 00:00:00 2001 From: Ralf Jung Date: Thu, 2 May 2019 13:48:49 +0200 Subject: [PATCH 1/3] fix building libstd with cfg(miri) --- src/libstd/build.rs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/libstd/build.rs b/src/libstd/build.rs index 726c27321538d..6f3ccdafc3268 100644 --- a/src/libstd/build.rs +++ b/src/libstd/build.rs @@ -30,6 +30,8 @@ fn main() { println!("cargo:rustc-link-lib=resolv"); } else if target.contains("apple-darwin") { println!("cargo:rustc-link-lib=System"); + #[cfg(miri)] + println!("cargo:rustc-link-lib=framework=Security"); // res_init and friends require -lresolv on macOS/iOS. // See #41582 and http://blog.achernya.com/2013/03/os-x-has-silly-libsystem.html From 78b64206f1bbba2ee1ce031bae9a3a7d275ee396 Mon Sep 17 00:00:00 2001 From: Ralf Jung Date: Fri, 3 May 2019 09:43:33 +0200 Subject: [PATCH 2/3] explain why we need framework=Security with cfg(miri) --- src/libstd/build.rs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/libstd/build.rs b/src/libstd/build.rs index 6f3ccdafc3268..9d72ea02176df 100644 --- a/src/libstd/build.rs +++ b/src/libstd/build.rs @@ -31,6 +31,8 @@ fn main() { } else if target.contains("apple-darwin") { println!("cargo:rustc-link-lib=System"); #[cfg(miri)] + // With Miri, we use SecRandomCopyBytes got randomness, so we need to link + // with `framework=Security`. println!("cargo:rustc-link-lib=framework=Security"); // res_init and friends require -lresolv on macOS/iOS. From 3f16e2b1072a2b9585542e374f9f69d43162870b Mon Sep 17 00:00:00 2001 From: Ralf Jung Date: Sat, 11 May 2019 12:07:51 +0200 Subject: [PATCH 3/3] update miri --- src/tools/miri | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/tools/miri b/src/tools/miri index 053aa694990a2..25862b5513246 160000 --- a/src/tools/miri +++ b/src/tools/miri @@ -1 +1 @@ -Subproject commit 053aa694990a212ad8942dd72101ede23597c0e9 +Subproject commit 25862b5513246d1d6a2dbf48e022686654a51784