| |
| |
| |
| |
| @@ -85,6 +85,7 @@ fn flag_if_supported_with_fallbacks(config: &mut cc::Build, flags: &[&str]) { |
| } |
| |
| fn compile_zstd() { |
| + let target = env::var("TARGET").unwrap_or_default(); |
| let mut config = cc::Build::new(); |
| |
| // Search the following directories for C files to add to the compilation. |
| @@ -164,6 +165,16 @@ fn compile_zstd() { |
| // Some extra parameters |
| config.include("zstd/lib/"); |
| config.include("zstd/lib/common"); |
| + if target.contains("msvc") { |
| + config.include("zstd/lib/compress"); |
| + config.include("zstd/lib/decompress"); |
| + #[cfg(feature = "zdict_builder")] |
| + config.include("zstd/lib/dictBuilder"); |
| + #[cfg(feature = "legacy")] |
| + config.include("zstd/lib/legacy"); |
| + #[cfg(feature = "seekable")] |
| + config.include("zstd/contrib/seekable_format"); |
| + } |
| config.warnings(false); |
| |
| config.define("ZSTD_LIB_DEPRECATED", Some("0")); |
| @@ -210,7 +221,9 @@ fn compile_zstd() { |
| |
| // Hide symbols from resulting library, |
| // so we can be used with another zstd-linking lib. |
| - // See https://github.com/gyscos/zstd-rs/issues/58 |
| - config.flag("-fvisibility=hidden"); |
| + // See https://github.com/gyscos/zstd-rs/issues/58. |
| + if !target.contains("msvc") { |
| + config.flag("-fvisibility=hidden"); |
| + } |
| config.define("XXH_PRIVATE_API", Some("")); |
| config.define("ZSTDLIB_VISIBILITY", Some("")); |
|
|