From a22c76e02eebe16630d2f0531f51413e6d7ef900 Mon Sep 17 00:00:00 2001 From: Dominik Maier Date: Tue, 15 Nov 2022 18:28:52 +0100 Subject: [PATCH] Improve Apple support for libafl_cc dll_extensions (#892) --- libafl_cc/build.rs | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/libafl_cc/build.rs b/libafl_cc/build.rs index 1370e02a3d..342c7d54ba 100644 --- a/libafl_cc/build.rs +++ b/libafl_cc/build.rs @@ -16,10 +16,16 @@ const LLVM_VERSION_MIN: u32 = 6; /// Get the extension for a shared object fn dll_extension<'a>() -> &'a str { - match env::var("CARGO_CFG_TARGET_OS").unwrap().as_str() { + if let Ok(vendor) = env::var("CARGO_CFG_TARGET_VENDOR") { + if vendor == "apple" { + return "dylib"; + } + } + let family = env::var("CARGO_CFG_TARGET_FAMILY").unwrap(); + match family.as_str() { "windows" => "dll", - "macos" | "ios" => "dylib", - _ => "so", + "unix" => "so", + _ => panic!("Unsupported target family: {family}"), } }