Sysop: | Amessyroom |
---|---|
Location: | Fayetteville, NC |
Users: | 43 |
Nodes: | 6 (0 / 6) |
Uptime: | 96:12:43 |
Calls: | 290 |
Files: | 904 |
Messages: | 76,426 |
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 01/11/2024 17:50, Michael wrote:
... I understand clang is recommended upstreamOn my system, clang is explicitly disabled,
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
thanks to Firefox and Thunderbird repeatedly failing to compile,
which is apparently a problem with clang and older CPUs.
Any idea why clang was disabled in www-client/firefox-128.4.0:Unless I miss something, I don't see evidence of that in the ebuilds.
[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
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.
On Friday 1 November 2024 14:43:17 GMT Jack Ostroff wrote:Right, and since clang is not set by default in make.conf or your
On 11/1/24 7:15 AM, Michael wrote:
Any idea why clang was disabled in www-client/firefox-128.4.0:
jumbo-build[ebuild U ] www-client/firefox-128.4.0:esr::gentoo [128.3.1:esr::gentoo] USE="X dbus gmp-autoupdate hwaccel
-clang*openh264 system-av1 system- harfbuzz system-icu system-jpeg system-libevent system-libvpx system-webp telemetry wayland
-ach -af-debug -eme-free -gnome-shell -hardened -jack - libproxy -lto -pgo -pulseaudio (-selinux) -sndio -system-png -wifi" L10N="en- GB
-cy -da-an -ar -ast -az -be -bg -bn -br -bs -ca -ca-valencia -cak -cs
-ff -fi --de -dsb -el -en-CA -eo -es-AR -es-CL -es-ES -es-MX -et -eu -fa
-is -itfr -fur -fy -ga -gd -gl -gn -gu -he -hi -hr -hsb -hu -hy -ia -id
-ne -nl-ja - ka -kab -kk -km -kn -ko -lij -lt -lv -mk -mr -ms -my -nb
-sl -son-nn -oc -pa - pl -pt-BR -pt-PT -rm -ro -ru -sc -sco -si -sk -skr
-zh-CN-sq -sr -sv -szl - ta -te -th -tl -tr -trs -uk -ur -uz -vi -xh
-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 theebuilds.
It looks like IUSE has changed from +clang to just clang in thelatest
ebuilds in both slots. Is it possible there is something else inyour
make.conf or packages.* which disables it? Actually, it might bethat
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 sureMy inadequate understanding (from the wiki) is that clang works better
what is
the recommended compiler for FF or why it was changed.
PS. Also I do not understand the meaning of these notations:This just says that the package responds to the use flag "foo"
IUSE="foo"
IUSE="+foo"This also says that the default value of "foo" for this package is on,
IUSE+="foo"The "+=" (similar to use with ENV variables) appends the right hand
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