use std::env;

macro_rules! set_rustc_env_var {
	($name: expr, $value: expr) => {{
		println!("cargo:rustc-env={}={}", $name, $value);
	}};
}

#[allow(clippy::unusual_byte_groupings)]
fn main() {
	if let Ok(v) = env::var("DEP_OPENSSL_VERSION_NUMBER") {
		let version = u64::from_str_radix(&v, 16).unwrap();
		// OpenSSL 1.1.1
		if version >= 0x1_01_01_00_0 {
			println!("cargo:rustc-cfg=ed25519");
			println!("cargo:rustc-cfg=ed448");
		}
		set_rustc_env_var!("ACMED_TLS_LIB_NAME", "OpenSSL");
	}
	if env::var("DEP_OPENSSL_LIBRESSL_VERSION_NUMBER").is_ok() {
		set_rustc_env_var!("ACMED_TLS_LIB_NAME", "LibreSSL");
	}
}