Created attachment 425604 [details]
I'm getting the following error when compiling the new thunderbird ebuild from the mozilla overlay on amd64 musl. Musl doesn't seem to have sysctl.h
In file included from [01m[K/var/tmp/portage/mail-client/thunderbird-45.0_beta1/work/thunderbird-45.0b1/mozilla/ipc/chromium/src/third_party/libevent/./arc4random.c:62:0[m[K,
[01m[K/var/tmp/portage/mail-client/thunderbird-45.0_beta1/work/thunderbird-45.0b1/tbird/dist/system_wrappers/sys/sysctl.h:3:29:[m[K [01;31m[Kfatal error: [m[Ksys/sysctl.h: No such file or directory
my useflags are
[ebuild R ~] mail-client/thunderbird-45.0_beta1::mozilla USE="crypt dbus jemalloc3 minimal -bindist -custom-cflags -custom-optimization -debug -ffmpeg -gstreamer -gstreamer-0 -gtk3 (-hardened) -jit -ldap -lightning -mozdom (-neon) -pulseaudio (-selinux) -startup-notification -system-cairo -system-icu -system-jpeg -system-libevent -system-libvpx -system-sqlite" LINGUAS="de -ar -ast -be -bg -bn_BD -br -ca -cs -cy -da -el -en_GB -es_AR -es_ES -et -eu -fi -fr -fy_NL -ga_IE -gd -gl -he -hr -hsb -hu -hy_AM -id -is -it -ja -ko -lt -nb_NO -nl -nn_NO -pa_IN -pl -pt_BR -pt_PT -rm -ro -ru -si -sk -sl -sq -sr -sv_SE -ta_LK -tr -uk -vi -zh_CN -zh_TW" 0 KiB
Created attachment 425606 [details]
output of emerge --info
however thunderbird does compile with USE="system-libevent" instead of using the provided one.
Do you have the same issue with firefox-45 with USE="-system-libevent" ?
Yes, the compile error is exactly the same with firefox-45.0b8 and USE="-system-libevent"
In file included from /var/tmp/portage/www-client/firefox-45.0_beta8/work/firefox-45.0b8/ipc/chromium/src/third_party/libevent/./arc4random.c:62:0,
/var/tmp/portage/www-client/firefox-45.0_beta8/work/firefox-45.0b8/ff/dist/system_wrappers/sys/sysctl.h:3:29: fatal error: sys/sysctl.h: No such file or directory
By the way, this is not the same as #574076 - my system libevent is build with USE="+threads"
dev-libs/libevent-2.0.22-r2::gentoo was built with the following:
USE="ssl threads -debug -libressl -static-libs -test"
(In reply to tt_1 from comment #4)
> By the way, this is not the same as #574076 - my system libevent is build
> with USE="+threads"
> dev-libs/libevent-2.0.22-r2::gentoo was built with the following:
> USE="ssl threads -debug -libressl -static-libs -test"
System libevent has nothing to do with this, which is actually the issue here. Mozilla's build system short-circuits the build of bundled libevent, skipping its configure, and since there's no check for sysctl.h within Mozilla's own configure there's nothing to stop sysctl.h from being #include'd at compile time.
Since hacking the mozilla build system to try and detect the presence of sysctl.h is a rather large job just to allow use of a bundled lib (which is undesirable in the first place) I'll be forcing on the system-libevent use flag in musl profiles for the mozilla packages.
Yeah, forcing the useflag to be enabled for the musl profile seems to be the best solution. Feel free to close this bug if you have done so.
Author: Ian Stakenvicius <email@example.com>
Date: Thu Mar 3 15:10:39 2016 -0500
profiles/hardened/musl - package.use.force system-libevent on mozilla packages