* [gentoo-user] Firefox and clang @ 2024-11-01 11:15 Michael 2024-11-01 14:43 ` [gentoo-user] " Jack Ostroff 0 siblings, 1 reply; 9+ messages in thread From: Michael @ 2024-11-01 11:15 UTC (permalink / raw To: gentoo-user [-- Attachment #1: Type: text/plain, Size: 1033 bytes --] Any idea why clang was disabled in www-client/firefox-128.4.0: [ebuild U ] www-client/firefox-128.4.0:esr::gentoo [128.3.1:esr::gentoo] USE="X dbus gmp-autoupdate hwaccel jumbo-build openh264 system-av1 system- harfbuzz system-icu system-jpeg system-libevent system-libvpx system-webp telemetry wayland -clang* -debug -eme-free -gnome-shell -hardened -jack - libproxy -lto -pgo -pulseaudio (-selinux) -sndio -system-png -wifi" L10N="en- GB -ach -af -an -ar -ast -az -be -bg -bn -br -bs -ca -ca-valencia -cak -cs -cy -da -de -dsb -el -en-CA -eo -es-AR -es-CL -es-ES -es-MX -et -eu -fa -ff -fi - fr -fur -fy -ga -gd -gl -gn -gu -he -hi -hr -hsb -hu -hy -ia -id -is -it -ja - ka -kab -kk -km -kn -ko -lij -lt -lv -mk -mr -ms -my -nb -ne -nl -nn -oc -pa - pl -pt-BR -pt-PT -rm -ro -ru -sc -sco -si -sk -skr -sl -son -sq -sr -sv -szl - ta -te -th -tl -tr -trs -uk -ur -uz -vi -xh -zh-CN -zh-TW" LLVM_SLOT="18 -17 (-19)" 546,124 KiB https://gitweb.gentoo.org/repo/gentoo.git/commit/? id=75c0bdfd0b02568466c14d81aa0027c873a76617 [-- Attachment #2: This is a digitally signed message part. --] [-- Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 9+ messages in thread
* [gentoo-user] Re: Firefox and clang 2024-11-01 11:15 [gentoo-user] Firefox and clang Michael @ 2024-11-01 14:43 ` Jack Ostroff 2024-11-01 16:41 ` Michael 0 siblings, 1 reply; 9+ messages in thread From: Jack Ostroff @ 2024-11-01 14:43 UTC (permalink / raw To: gentoo-user On 11/1/24 7:15 AM, Michael wrote: > Any idea why clang was disabled in www-client/firefox-128.4.0: > > [ebuild U ] www-client/firefox-128.4.0:esr::gentoo [128.3.1:esr::gentoo] > USE="X dbus gmp-autoupdate hwaccel jumbo-build openh264 system-av1 system- > harfbuzz system-icu system-jpeg system-libevent system-libvpx system-webp > telemetry wayland -clang* -debug -eme-free -gnome-shell -hardened -jack - > libproxy -lto -pgo -pulseaudio (-selinux) -sndio -system-png -wifi" L10N="en- > GB -ach -af -an -ar -ast -az -be -bg -bn -br -bs -ca -ca-valencia -cak -cs -cy > -da -de -dsb -el -en-CA -eo -es-AR -es-CL -es-ES -es-MX -et -eu -fa -ff -fi - > fr -fur -fy -ga -gd -gl -gn -gu -he -hi -hr -hsb -hu -hy -ia -id -is -it -ja - > ka -kab -kk -km -kn -ko -lij -lt -lv -mk -mr -ms -my -nb -ne -nl -nn -oc -pa - > pl -pt-BR -pt-PT -rm -ro -ru -sc -sco -si -sk -skr -sl -son -sq -sr -sv -szl - > ta -te -th -tl -tr -trs -uk -ur -uz -vi -xh -zh-CN -zh-TW" LLVM_SLOT="18 -17 > (-19)" 546,124 KiB > > https://gitweb.gentoo.org/repo/gentoo.git/commit/? > id=75c0bdfd0b02568466c14d81aa0027c873a76617 Unless I miss something, I don't see evidence of that in the ebuilds. It looks like IUSE has changed from +clang to just clang in the latest ebuilds in both slots. Is it possible there is something else in your make.conf or packages.* which disables it? Actually, it might be that you need to explicitly add clang to packages.use, as not it is still allowed, but does not default to on. ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [gentoo-user] Re: Firefox and clang 2024-11-01 14:43 ` [gentoo-user] " Jack Ostroff @ 2024-11-01 16:41 ` Michael 2024-11-01 17:00 ` Marco Rebhan 2024-11-01 18:05 ` Jack 0 siblings, 2 replies; 9+ messages in thread From: Michael @ 2024-11-01 16:41 UTC (permalink / raw To: gentoo-user [-- Attachment #1: Type: text/plain, Size: 1963 bytes --] On Friday 1 November 2024 14:43:17 GMT Jack Ostroff wrote: > On 11/1/24 7:15 AM, Michael wrote: > > Any idea why clang was disabled in www-client/firefox-128.4.0: > > > > [ebuild U ] www-client/firefox-128.4.0:esr::gentoo > > [128.3.1:esr::gentoo] USE="X dbus gmp-autoupdate hwaccel jumbo-build > > openh264 system-av1 system- harfbuzz system-icu system-jpeg > > system-libevent system-libvpx system-webp telemetry wayland -clang* > > -debug -eme-free -gnome-shell -hardened -jack - libproxy -lto -pgo > > -pulseaudio (-selinux) -sndio -system-png -wifi" L10N="en- GB -ach -af > > -an -ar -ast -az -be -bg -bn -br -bs -ca -ca-valencia -cak -cs -cy -da > > -de -dsb -el -en-CA -eo -es-AR -es-CL -es-ES -es-MX -et -eu -fa -ff -fi - > > fr -fur -fy -ga -gd -gl -gn -gu -he -hi -hr -hsb -hu -hy -ia -id -is -it > > -ja - ka -kab -kk -km -kn -ko -lij -lt -lv -mk -mr -ms -my -nb -ne -nl > > -nn -oc -pa - pl -pt-BR -pt-PT -rm -ro -ru -sc -sco -si -sk -skr -sl -son > > -sq -sr -sv -szl - ta -te -th -tl -tr -trs -uk -ur -uz -vi -xh -zh-CN > > -zh-TW" LLVM_SLOT="18 -17 (-19)" 546,124 KiB > > > > https://gitweb.gentoo.org/repo/gentoo.git/commit/? > > id=75c0bdfd0b02568466c14d81aa0027c873a76617 > > Unless I miss something, I don't see evidence of that in the ebuilds. > It looks like IUSE has changed from +clang to just clang in the latest > ebuilds in both slots. Is it possible there is something else in your > make.conf or packages.* which disables it? Actually, it might be that > you need to explicitly add clang to packages.use, as not it is still > allowed, but does not default to on. I've checked and I have no bespoke directives for USE="clang". Emerge will use whatever is the default setting for this flag. Without USE="clang" the emerge takes 12-18% longer, but I am not sure what is the recommended compiler for FF or why it was changed. PS. Also I do not understand the meaning of these notations: IUSE="foo" IUSE="+foo" IUSE+="foo" [-- Attachment #2: This is a digitally signed message part. --] [-- Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [gentoo-user] Re: Firefox and clang 2024-11-01 16:41 ` Michael @ 2024-11-01 17:00 ` Marco Rebhan 2024-11-01 17:50 ` Michael 2024-11-01 18:05 ` Jack 1 sibling, 1 reply; 9+ messages in thread From: Marco Rebhan @ 2024-11-01 17:00 UTC (permalink / raw To: gentoo-user [-- Attachment #1: Type: text/plain, Size: 952 bytes --] On Friday, 1 November 2024 17:41:25 CET Michael wrote: > Without USE="clang" the emerge takes 12-18% longer, but I am not sure what > is the recommended compiler for FF or why it was changed. Hi Michael, https://bugs.gentoo.org/941878 seems to be the relevant bug with discussion on why it was changed. > PS. Also I do not understand the meaning of these notations: > > IUSE="foo" Everything outside the quotes is normal bash syntax, the variable contents are interpreted by Portage. This sets the ebuild to have USE flags "foo". (If IUSE was set before this line, it will clear out all the USE flags that were defined before.) > IUSE="+foo" This sets the ebuild to have USE flags "foo", the preceding "+" on the USE flag means it is enabled by default. > IUSE+="foo" This appends to the previous IUSE value. Equivalent to IUSE="${IUSE}foo" (note the missing space, hence why the Firefox ebuild uses IUSE+=" foo" instead). Cheers, Marco [-- Attachment #2: This is a digitally signed message part. --] [-- Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [gentoo-user] Re: Firefox and clang 2024-11-01 17:00 ` Marco Rebhan @ 2024-11-01 17:50 ` Michael 2024-11-01 18:08 ` Jack 2024-11-04 7:27 ` Wols Lists 0 siblings, 2 replies; 9+ messages in thread From: Michael @ 2024-11-01 17:50 UTC (permalink / raw To: gentoo-user [-- Attachment #1: Type: text/plain, Size: 1745 bytes --] On Friday 1 November 2024 17:00:20 GMT Marco Rebhan wrote: > On Friday, 1 November 2024 17:41:25 CET Michael wrote: > > Without USE="clang" the emerge takes 12-18% longer, but I am not sure what > > is the recommended compiler for FF or why it was changed. > > Hi Michael, > > https://bugs.gentoo.org/941878 seems to be the relevant bug with discussion > on why it was changed. Thanks! From what I read briefly, I understand clang is recommended upstream and therefore was set as a default flag. However, a rust Vs rust-bin version clash can occur and since FF patched their code to work with gcc, setting clang as the default compiler is no longer considered necessary - at least this is the present status. I don't know what the runtime performance impact may be of the current clang Vs gcc[1], but compilation times were longer on my systems, loosely comparing FF versions 128.3.1 to 128.4.0. [1] https://stackoverflow.com/questions/3187414/clang-vs-gcc-which-produces-faster-binaries > > PS. Also I do not understand the meaning of these notations: > > > > IUSE="foo" > > Everything outside the quotes is normal bash syntax, the variable contents > are interpreted by Portage. > > This sets the ebuild to have USE flags "foo". (If IUSE was set before this > line, it will clear out all the USE flags that were defined before.) > > > IUSE="+foo" > > This sets the ebuild to have USE flags "foo", the preceding "+" on the USE > flag means it is enabled by default. > > > IUSE+="foo" > > This appends to the previous IUSE value. Equivalent to IUSE="${IUSE}foo" > (note the missing space, hence why the Firefox ebuild uses IUSE+=" foo" > instead). > > Cheers, > Marco Thanks for this clear and succinct explanation! :-) [-- Attachment #2: This is a digitally signed message part. --] [-- Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [gentoo-user] Re: Firefox and clang 2024-11-01 17:50 ` Michael @ 2024-11-01 18:08 ` Jack 2024-11-04 7:27 ` Wols Lists 1 sibling, 0 replies; 9+ messages in thread From: Jack @ 2024-11-01 18:08 UTC (permalink / raw To: gentoo-user I sent my previous reply before seeing this, and I have still not received Marco's message, which explains thing better then I did. On 2024.11.01 13:50, Michael wrote: > On Friday 1 November 2024 17:00:20 GMT Marco Rebhan wrote: > > On Friday, 1 November 2024 17:41:25 CET Michael wrote: > > > Without USE="clang" the emerge takes 12-18% longer, but I am not > sure what > > > is the recommended compiler for FF or why it was changed. > > > > Hi Michael, > > > > https://bugs.gentoo.org/941878 seems to be the relevant bug with > discussion > > on why it was changed. > > Thanks! From what I read briefly, I understand clang is recommended > upstream > and therefore was set as a default flag. However, a rust Vs rust-bin > version > clash can occur and since FF patched their code to work with gcc, > setting > clang as the default compiler is no longer considered necessary - at > least > this is the present status. > > I don't know what the runtime performance impact may be of the > current clang > Vs gcc[1], but compilation times were longer on my systems, loosely > comparing > FF versions 128.3.1 to 128.4.0. > > [1] > https://stackoverflow.com/questions/3187414/clang-vs-gcc-which-produces-faster-binaries > > > > > PS. Also I do not understand the meaning of these notations: > > > > > > IUSE="foo" > > > > Everything outside the quotes is normal bash syntax, the variable > contents > > are interpreted by Portage. > > > > This sets the ebuild to have USE flags "foo". (If IUSE was set > before this > > line, it will clear out all the USE flags that were defined before.) > > > > > IUSE="+foo" > > > > This sets the ebuild to have USE flags "foo", the preceding "+" on > the USE > > flag means it is enabled by default. > > > > > IUSE+="foo" > > > > This appends to the previous IUSE value. Equivalent to > IUSE="${IUSE}foo" > > (note the missing space, hence why the Firefox ebuild uses IUSE+=" > foo" > > instead). > > > > Cheers, > > Marco > > Thanks for this clear and succinct explanation! :-) > ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [gentoo-user] Re: Firefox and clang 2024-11-01 17:50 ` Michael 2024-11-01 18:08 ` Jack @ 2024-11-04 7:27 ` Wols Lists 2024-11-04 15:12 ` Philip Webb 1 sibling, 1 reply; 9+ messages in thread From: Wols Lists @ 2024-11-04 7:27 UTC (permalink / raw To: gentoo-user On 01/11/2024 17:50, Michael wrote: > Thanks! From what I read briefly, I understand clang is recommended upstream > and therefore was set as a default flag. However, a rust Vs rust-bin version > clash can occur and since FF patched their code to work with gcc, setting > clang as the default compiler is no longer considered necessary - at least > this is the present status. On my system, clang is explicitly disabled. This was thanks to Firefox and Thunderbird repeatedly failing to compile, which is apparently a problem with clang and older CPUs. Cheers, Wol ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [gentoo-user] Re: Firefox and clang 2024-11-04 7:27 ` Wols Lists @ 2024-11-04 15:12 ` Philip Webb 0 siblings, 0 replies; 9+ messages in thread From: Philip Webb @ 2024-11-04 15:12 UTC (permalink / raw To: gentoo-user 241104 Wols Lists wrote: > On 01/11/2024 17:50, Michael wrote: >> ... I understand clang is recommended upstream >> and therefore was set as a default flag. >> However, a rust Vs rust-bin version clash can occur >> and since FF patched their code to work with gcc, >> setting clang as the default compiler is no longer considered necessary > On my system, clang is explicitly disabled, > thanks to Firefox and Thunderbird repeatedly failing to compile, > which is apparently a problem with clang and older CPUs. I updated Firefox to 128.4.0 a few days ago & '-clang' was the default, so I left it alone & it took 32 min instead of the previous 26 min ; it's a fast machine. -- ========================,,============================================ SUPPORT ___________//___, Philip Webb ELECTRIC /] [] [] [] [] []| Cities Centre, University of Toronto TRANSIT `-O----------O---' purslowatcadotinterdotnet ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [gentoo-user] Re: Firefox and clang 2024-11-01 16:41 ` Michael 2024-11-01 17:00 ` Marco Rebhan @ 2024-11-01 18:05 ` Jack 1 sibling, 0 replies; 9+ messages in thread From: Jack @ 2024-11-01 18:05 UTC (permalink / raw To: gentoo-user On 2024.11.01 12:41, Michael wrote: > On Friday 1 November 2024 14:43:17 GMT Jack Ostroff wrote: > > On 11/1/24 7:15 AM, Michael wrote: > > > Any idea why clang was disabled in www-client/firefox-128.4.0: > > > > > > [ebuild U ] www-client/firefox-128.4.0:esr::gentoo > > > [128.3.1:esr::gentoo] USE="X dbus gmp-autoupdate hwaccel > jumbo-build > > > openh264 system-av1 system- harfbuzz system-icu system-jpeg > > > system-libevent system-libvpx system-webp telemetry wayland > -clang* > > > -debug -eme-free -gnome-shell -hardened -jack - libproxy -lto -pgo > > > -pulseaudio (-selinux) -sndio -system-png -wifi" L10N="en- GB > -ach -af > > > -an -ar -ast -az -be -bg -bn -br -bs -ca -ca-valencia -cak -cs > -cy -da > > > -de -dsb -el -en-CA -eo -es-AR -es-CL -es-ES -es-MX -et -eu -fa > -ff -fi - > > > fr -fur -fy -ga -gd -gl -gn -gu -he -hi -hr -hsb -hu -hy -ia -id > -is -it > > > -ja - ka -kab -kk -km -kn -ko -lij -lt -lv -mk -mr -ms -my -nb > -ne -nl > > > -nn -oc -pa - pl -pt-BR -pt-PT -rm -ro -ru -sc -sco -si -sk -skr > -sl -son > > > -sq -sr -sv -szl - ta -te -th -tl -tr -trs -uk -ur -uz -vi -xh > -zh-CN > > > -zh-TW" LLVM_SLOT="18 -17 (-19)" 546,124 KiB > > > > > > https://gitweb.gentoo.org/repo/gentoo.git/commit/? > > > id=75c0bdfd0b02568466c14d81aa0027c873a76617 > > > > Unless I miss something, I don't see evidence of that in the > ebuilds. > > It looks like IUSE has changed from +clang to just clang in the > latest > > ebuilds in both slots. Is it possible there is something else in > your > > make.conf or packages.* which disables it? Actually, it might be > that > > you need to explicitly add clang to packages.use, as not it is still > > allowed, but does not default to on. > > I've checked and I have no bespoke directives for USE="clang". > Emerge will > use whatever is the default setting for this flag. Right, and since clang is not set by default in make.conf or your profile, it is not set for firefox, although the IUSE=+clang set it as the default in the prvious ebuild. > > Without USE="clang" the emerge takes 12-18% longer, but I am not sure > what is > the recommended compiler for FF or why it was changed. My inadequate understanding (from the wiki) is that clang works better with firefox's use of rust, compiling faster and giving better performance due to optimizations which don't happen with gcc. Without having read the git logs for the ebuild, I would assume the change is because the relative build and runtime performance using gcc vs. clang has changed. > > PS. Also I do not understand the meaning of these notations: > > IUSE="foo" This just says that the package responds to the use flag "foo" > IUSE="+foo" This also says that the default value of "foo" for this package is on, unless explicitly unset in make.conf or package.use. > IUSE+="foo" The "+=" (similar to use with ENV variables) appends the right hand string to the current value, allowing the full set of IUSE flags to be set over more than one line, where without the "+" a second "IUSE=xxx" line in an ebuild would just completely override a previous line. ^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2024-11-04 15:13 UTC | newest] Thread overview: 9+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2024-11-01 11:15 [gentoo-user] Firefox and clang Michael 2024-11-01 14:43 ` [gentoo-user] " Jack Ostroff 2024-11-01 16:41 ` Michael 2024-11-01 17:00 ` Marco Rebhan 2024-11-01 17:50 ` Michael 2024-11-01 18:08 ` Jack 2024-11-04 7:27 ` Wols Lists 2024-11-04 15:12 ` Philip Webb 2024-11-01 18:05 ` Jack
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox