From b7f6e0701703f1efbedf5f92a02eed7c3aa7bbe9 Mon Sep 17 00:00:00 2001 From: Evgeniy Khramtsov Date: Fri, 1 Oct 2021 01:34:51 +0300 Subject: www/firefox: unbreak build with devel/llvm13 (lacks patch-D77776) Restore patch-bug1628567 to unbreak glslopt crate build due to cc crate passing Rust target "x86_64-unknown-freebsd" without OS version to clang++: [glslopt 0.1.9] cargo:warning=/wrkdirs/usr/ports/www/firefox/work/.build/ ist/system_wrappers/new:3:15: fatal error: 'new' file not found [glslopt 0.1.9] cargo:warning=#include_next PR: 258837 (cherry picked from commit dcc587e70268eb898aecad53ab9d08ea50e0bbab) --- www/firefox/files/patch-bug1628567 | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 www/firefox/files/patch-bug1628567 diff --git a/www/firefox/files/patch-bug1628567 b/www/firefox/files/patch-bug1628567 new file mode 100644 index 000000000000..32b0dc260d22 --- /dev/null +++ b/www/firefox/files/patch-bug1628567 @@ -0,0 +1,32 @@ +Don't pass --target when CC/CXX contains clang + +diff --git third_party/rust/cc/src/lib.rs third_party/rust/cc/src/lib.rs +index 9d133a0..273e520 100644 +--- third_party/rust/cc/src/lib.rs ++++ third_party/rust/cc/src/lib.rs +@@ -2667,24 +2667,7 @@ impl Tool { + } + + fn with_features(path: PathBuf, clang_driver: Option<&str>, cuda: bool) -> Self { +- // Try to detect family of the tool from its name, falling back to Gnu. +- let family = if let Some(fname) = path.file_name().and_then(|p| p.to_str()) { +- if fname.contains("clang-cl") { +- ToolFamily::Msvc { clang_cl: true } +- } else if fname.ends_with("cl") || fname == "cl.exe" { +- ToolFamily::Msvc { clang_cl: false } +- } else if fname.contains("clang") { +- match clang_driver { +- Some("cl") => ToolFamily::Msvc { clang_cl: true }, +- _ => ToolFamily::Clang, +- } +- } else { +- ToolFamily::Gnu +- } +- } else { +- ToolFamily::Gnu +- }; +- ++ let family = ToolFamily::Gnu; + Tool { + path: path, + cc_wrapper_path: None, -- cgit v1.2.3