[Bug 270782] www/firefox: 112 fails to build on i386

From: <bugzilla-noreply_at_freebsd.org>
Date: Wed, 12 Apr 2023 09:18:41 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=270782

            Bug ID: 270782
           Summary: www/firefox: 112 fails to build on i386
           Product: Ports & Packages
           Version: Latest
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: Individual Port(s)
          Assignee: gecko@FreeBSD.org
          Reporter: zirias@freebsd.org
             Flags: maintainer-feedback?(gecko@FreeBSD.org)
          Assignee: gecko@FreeBSD.org

Created attachment 241430
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=241430&action=edit
Workaround: force-disable SSE on i386

Building on i386 fails with these errors:

---
In file included from Unified_cpp_dom_base10.cpp:74:
In file included from
/wrkdirs/usr/ports/www/firefox/work/firefox-112.0/dom/base/nsTextFragment.cpp:162:
/wrkdirs/usr/ports/www/firefox/work/firefox-112.0/dom/base/nsTextFragmentGeneric.h:16:48:
error: implicit instantiation of undefined
 template 'xsimd::batch<short, xsimd::sse2>'
  const uint32_t numUnicharsPerVector = xsimd::batch<int16_t, Arch>::size;
                                               ^
/wrkdirs/usr/ports/www/firefox/work/firefox-112.0/dom/base/nsTextFragment.cpp:183:21:
note: in instantiation of function template sp
ecialization 'mozilla::FirstNon8Bit<xsimd::sse2>' requested here
    return mozilla::FirstNon8Bit<xsimd::sse2>(str, end);
                    ^
/wrkdirs/usr/ports/www/firefox/work/firefox-112.0/third_party/xsimd/include/xsimd/arch/xsimd_scalar.hpp:30:11:
note: template is dec
lared here
    class batch;
          ^
In file included from Unified_cpp_dom_base10.cpp:74:
In file included from
/wrkdirs/usr/ports/www/firefox/work/firefox-112.0/dom/base/nsTextFragment.cpp:162:
/wrkdirs/usr/ports/www/firefox/work/firefox-112.0/dom/base/nsTextFragmentGeneric.h:35:31:
error: implicit instantiation of undefined
 template 'xsimd::batch<short, xsimd::sse2>'
  xsimd::batch<int16_t, Arch> vectmask(static_cast<int16_t>(shortMask));
                              ^
/wrkdirs/usr/ports/www/firefox/work/firefox-112.0/third_party/xsimd/include/xsimd/arch/xsimd_scalar.hpp:30:11:
note: template is dec
lared here
    class batch;
          ^
3 errors generated.
---

I'm also attaching a workaround that allowed me to get past this, but it just
force-disables any SSE* usage on i386, so that's probably not the best
approach.

-- 
You are receiving this mail because:
You are the assignee for the bug.