aboutsummaryrefslogtreecommitdiff
path: root/openssl/build.rs
diff options
context:
space:
mode:
Diffstat (limited to 'openssl/build.rs')
-rw-r--r--openssl/build.rs30
1 files changed, 21 insertions, 9 deletions
diff --git a/openssl/build.rs b/openssl/build.rs
index 640b024c..b07c1b3e 100644
--- a/openssl/build.rs
+++ b/openssl/build.rs
@@ -1,16 +1,28 @@
-extern crate gcc;
+#[cfg(feature = "c_helpers")]
+mod imp {
+ extern crate gcc;
-use std::env;
-use std::path::PathBuf;
+ use std::env;
+ use std::path::PathBuf;
-fn main() {
- let mut config = gcc::Config::new();
+ pub fn main() {
+ let mut config = gcc::Config::new();
- if let Some(paths) = env::var_os("DEP_OPENSSL_INCLUDE") {
- for path in env::split_paths(&paths) {
- config.include(PathBuf::from(path));
+ if let Some(paths) = env::var_os("DEP_OPENSSL_INCLUDE") {
+ for path in env::split_paths(&paths) {
+ config.include(PathBuf::from(path));
+ }
}
+
+ config.file("src/c_helpers.c").compile("libc_helpers.a");
}
+}
- config.file("src/c_helpers.c").compile("libc_helpers.a");
+#[cfg(not(feature = "c_helpers"))]
+mod imp {
+ pub fn main() {}
+}
+
+fn main() {
+ imp::main()
}