Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 2 Oct 2021 00:11:01 GMT
From:      Jan Beich <jbeich@FreeBSD.org>
To:        ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org
Subject:   git: dcc587e70268 - main - www/firefox: unbreak build with devel/llvm13 (lacks patch-D77776)
Message-ID:  <202110020011.1920B1na088164@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch main has been updated by jbeich:

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

commit dcc587e70268eb898aecad53ab9d08ea50e0bbab
Author:     Evgeniy Khramtsov <evgeniy@khramtsov.org>
AuthorDate: 2021-09-30 22:34:51 +0000
Commit:     Jan Beich <jbeich@FreeBSD.org>
CommitDate: 2021-10-02 00:10:14 +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
---
 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,



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202110020011.1920B1na088164>