// SPDX-License-Identifier: Apache-2.0 | |
macro_rules! test { | |
() => (cfg!(test) && ::std::env::var("_CLANG_SYS_TEST").is_ok()); | |
} | |
macro_rules! target_os { | |
($os:expr) => { | |
if cfg!(test) && ::std::env::var("_CLANG_SYS_TEST").is_ok() { | |
let var = ::std::env::var("_CLANG_SYS_TEST_OS"); | |
var.map_or(false, |v| v == $os) | |
} else { | |
cfg!(target_os = $os) | |
} | |
}; | |
} | |
macro_rules! target_arch { | |
($arch:expr) => { | |
if cfg!(test) && ::std::env::var("_CLANG_SYS_TEST").is_ok() { | |
let var = ::std::env::var("_CLANG_SYS_TEST_ARCH"); | |
var.map_or(false, |v| v == $arch) | |
} else { | |
cfg!(target_arch = $arch) | |
} | |
}; | |
} | |
macro_rules! target_pointer_width { | |
($pointer_width:expr) => { | |
if cfg!(test) && ::std::env::var("_CLANG_SYS_TEST").is_ok() { | |
let var = ::std::env::var("_CLANG_SYS_TEST_POINTER_WIDTH"); | |
var.map_or(false, |v| v == $pointer_width) | |
} else { | |
cfg!(target_pointer_width = $pointer_width) | |
} | |
}; | |
} | |
macro_rules! target_env { | |
($env:expr) => { | |
if cfg!(test) && ::std::env::var("_CLANG_SYS_TEST").is_ok() { | |
let var = ::std::env::var("_CLANG_SYS_TEST_ENV"); | |
var.map_or(false, |v| v == $env) | |
} else { | |
cfg!(target_env = $env) | |
} | |
}; | |
} |