Fix LibreSSL cms.h detection

Also test without system OpenSSL headers when building OpenSSL on CircleCI
This commit is contained in:
Greg V 2017-11-06 16:19:16 +03:00
parent 8830bd5daf
commit 6e66bf9c38
2 changed files with 4 additions and 7 deletions

View File

@ -35,6 +35,7 @@ job: &JOB
steps:
- checkout
- run: apt-get update
- run: apt-get remove -y libssl-dev
- run: ./test/add_target.sh
- *RESTORE_REGISTRY
- run: cargo generate-lockfile

View File

@ -5,6 +5,7 @@ use std::env;
fn main() {
let mut cfg = ctest::TestGenerator::new();
let target = env::var("TARGET").unwrap();
let mut is_libressl = false;
if let Ok(out) = env::var("DEP_OPENSSL_INCLUDE") {
cfg.include(&out);
@ -24,6 +25,7 @@ fn main() {
if let Ok(_) = env::var("DEP_OPENSSL_LIBRESSL") {
cfg.cfg("libressl", None);
is_libressl = true;
} else if let Ok(version) = env::var("DEP_OPENSSL_VERSION") {
cfg.cfg(&format!("ossl{}", version), None);
}
@ -41,12 +43,6 @@ fn main() {
}
}
let has_cms_h = if let Ok(version) = env::var("DEP_OPENSSL_LIBRESSL_VERSION") {
version != "261" && version != "262"
} else {
true
};
cfg.header("openssl/comp.h")
.header("openssl/dh.h")
.header("openssl/ossl_typ.h")
@ -64,7 +60,7 @@ fn main() {
.header("openssl/aes.h")
.header("openssl/ocsp.h");
if has_cms_h {
if !is_libressl {
cfg.header("openssl/cms.h");
}