From 3c5c3d54011181e0a398af448f3cb1d667887a10 Mon Sep 17 00:00:00 2001 From: Dennis Duda Date: Thu, 4 Jan 2024 19:09:17 +0100 Subject: [PATCH] Relax the build target checks for gnu and gnullvm targets as well --- crates/targets/aarch64_gnullvm/build.rs | 5 ++++- crates/targets/i686_gnu/build.rs | 6 ++++-- crates/targets/x86_64_gnu/build.rs | 5 ++++- crates/targets/x86_64_gnullvm/build.rs | 5 ++++- 4 files changed, 16 insertions(+), 5 deletions(-) diff --git a/crates/targets/aarch64_gnullvm/build.rs b/crates/targets/aarch64_gnullvm/build.rs index 8c8f98f5ec7..f6ba3ec3ffb 100644 --- a/crates/targets/aarch64_gnullvm/build.rs +++ b/crates/targets/aarch64_gnullvm/build.rs @@ -1,6 +1,9 @@ fn main() { + let family = std::env::var("CARGO_CFG_TARGET_FAMILY").unwrap(); + let arch = std::env::var("CARGO_CFG_TARGET_ARCH").unwrap(); + let env = std::env::var("CARGO_CFG_TARGET_ENV").unwrap(); let target = std::env::var("TARGET").unwrap(); - if target != "aarch64-pc-windows-gnullvm" { + if family != "windows" || arch != "aarch64" || env != "gnu" || !target.ends_with("-gnullvm") { return; } diff --git a/crates/targets/i686_gnu/build.rs b/crates/targets/i686_gnu/build.rs index 9dbe7e54063..d10600d9d71 100644 --- a/crates/targets/i686_gnu/build.rs +++ b/crates/targets/i686_gnu/build.rs @@ -1,6 +1,8 @@ fn main() { - let target = std::env::var("TARGET").unwrap(); - if target != "i686-pc-windows-gnu" && target != "i686-uwp-windows-gnu" { + let family = std::env::var("CARGO_CFG_TARGET_FAMILY").unwrap(); + let arch = std::env::var("CARGO_CFG_TARGET_ARCH").unwrap(); + let env = std::env::var("CARGO_CFG_TARGET_ENV").unwrap(); + if family != "windows" || arch != "x86" || env != "gnu" { return; } diff --git a/crates/targets/x86_64_gnu/build.rs b/crates/targets/x86_64_gnu/build.rs index 7612e7935d5..ea4f74aa4d8 100644 --- a/crates/targets/x86_64_gnu/build.rs +++ b/crates/targets/x86_64_gnu/build.rs @@ -1,6 +1,9 @@ fn main() { + let family = std::env::var("CARGO_CFG_TARGET_FAMILY").unwrap(); + let arch = std::env::var("CARGO_CFG_TARGET_ARCH").unwrap(); + let env = std::env::var("CARGO_CFG_TARGET_ENV").unwrap(); let target = std::env::var("TARGET").unwrap(); - if target != "x86_64-pc-windows-gnu" && target != "x86_64-uwp-windows-gnu" { + if family != "windows" || arch != "x86_64" || env != "gnu" || !target.ends_with("-gnu") { return; } diff --git a/crates/targets/x86_64_gnullvm/build.rs b/crates/targets/x86_64_gnullvm/build.rs index ea83354fad3..30cb57bc557 100644 --- a/crates/targets/x86_64_gnullvm/build.rs +++ b/crates/targets/x86_64_gnullvm/build.rs @@ -1,6 +1,9 @@ fn main() { + let family = std::env::var("CARGO_CFG_TARGET_FAMILY").unwrap(); + let arch = std::env::var("CARGO_CFG_TARGET_ARCH").unwrap(); + let env = std::env::var("CARGO_CFG_TARGET_ENV").unwrap(); let target = std::env::var("TARGET").unwrap(); - if target != "x86_64-pc-windows-gnullvm" { + if family != "windows" || arch != "x86_64" || env != "gnullvm" || !target.ends_with("-gnullvm") { return; }