Created attachment 589300 [details] build.log from the build log: >>> Configuring source in /usr/armv7a-unknown-linux-gnueabihf/tmp/portage/www-client/firefox-60.9.0/work/firefox-60.9.0 ... * TERM is set to: "xterm-256color" * strip-flags: CFLAGS: changed '-pipe -fomit-frame-pointer' to '-pipe' * strip-flags: CXXFLAGS: changed '-pipe -fomit-frame-pointer' to '-pipe' * ERROR: www-client/firefox-60.9.0::gentoo failed (configure phase): * USE Flag 'lto' not in IUSE for www-client/firefox-60.9.0 * * Call stack: * ebuild.sh, line 125: Called src_configure * environment, line 5174: Called mozconfig_init * environment, line 3565: Called use 'lto' * phase-helpers.sh, line 247: Called die * The specific snippet of code: * die "USE Flag '${u}' not in IUSE for ${CATEGORY}/${PF}" * I think it's an undesired side effect of this fix: https://github.com/gentoo/gentoo/commit/9cc1ad54ffea7d8f0f4b94eede6dc3e182f1b152 Possible better approach is to revert the changes to mozcoreconf-v6, bump the eclass to mozcoreconf-v7 and bump all the post firefox-60.x ebuilds to the new eclass.
Created attachment 589302 [details] output from emerge --info
yeah, I knew it's not a good idea to check useflag in a eclass which is defined in a ebuild.
There are two options: revert #692500 in mozcoreconf-v6, add a copy called mozcoreconf-v7 and backport the reverted fix. Then change eclass for >=firefox-68 and >=thunderbird-68 to mozcoreconf-v7 ignore and wait for six weeks, or whenever the old esr gets tree cleaned. if you choose the latter, please close the bug.
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/proj/mozilla.git/commit/?id=4694c68a6b60520d02af98fc1fced6dfc642ee93 commit 4694c68a6b60520d02af98fc1fced6dfc642ee93 Author: Jory Pratt <anarchy@gentoo.org> AuthorDate: 2019-09-10 16:06:47 +0000 Commit: Jory Pratt <anarchy@gentoo.org> CommitDate: 2019-09-10 16:06:47 +0000 www-client/firefox: fix lto builds Closes: https://bugs.gentoo.org/689358 Closes: https://bugs.gentoo.org/693654 Package-Manager: Portage-2.3.75, Repoman-2.3.17 Signed-off-by: Jory Pratt <anarchy@gentoo.org> .../firefox/files/firefox-69.0-lto-gcc-fix.patch | 26 ++++++++++++++++++++++ ...{firefox-69.0.ebuild => firefox-69.0-r1.ebuild} | 6 ++--- 2 files changed, 28 insertions(+), 4 deletions(-)
From 060e22f07d78978e8e856626a912d1dda3c2f796 Mon Sep 17 00:00:00 2001 From: Jory Pratt <anarchy@gentoo.org> Date: Sat, 14 Sep 2019 15:55:35 -0500 Subject: [PATCH] eclass/mozcoreconf-v6: revert lto hack for ppc/arm Signed-off-by: Jory Pratt <anarchy@gentoo.org> --- eclass/mozcoreconf-v6.eclass | 40 ++++++++---------------------------- 1 file changed, 9 insertions(+), 31 deletions(-) Sorry the overlay had the fix originally, I wanted this on main tree tho and not in overlay.
this fixes the old esr, but breaks =firefox-68.1.0 again: 0:12.36 checking for remove... no 0:12.39 checking for remove in -lposix... no 0:12.42 checking for shmat... no 0:12.45 checking for shmat in -lipc... no 0:12.47 checking for IceConnectionNumber in -lICE... no 0:12.50 configure: error: compiler is incompatible with sanitize options 0:12.51 DEBUG: <truncated - see config.log for full output> 0:12.51 DEBUG: /* Override any gcc2 internal prototype to avoid an error. */ 0:12.51 DEBUG: /* We use char because int might match the return type of a gcc2 0:12.51 DEBUG: builtin and then its argument prototype would still apply. */ 0:12.51 DEBUG: char IceConnectionNumber(); 0:12.51 DEBUG: 0:12.51 DEBUG: int main() { 0:12.51 DEBUG: IceConnectionNumber() 0:12.51 DEBUG: ; return 0; } 0:12.51 DEBUG: configure:4123: /usr/bin/armv7a-unknown-linux-gnueabihf-gcc -std=gnu99 -o conftest -pipe -mthumb -mno-thumb-interwork -mfpu=neon -mfloat-abi=hard -Wl,-O1 -Wl,--as-needed -Wl,--no-keep-memory -Wl,--reduce-memory-overheads -Wl,-rpath=/usr/lib/firefox,--enable-new-dtags -Wl,--compress-debug-sections=zlib -fuse-ld=gold -mthumb conftest.c 1>&5 0:12.51 DEBUG: /usr/libexec/gcc/armv7a-unknown-linux-gnueabihf/ld.gold: --reduce-memory-overheads: unknown option 0:12.51 DEBUG: /usr/libexec/gcc/armv7a-unknown-linux-gnueabihf/ld.gold: use the --help option for usage information 0:12.51 DEBUG: collect2: error: ld returned 1 exit status 0:12.51 DEBUG: configure: failed program was: 0:12.51 DEBUG: #line 4116 "configure" 0:12.51 DEBUG: #include "confdefs.h" 0:12.51 DEBUG: 0:12.51 DEBUG: int main() { 0:12.51 DEBUG: 0:12.51 DEBUG: ; return 0; } 0:12.51 DEBUG: configure: error: compiler is incompatible with sanitize options 0:12.51 ERROR: old-configure failed 0:12.61 *** Fix above errors and then restart with\ 0:12.61 "./mach build" 0:12.61 gmake: *** [client.mk:115: configure] Error 1 the cleanest solution would be to bump the eclass, readd the fix from #692500, and to include the fixed only in new 68.x-esr, keeping the old eclass for old esr.