+++ This bug was initially created as a clone of Bug #1443938 +++ Description of problem: Firefox 53 fails to build on second arches (ppc/arm). --- Additional comment from Michel Normand on 2017-05-04 03:45:42 EDT --- * extract of build log is reporting a missing def of RegTypeName https://kojipkgs.fedoraproject.org//work/tasks/1157/19231157/build.log * as per upstream query this is defined in Architecture-shared.h that should be included via Architecture-none.h assuming JS_CODEGEN_NONE is defined. https://dxr.mozilla.org/mozilla-central/source/js/src/jit/none/Architecture-none.h#14 * BUT in unpacked source on fedora this include is not present. * Suggestion is to add the two patches identified below from upstream. === build.log extract: /builddir/build/BUILD/firefox-53.0/firefox-53.0/js/src/jit/Registers.h:91:22: error: 'RegTypeName' does not name a type; did you mean 'typename'? static constexpr RegTypeName DefaultType = RegTypeName::GPR; ^~~~~~~~~~~ typename === https://hg.mozilla.org/mozilla-central/rev/2c924fb664c1 https://hg.mozilla.org/mozilla-central/rev/97c45b13a165 === --- Additional comment from Michel Normand on 2017-05-04 05:10:42 EDT --- Note that even if correction of this include, then next failure is a rust related error as per scratchbuild (also for x86_64) https://kojipkgs.fedoraproject.org//work/tasks/3829/19393829/build.log === ... Running `/usr/bin/rustc --crate-name mp4parse_gtest /builddir/build/BUILD/firefox-53.0/firefox-53.0/dom/media/gtest/hello.rs --crate-type lib --emit=dep-info,link -C opt-level=2 -C panic=abort -C codegen-units=1 -C debuginfo=2 -C metadata=29cb3f043171d892 -C extra-filename=-29cb3f043171d892 --out-dir /builddir/build/BUILD/firefox-53.0/firefox-53.0/objdir/toolkit/library/gtest/rust/./x86_64-unknown-linux-gnu/release/deps --target x86_64-unknown-linux-gnu -L dependency=/builddir/build/BUILD/firefox-53.0/firefox-53.0/objdir/toolkit/library/gtest/rust/./x86_64-unknown-linux-gnu/release/deps -L dependency=/builddir/build/BUILD/firefox-53.0/firefox-53.0/objdir/toolkit/library/gtest/rust/./release/deps` error[E0463]: can't find crate for `cheddar` --> /builddir/build/BUILD/firefox-53.0/firefox-53.0/media/libstagefright/binding/mp4parse_capi/build.rs:1:1 | 1 | extern crate cheddar; | ^^^^^^^^^^^^^^^^^^^^^ can't find crate error: aborting due to previous error Build failed, waiting for other jobs to finish... error: Could not compile `mp4parse_capi`. === --- Additional comment from Dan Horák on 2017-05-04 05:12:14 EDT --- the changelog contains * Tue Apr 18 2017 Martin Stransky <stransky> - 53.0-1 - Updated to 53.0 (B6) so probably it's not the GA tarball (if B6 means Beta6), where these fixes would be included. If I see correctly in upstream mercurial repo, then these fixes landed 5 days after creating the FIREFOX_AURORA_53_BASE tag. --- Additional comment from Michel Normand on 2017-05-04 06:05:49 EDT --- Hello Martin is it feasible to keep firefox 52 in f26, as long as 53 do not build ? this would avoid some openQA tests to fail because of missing firefox at install time. --- Additional comment from Martin Stransky on 2017-05-05 03:15:24 EDT --- (In reply to Michel Normand from comment #4) > Hello Martin > is it feasible to keep firefox 52 in f26, as long as 53 do not build ? this > would avoid some openQA tests to fail because of missing firefox at install > time. I don't know how to do that - the builds are already in koji and updates I expect. Can rel-eng do it? --- Additional comment from Martin Stransky on 2017-05-05 03:16:21 EDT --- (In reply to Dan Horák from comment #3) > the changelog contains > > * Tue Apr 18 2017 Martin Stransky <stransky> - 53.0-1 > - Updated to 53.0 (B6) > > so probably it's not the GA tarball (if B6 means Beta6), where these fixes > would be included. If I see correctly in upstream mercurial repo, then these > fixes landed 5 days after creating the FIREFOX_AURORA_53_BASE tag. B6 means Build6 as you see them on http://archive.mozilla.org/pub/firefox/candidates/53.0-candidates/ --- Additional comment from Paul Whalen on 2017-05-05 14:32:50 EDT --- Proposing as a blocker for F26 Beta, firefox is the default browser on XFCE which is the release blocking desktop image on arm. --- Additional comment from Martin Stransky on 2017-05-10 08:21:13 EDT --- (In reply to Michel Normand from comment #2) > Note that even if correction of this include, then next failure > is a rust related error as per scratchbuild (also for x86_64) > https://kojipkgs.fedoraproject.org//work/tasks/3829/19393829/build.log > === > ... > Running `/usr/bin/rustc --crate-name mp4parse_gtest > /builddir/build/BUILD/firefox-53.0/firefox-53.0/dom/media/gtest/hello.rs > --crate-type lib --emit=dep-info,link -C opt-level=2 -C panic=abort -C > codegen-units=1 -C debuginfo=2 -C metadata=29cb3f043171d892 -C > extra-filename=-29cb3f043171d892 --out-dir > /builddir/build/BUILD/firefox-53.0/firefox-53.0/objdir/toolkit/library/gtest/ > rust/./x86_64-unknown-linux-gnu/release/deps --target > x86_64-unknown-linux-gnu -L > dependency=/builddir/build/BUILD/firefox-53.0/firefox-53.0/objdir/toolkit/ > library/gtest/rust/./x86_64-unknown-linux-gnu/release/deps -L > dependency=/builddir/build/BUILD/firefox-53.0/firefox-53.0/objdir/toolkit/ > library/gtest/rust/./release/deps` > error[E0463]: can't find crate for `cheddar` > --> > /builddir/build/BUILD/firefox-53.0/firefox-53.0/media/libstagefright/binding/ > mp4parse_capi/build.rs:1:1 > | > 1 | extern crate cheddar; > | ^^^^^^^^^^^^^^^^^^^^^ can't find crate > error: aborting due to previous error > Build failed, waiting for other jobs to finish... > error: Could not compile `mp4parse_capi`. > === AFAIK we don't support Rust on arm now. Should work with disabled Rust, which I'm building now. --- Additional comment from Martin Stransky on 2017-05-11 14:48:44 EDT --- Arm builds are fixed now. --- Additional comment from Martin Stransky on 2017-05-11 14:55:53 EDT --- firefox-53.0.2-3.fc26 is built for ARM. Looks like we still have problems with F24/25 which will be fixed later. --- Additional comment from Mike Ruckman on 2017-05-12 17:17:40 EDT --- Discussed in the 2017-05-02 Blocker Review meeting [0]. This is rejected in favour of the alternative proposal #1448923 , which more precisely reflects the actual criteria violation. There was a long discussion on it during the meeting [1] as well as a mailing list discussion [2] to explain the rationale. [0] Sorry for the late update on this. [1] https://meetbot.fedoraproject.org/fedora-blocker-review/2017-05-08/f26-blocker-review.2017-05-08-16.00.log.html [2] https://lists.fedoraproject.org/archives/list/test@lists.fedoraproject.org/thread/NNKH7V7S6XV673EG5YBQCG2MBO6LCUKP/ --- Additional comment from Martin Stransky on 2017-05-15 02:43:08 EDT --- Let's mark this as Arm build failures and target ppc/s390/aarch64 in different bugs. Michael, thanks for the patches in comment 1 - that really helped. Right now I work on F25/24 build failures, F26/rawhide seems to be fine.
ppc64le failure (https://koji.fedoraproject.org/koji/taskinfo?taskID=19586121) ... /usr/bin/g++ -std=gnu++11 -o Unified_cpp_js_src12.o -c -I/builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/objdir/dist/system_wrappers -include /builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/config/gcc_hidden.h -DNDEBUG=1 -DTRIMMED=1 -DENABLE_SHARED_ARRAY_BUFFER -DEXPORT_JS_API -DJS_HAS_CTYPES '-DDLL_PREFIX="lib"' '-DDLL_SUFFIX=".so"' -DMOZ_HAS_MOZGLUE -I/builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/js/src -I/builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/objdir/js/src -I/builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/objdir/dist/include -I/usr/include/nspr4 -fPIC -DMOZILLA_CLIENT -include /builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/objdir/js/src/js-confdefs.h -MD -MP -MF .deps/Unified_cpp_js_src12.o.pp -Wall -Wc++11-compat -Wempty-body -Wignored-qualifiers -Woverloaded-virtual -Wpointer-arith -Wsign-compare -Wtype-limits -Wunreachable-code -Wwrite-strings -Wno-invalid-offsetof -Wc++14-compat -Wc++1z-compat -Wimplicit-fallthrough -Wno-error=maybe-uninitialized -Wno-error=deprecated-declarations -Wno-error=array-bounds -fno-lifetime-dse -O2 -g -pipe -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mcpu=power8 -mtune=power8 -Wformat-security -Wformat -Werror=format-security -fno-delete-null-pointer-checks -fPIC -Wl,-z,relro -Wl,-z,now -fno-rtti -ffunction-sections -fdata-sections -fno-exceptions -fno-math-errno -pthread -pipe -g -g -O2 -fomit-frame-pointer -Wno-shadow -Werror=format /builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/objdir/js/src/Unified_cpp_js_src12.cpp In file included from /builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/objdir/js/src/Unified_cpp_js_src12.cpp:29:0: /builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/js/src/jit/Ion.cpp: In member function 'void js::jit::JitCode::copyFrom(js::jit::MacroAssembler&)': /builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/js/src/jit/Ion.cpp:778:30: error: no matching function for call to 'js::jit::MacroAssembler::executableCopy(uint8_t*&)' masm.executableCopy(code_); ^ In file included from /builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/js/src/jit/MacroAssembler.h:28:0, from /builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/js/src/jit/BaselineJIT.h:18, from /builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/js/src/jit/BaselineIC.h:20, from /builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/js/src/jit/MIR.h:22, from /builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/js/src/jit/AliasAnalysisShared.h:10, from /builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/js/src/jit/FlowAliasAnalysis.h:10, from /builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/js/src/jit/FlowAliasAnalysis.cpp:7, from /builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/objdir/js/src/Unified_cpp_js_src12.cpp:2: /builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/js/src/jit/none/MacroAssembler-none.h:199:10: note: candidate: void js::jit::MacroAssemblerNone::executableCopy(void*, bool) void executableCopy(void*, bool) { MOZ_CRASH(); } ^~~~~~~~~~~~~~ /builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/js/src/jit/none/MacroAssembler-none.h:199:10: note: candidate expects 2 arguments, 1 provided In file included from /builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/js/src/jsapi.h:18:0, from /builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/js/src/builtin/SIMD.h:10, from /builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/js/src/jit/MIR.h:20, from /builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/js/src/jit/AliasAnalysisShared.h:10, from /builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/js/src/jit/FlowAliasAnalysis.h:10, from /builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/js/src/jit/FlowAliasAnalysis.cpp:7, from /builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/objdir/js/src/Unified_cpp_js_src12.cpp:2:
ppc64 (and s390x) fails due lack of big endian support in the skia gpu library, skia has been made mandatory in FF 53 (https://koji.fedoraproject.org/koji/taskinfo?taskID=19586123) ... /usr/bin/g++ -std=gnu++11 -o SkiaGLGlue.o -c -I/builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/objdir/dist/stl_wrappers -I/builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/objdir/dist/system_wrappers -include /builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/config/gcc_hidden.h -DNDEBUG=1 -DTRIMMED=1 -DOS_POSIX=1 -DOS_LINUX=1 -DSTATIC_EXPORTABLE_JS_API -DMOZ_HAS_MOZGLUE -DMOZILLA_INTERNAL_API -DIMPL_LIBXUL -I/builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/gfx/gl -I/builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/objdir/gfx/gl -I/builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/objdir/ipc/ipdl/_ipdlheaders -I/builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/ipc/chromium/src -I/builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/ipc/glue -I/builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/gfx/skia -I/builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/gfx/skia/skia/include/config -I/builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/gfx/skia/skia/include/core -I/builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/gfx/skia/skia/include/gpu -I/builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/gfx/skia/skia/include/utils -I/builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/objdir/dist/include -I/usr/include/nspr4 -I/usr/include/nss3 -fPIC -DMOZILLA_CLIENT -include /builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/objdir/mozilla-config.h -MD -MP -MF .deps/SkiaGLGlue.o.pp -Wall -Wc++11-compat -Wempty-body -Wignored-qualifiers -Woverloaded-virtual -Wpointer-arith -Wsign-compare -Wtype-limits -Wunreachable-code -Wwrite-strings -Wno-invalid-offsetof -Wc++14-compat -Wc++1z-compat -Wimplicit-fallthrough -Wno-error=maybe-uninitialized -Wno-error=deprecated-declarations -Wno-error=array-bounds -fno-lifetime-dse -O2 -g -pipe -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -Wformat-security -Wformat -Werror=format-security -fno-delete-null-pointer-checks -fPIC -Wl,-z,relro -Wl,-z,now -fno-exceptions -fno-strict-aliasing -fno-rtti -ffunction-sections -fdata-sections -fno-exceptions -fno-math-errno -pthread -pipe -g -g -O2 -fomit-frame-pointer -I/builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/objdir/dist/include/cairo -I/builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/widget/gtk/compat-gtk3 -I/usr/include/gtk-3.0 -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/libdrm -I/usr/include/harfbuzz -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/atk-1.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -I/usr/include/gtk-3.0/unix-print -pthread -Wno-error=shadow /builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/gfx/gl/SkiaGLGlue.cpp In file included from /builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/gfx/skia/skia/include/gpu/GrCaps.h:11:0, from /builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/gfx/skia/skia/include/gpu/GrContext.h:11, from /builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/gfx/gl/SkiaGLGlue.cpp:6: /builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/gfx/skia/skia/include/gpu/GrTypes.h:279:6: error: #error "Skia gpu currently assumes little endian" #error "Skia gpu currently assumes little endian" ^~~~~ /builddir/build/BUILD/firefox-53.0.2/firefox-53.0.2/gfx/skia/skia/include/gpu/GrTypes.h:288:6: error: #error "SK_*32_SHIFT values must correspond to GL_BGRA or GL_RGBA format." #error "SK_*32_SHIFT values must correspond to GL_BGRA or GL_RGBA format." ^~~~~
i have done some scratch builds of firefox-53.0.3-1 on ppc64 and ppc64le and s390x. It now builds fine on ppc64 and ppc64le in f26. Please take a look at scratch build. https://koji.fedoraproject.org/koji/taskinfo?taskID=19793541 The s390x build for f27 is still running so i cannot tell if it builds. Martin, i think we can now remove the ExcludeArch ppc64/ppc64le for f26 so that firefox can be built on these platform. Thanks Jan Horak for great work to get firefox built on ppc64/ppc64le/s390x!
scratch build on s390x https://koji.fedoraproject.org/koji/taskinfo?taskID=19793979
firefox-53.0.3-1 also builts fine on s390x.
I have done some basic testings in firefox on ppc64/s390x. It works fine so far. sadly ppc64, ppc64le and s390x are still disable for fedora < 27. %if 0%{?fedora} < 27 ExcludeArch: ppc64le ppc64 s390x %endif We need to drop the ExcludeArch for f26 please. Could you please remove it for next build? Thanks
Should be already in progress in koji now.
it's fixed in firefox-53.0.3-2 https://koji.fedoraproject.org/koji/buildinfo?buildID=899944 Jan, Could you please push it into f26 update? I can take care of it if you don't have time to do that. Thanks Than
firefox-53.0.3-2.fc26 has been submitted as an update to Fedora 26. https://bodhi.fedoraproject.org/updates/FEDORA-2017-dca8cd31a5
firefox-53.0.3-2.fc26 has been pushed to the Fedora 26 testing repository. If problems still persist, please make note of it in this bug report. See https://fedoraproject.org/wiki/QA:Updates_Testing for instructions on how to install test updates. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2017-dca8cd31a5
firefox-53.0.3-2.fc26 has been pushed to the Fedora 26 stable repository. If problems still persist, please make note of it in this bug report.