Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 917599

Summary: www-client/firefox-119.0.1[system-icu] with dev-libs/icu-74.1 fails to compile
Product: Gentoo Linux Reporter: Nick Wallingford <nick>
Component: Current packagesAssignee: Mozilla Gentoo Team <mozilla>
Status: RESOLVED FIXED    
Severity: normal CC: contyk, dennis.lissov, gabriel, ionen, julien.dlq, kocelfc, lo48576, Lolo.Gentoo, marduk, panard, peeweep, perfect007gentleman, sam, xavier.miller
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
See Also: https://bugzilla.mozilla.org/show_bug.cgi?id=1862601
https://bugs.gentoo.org/show_bug.cgi?id=917700
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 917634    
Attachments: build log

Description Nick Wallingford 2023-11-19 20:49:08 UTC
Created attachment 875221 [details]
build log

upstream bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1862601

upstream patch: https://hg.mozilla.org/try/rev/d5f3b0c4f08a426ce00a153c04e177eecb6820e2

the patch breaks firefox with USE=-system-icu or with <dev-libs/icu-74. I dunno if there's a way to conditionally apply a patch in an ebuild depending on USE flags or system library version.
Comment 1 Eli Schwartz gentoo-dev 2023-11-19 22:37:13 UTC
It goes together with https://hg.mozilla.org/try/rev/d02fa923ef2f612bb70c76ee2d920bd8a3d2bc76

"Bump minimum required ICU version to 74.1"

There's a whole bunch of ICU-related patches here.
Comment 2 Ionen Wolkens gentoo-dev 2023-11-20 04:12:33 UTC
(In reply to Nick Wallingford from comment #0)
> the patch breaks firefox with USE=-system-icu or with <dev-libs/icu-74. I
> dunno if there's a way to conditionally apply a patch in an ebuild depending
> on USE flags or system library version.
Can be done with has_version. That's (normally) something to avoid because it's like automagic, but is fine when binding operators are being used.
Comment 3 tt_1 2023-11-20 07:41:53 UTC
same for firefox-115esr: 

9143016-17:09.21 In file included from Unified_cpp_intl_lwbrk0.cpp:2:
9143078-17:09.21 /var/tmp/portage/www-client/firefox-115.4.0/work/firefox-115.4.0/intl/lwbrk/LineBreaker.cpp: In function 'int8_t GetClass(uint32_t, mozilla::intl::LineBreakRule, bool)':
9143257:17:09.21 /var/tmp/portage/www-client/firefox-115.4.0/work/firefox-115.4.0/intl/lwbrk/LineBreaker.cpp:439:28: error: static assertion failed: Gecko vs ICU LineBreak class mismatch
9143436-17:09.21   439 |   static_assert(U_LB_COUNT == mozilla::ArrayLength(sUnicodeLineBreakToClass),
9143531-17:09.21       |                 ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Comment 4 peter@prh.myzen.co.uk 2023-11-20 16:13:28 UTC
Same here. dev-qt/qtwebengine-6.6.0 and app-office/libreoffice-7.5.6.2 also fail. 
dev-libs/icu-73.2 does not cause this failure.
Comment 5 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2023-11-20 16:15:59 UTC
(In reply to peter@prh.myzen.co.uk from comment #4)
> Same here. dev-qt/qtwebengine-6.6.0 and app-office/libreoffice-7.5.6.2 also
> fail. 

Both are already fixed.
Comment 6 Larry the Git Cow gentoo-dev 2023-11-20 18:34:34 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d9712b1358dc1b64933c3090d72153aae3270f25

commit d9712b1358dc1b64933c3090d72153aae3270f25
Author:     Sam James <sam@gentoo.org>
AuthorDate: 2023-11-20 18:33:37 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2023-11-20 18:33:43 +0000

    www-client/firefox: fix compat w/ icu-74
    
    Closes: https://bugs.gentoo.org/917599
    Signed-off-by: Sam James <sam@gentoo.org>

 .../firefox/files/firefox-115.4.0-icu-74.patch     | 41 ++++++++++++++++++++++
 www-client/firefox/firefox-115.4.0.ebuild          |  5 +++
 www-client/firefox/firefox-119.0.1.ebuild          |  5 +++
 3 files changed, 51 insertions(+)