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.

Reply via email to