Skip to content

Commit 8457da5

Browse files
Merge pull request #139 from devnexen/profile_for_build_cc
no hardcoded profile for build_cc build.
2 parents 96ee80e + 91fd8fb commit 8457da5

File tree

1 file changed

+9
-2
lines changed

1 file changed

+9
-2
lines changed

snmalloc-sys/build.rs

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,10 @@
11
#[cfg(feature = "build_cc")]
22
fn main() {
3+
let (debug, optim_unix, optim_msvc, prof_msvc_hint) = if cfg!(feature = "debug") {
4+
(true, "-O0", "/O0", "/DEBUG")
5+
} else {
6+
(false, "-O3", "/O2", "/RELEASE")
7+
};
38
let mut build = cc::Build::new();
49
build.include("snmalloc/src");
510
build.file("snmalloc/src/override/rust.cc".to_string());
@@ -22,7 +27,9 @@ fn main() {
2227
build.flag_if_supported("/Zc:wchar_t");
2328
build.flag_if_supported("/Zc:forScope");
2429
build.flag_if_supported("/Zc:inline");
25-
build.flag_if_supported("-O3");
30+
build.flag_if_supported(prof_msvc_hint);
31+
build.flag_if_supported(optim_msvc);
32+
build.flag_if_supported(optim_unix);
2633
build.flag_if_supported("-mcx16");
2734
build.flag_if_supported("-fno-exceptions");
2835
build.flag_if_supported("-fno-rtti");
@@ -31,7 +38,7 @@ fn main() {
3138
build.flag_if_supported("-fpermissive");
3239
build.static_crt(true);
3340
build.cpp(true);
34-
build.debug(false);
41+
build.debug(debug);
3542
if cfg!(feature = "usecxx20") {
3643
build.flag_if_supported("-std=c++17"); //original required if cxx20 not supported
3744
build.flag_if_supported("/std:c++17");

0 commit comments

Comments
 (0)