git: b7f6e0701703 - 2021Q3 - www/firefox: unbreak build with devel/llvm13 (lacks patch-D77776)

Jan Beich jbeich at FreeBSD.org
Sat Oct 2 00:13:05 UTC 2021


The branch 2021Q3 has been updated by jbeich:

URL: https://cgit.FreeBSD.org/ports/commit/?id=b7f6e0701703f1efbedf5f92a02eed7c3aa7bbe9

commit b7f6e0701703f1efbedf5f92a02eed7c3aa7bbe9
Author:     Evgeniy Khramtsov <evgeniy at khramtsov.org>
AuthorDate: 2021-09-30 22:34:51 +0000
Commit:     Jan Beich <jbeich at FreeBSD.org>
CommitDate: 2021-10-02 00:12:08 +0000

    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 <new>
    
    PR:             258837
    (cherry picked from commit dcc587e70268eb898aecad53ab9d08ea50e0bbab)
---
 www/firefox/files/patch-bug1628567 | 32 ++++++++++++++++++++++++++++++++
 1 file changed, 32 insertions(+)

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,


More information about the dev-commits-ports-all mailing list