192f3ab15Sopenharmony_ci#![allow( 292f3ab15Sopenharmony_ci clippy::inconsistent_digit_grouping, 392f3ab15Sopenharmony_ci clippy::uninlined_format_args, 492f3ab15Sopenharmony_ci clippy::unusual_byte_groupings 592f3ab15Sopenharmony_ci)] 692f3ab15Sopenharmony_ci 792f3ab15Sopenharmony_ciuse std::env; 892f3ab15Sopenharmony_ci 992f3ab15Sopenharmony_cifn main() { 1092f3ab15Sopenharmony_ci if env::var("DEP_OPENSSL_LIBRESSL").is_ok() { 1192f3ab15Sopenharmony_ci println!("cargo:rustc-cfg=libressl"); 1292f3ab15Sopenharmony_ci } 1392f3ab15Sopenharmony_ci 1492f3ab15Sopenharmony_ci if env::var("DEP_OPENSSL_BORINGSSL").is_ok() { 1592f3ab15Sopenharmony_ci println!("cargo:rustc-cfg=boringssl"); 1692f3ab15Sopenharmony_ci return; 1792f3ab15Sopenharmony_ci } 1892f3ab15Sopenharmony_ci 1992f3ab15Sopenharmony_ci if let Ok(v) = env::var("DEP_OPENSSL_LIBRESSL_VERSION_NUMBER") { 2092f3ab15Sopenharmony_ci let version = u64::from_str_radix(&v, 16).unwrap(); 2192f3ab15Sopenharmony_ci 2292f3ab15Sopenharmony_ci if version >= 0x2_05_00_00_0 { 2392f3ab15Sopenharmony_ci println!("cargo:rustc-cfg=libressl250"); 2492f3ab15Sopenharmony_ci } 2592f3ab15Sopenharmony_ci if version >= 0x2_05_01_00_0 { 2692f3ab15Sopenharmony_ci println!("cargo:rustc-cfg=libressl251"); 2792f3ab15Sopenharmony_ci } 2892f3ab15Sopenharmony_ci if version >= 0x2_06_01_00_0 { 2992f3ab15Sopenharmony_ci println!("cargo:rustc-cfg=libressl261"); 3092f3ab15Sopenharmony_ci } 3192f3ab15Sopenharmony_ci if version >= 0x2_07_00_00_0 { 3292f3ab15Sopenharmony_ci println!("cargo:rustc-cfg=libressl270"); 3392f3ab15Sopenharmony_ci } 3492f3ab15Sopenharmony_ci if version >= 0x2_07_01_00_0 { 3592f3ab15Sopenharmony_ci println!("cargo:rustc-cfg=libressl271"); 3692f3ab15Sopenharmony_ci } 3792f3ab15Sopenharmony_ci if version >= 0x2_07_03_00_0 { 3892f3ab15Sopenharmony_ci println!("cargo:rustc-cfg=libressl273"); 3992f3ab15Sopenharmony_ci } 4092f3ab15Sopenharmony_ci if version >= 0x2_08_00_00_0 { 4192f3ab15Sopenharmony_ci println!("cargo:rustc-cfg=libressl280"); 4292f3ab15Sopenharmony_ci } 4392f3ab15Sopenharmony_ci if version >= 0x2_09_01_00_0 { 4492f3ab15Sopenharmony_ci println!("cargo:rustc-cfg=libressl291"); 4592f3ab15Sopenharmony_ci } 4692f3ab15Sopenharmony_ci if version >= 0x3_01_00_00_0 { 4792f3ab15Sopenharmony_ci println!("cargo:rustc-cfg=libressl310"); 4892f3ab15Sopenharmony_ci } 4992f3ab15Sopenharmony_ci if version >= 0x3_02_01_00_0 { 5092f3ab15Sopenharmony_ci println!("cargo:rustc-cfg=libressl321"); 5192f3ab15Sopenharmony_ci } 5292f3ab15Sopenharmony_ci if version >= 0x3_03_02_00_0 { 5392f3ab15Sopenharmony_ci println!("cargo:rustc-cfg=libressl332"); 5492f3ab15Sopenharmony_ci } 5592f3ab15Sopenharmony_ci if version >= 0x3_04_00_00_0 { 5692f3ab15Sopenharmony_ci println!("cargo:rustc-cfg=libressl340"); 5792f3ab15Sopenharmony_ci } 5892f3ab15Sopenharmony_ci if version >= 0x3_05_00_00_0 { 5992f3ab15Sopenharmony_ci println!("cargo:rustc-cfg=libressl350"); 6092f3ab15Sopenharmony_ci } 6192f3ab15Sopenharmony_ci if version >= 0x3_06_00_00_0 { 6292f3ab15Sopenharmony_ci println!("cargo:rustc-cfg=libressl360"); 6392f3ab15Sopenharmony_ci } 6492f3ab15Sopenharmony_ci if version >= 0x3_06_01_00_0 { 6592f3ab15Sopenharmony_ci println!("cargo:rustc-cfg=libressl361"); 6692f3ab15Sopenharmony_ci } 6792f3ab15Sopenharmony_ci if version >= 0x3_07_00_00_0 { 6892f3ab15Sopenharmony_ci println!("cargo:rustc-cfg=libressl370"); 6992f3ab15Sopenharmony_ci } 7092f3ab15Sopenharmony_ci } 7192f3ab15Sopenharmony_ci 7292f3ab15Sopenharmony_ci if let Ok(vars) = env::var("DEP_OPENSSL_CONF") { 7392f3ab15Sopenharmony_ci for var in vars.split(',') { 7492f3ab15Sopenharmony_ci println!("cargo:rustc-cfg=osslconf=\"{}\"", var); 7592f3ab15Sopenharmony_ci } 7692f3ab15Sopenharmony_ci } 7792f3ab15Sopenharmony_ci 7892f3ab15Sopenharmony_ci if let Ok(version) = env::var("DEP_OPENSSL_VERSION_NUMBER") { 7992f3ab15Sopenharmony_ci let version = u64::from_str_radix(&version, 16).unwrap(); 8092f3ab15Sopenharmony_ci 8192f3ab15Sopenharmony_ci if version >= 0x1_00_01_00_0 { 8292f3ab15Sopenharmony_ci println!("cargo:rustc-cfg=ossl101"); 8392f3ab15Sopenharmony_ci } 8492f3ab15Sopenharmony_ci if version >= 0x1_00_02_00_0 { 8592f3ab15Sopenharmony_ci println!("cargo:rustc-cfg=ossl102"); 8692f3ab15Sopenharmony_ci } 8792f3ab15Sopenharmony_ci if version >= 0x1_01_00_00_0 { 8892f3ab15Sopenharmony_ci println!("cargo:rustc-cfg=ossl110"); 8992f3ab15Sopenharmony_ci } 9092f3ab15Sopenharmony_ci if version >= 0x1_01_00_07_0 { 9192f3ab15Sopenharmony_ci println!("cargo:rustc-cfg=ossl110g"); 9292f3ab15Sopenharmony_ci } 9392f3ab15Sopenharmony_ci if version >= 0x1_01_00_08_0 { 9492f3ab15Sopenharmony_ci println!("cargo:rustc-cfg=ossl110h"); 9592f3ab15Sopenharmony_ci } 9692f3ab15Sopenharmony_ci if version >= 0x1_01_01_00_0 { 9792f3ab15Sopenharmony_ci println!("cargo:rustc-cfg=ossl111"); 9892f3ab15Sopenharmony_ci } 9992f3ab15Sopenharmony_ci if version >= 0x3_00_00_00_0 { 10092f3ab15Sopenharmony_ci println!("cargo:rustc-cfg=ossl300"); 10192f3ab15Sopenharmony_ci } 10292f3ab15Sopenharmony_ci if version >= 0x3_01_00_00_0 { 10392f3ab15Sopenharmony_ci println!("cargo:rustc-cfg=ossl310"); 10492f3ab15Sopenharmony_ci } 10592f3ab15Sopenharmony_ci } 10692f3ab15Sopenharmony_ci 10792f3ab15Sopenharmony_ci if let Ok(version) = env::var("DEP_OPENSSL_LIBRESSL_VERSION_NUMBER") { 10892f3ab15Sopenharmony_ci let version = u64::from_str_radix(&version, 16).unwrap(); 10992f3ab15Sopenharmony_ci 11092f3ab15Sopenharmony_ci if version >= 0x2_05_01_00_0 { 11192f3ab15Sopenharmony_ci println!("cargo:rustc-cfg=libressl251"); 11292f3ab15Sopenharmony_ci } 11392f3ab15Sopenharmony_ci 11492f3ab15Sopenharmony_ci if version >= 0x2_06_01_00_0 { 11592f3ab15Sopenharmony_ci println!("cargo:rustc-cfg=libressl261"); 11692f3ab15Sopenharmony_ci } 11792f3ab15Sopenharmony_ci 11892f3ab15Sopenharmony_ci if version >= 0x2_07_00_00_0 { 11992f3ab15Sopenharmony_ci println!("cargo:rustc-cfg=libressl270"); 12092f3ab15Sopenharmony_ci } 12192f3ab15Sopenharmony_ci 12292f3ab15Sopenharmony_ci if version >= 0x2_07_01_00_0 { 12392f3ab15Sopenharmony_ci println!("cargo:rustc-cfg=libressl271"); 12492f3ab15Sopenharmony_ci } 12592f3ab15Sopenharmony_ci 12692f3ab15Sopenharmony_ci if version >= 0x2_07_03_00_0 { 12792f3ab15Sopenharmony_ci println!("cargo:rustc-cfg=libressl273"); 12892f3ab15Sopenharmony_ci } 12992f3ab15Sopenharmony_ci 13092f3ab15Sopenharmony_ci if version >= 0x2_08_00_00_0 { 13192f3ab15Sopenharmony_ci println!("cargo:rustc-cfg=libressl280"); 13292f3ab15Sopenharmony_ci } 13392f3ab15Sopenharmony_ci 13492f3ab15Sopenharmony_ci if version >= 0x2_09_01_00_0 { 13592f3ab15Sopenharmony_ci println!("cargo:rustc-cfg=libressl291"); 13692f3ab15Sopenharmony_ci } 13792f3ab15Sopenharmony_ci 13892f3ab15Sopenharmony_ci if version >= 0x3_02_01_00_0 { 13992f3ab15Sopenharmony_ci println!("cargo:rustc-cfg=libressl321"); 14092f3ab15Sopenharmony_ci } 14192f3ab15Sopenharmony_ci 14292f3ab15Sopenharmony_ci if version >= 0x3_03_02_00_0 { 14392f3ab15Sopenharmony_ci println!("cargo:rustc-cfg=libressl332"); 14492f3ab15Sopenharmony_ci } 14592f3ab15Sopenharmony_ci 14692f3ab15Sopenharmony_ci if version >= 0x3_04_00_00_0 { 14792f3ab15Sopenharmony_ci println!("cargo:rustc-cfg=libressl340"); 14892f3ab15Sopenharmony_ci } 14992f3ab15Sopenharmony_ci 15092f3ab15Sopenharmony_ci if version >= 0x3_05_00_00_0 { 15192f3ab15Sopenharmony_ci println!("cargo:rustc-cfg=libressl350"); 15292f3ab15Sopenharmony_ci } 15392f3ab15Sopenharmony_ci 15492f3ab15Sopenharmony_ci if version >= 0x3_06_00_00_0 { 15592f3ab15Sopenharmony_ci println!("cargo:rustc-cfg=libressl360"); 15692f3ab15Sopenharmony_ci } 15792f3ab15Sopenharmony_ci 15892f3ab15Sopenharmony_ci if version >= 0x3_06_01_00_0 { 15992f3ab15Sopenharmony_ci println!("cargo:rustc-cfg=libressl361"); 16092f3ab15Sopenharmony_ci } 16192f3ab15Sopenharmony_ci } 16292f3ab15Sopenharmony_ci} 163