Bug 1034940 - qt5-qtwebkit 5.2.0-beta1 FTBFS on secondary arches
qt5-qtwebkit 5.2.0-beta1 FTBFS on secondary arches
Status: CLOSED ERRATA
Product: Fedora
Classification: Fedora
Component: qt5-qtwebkit (Show other bugs)
20
Unspecified Unspecified
unspecified Severity unspecified
: ---
: ---
Assigned To: Rex Dieter
Fedora Extras Quality Assurance
AcceptedFreezeException
:
Depends On:
Blocks: ZedoraTracker F20FinalFreezeException F20PPCFinal
  Show dependency treegraph
 
Reported: 2013-11-26 13:04 EST by Dan Horák
Modified: 2013-12-04 11:52 EST (History)
9 users (show)

See Also:
Fixed In Version: qt5-qtscript-5.2.0-0.5.beta1.fc20
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2013-12-04 11:52:38 EST
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)
proposed changes for fedora git (2.53 KB, patch)
2013-11-28 12:57 EST, Dan Horák
no flags Details | Diff

  None (edit)
Description Dan Horák 2013-11-26 13:04:06 EST
qt5-qtwebkit 5.2.0-beta1 fails to build on secondary arches (ppc,s390) with

...
/qt5/QtCore -I. -I../../Source -I../WTF -Iassembler -Ibytecode -Ibytecompiler -Iheap -Idfg -Idebugger -Idisassembler -Iinterpreter -Ijit -Illint -Iparser -Iprofiler -Iruntime -Itools -Iyarr -IAPI -IForwardingHeaders -I/builddir/build/BUILD/qtwebkit-opensource-src-5.2.0-beta1/Source/JavaScriptCore/generated -I../WTF -I../../Source -I/builddir/build/BUILD/qtwebkit-opensource-src-5.2.0-beta1/Source/include -o .obj/llint/LLIntOffsetsExtractor.o llint/LLIntOffsetsExtractor.cpp
In file included from bytecode/ValueRecovery.h:31:0,
                 from bytecode/CodeOrigin.h:31,
                 from bytecode/CodeBlock.h:39,
                 from llint/LLIntOffsetsExtractor.cpp:29:
assembler/MacroAssembler.h:62:2: error: #error "The MacroAssembler is not supported on this platform."
 #error "The MacroAssembler is not supported on this platform."
  ^
In file included from bytecode/ValueRecovery.h:31:0,
                 from bytecode/CodeOrigin.h:31,
                 from bytecode/CodeBlock.h:39,
                 from llint/LLIntOffsetsExtractor.cpp:29:
assembler/MacroAssembler.h:67:50: error: expected class-name before '{' token
 class MacroAssembler : public MacroAssemblerBase {
                                                  ^
assembler/MacroAssembler.h:70:11: error: 'MacroAssemblerBase' has not been declared
     using MacroAssemblerBase::pop;
           ^
...

seems as a similar problem as it was in qt5-qtdeclarative


Version-Release number of selected component (if applicable):
qt5-qtwebkit-5.2.0-0.5.beta1.fc20
Comment 2 Rex Dieter 2013-11-26 14:57:44 EST
need to verify if this was against the latest qt5-qtbase, qt5-qtdeclarative builds from
https://admin.fedoraproject.org/updates/FEDORA-2013-22154

(If not, please update those first)

I'll check the build logs here shortly
Comment 3 Rex Dieter 2013-11-26 14:58:43 EST
confirmed, rats
Comment 4 Dan Horák 2013-11-26 15:31:35 EST
I'll be looking on it tomorrow ...
Comment 5 Dan Horák 2013-11-28 10:12:49 EST
the workaround is

diff --git a/qt5-qtwebkit.spec b/qt5-qtwebkit.spec
index d31caf2..b098191 100644
--- a/qt5-qtwebkit.spec
+++ b/qt5-qtwebkit.spec
@@ -127,7 +127,12 @@ mv Source/ThirdParty/ANGLE/ \
 
 
 %build
-%{_qt5_qmake} %{?system_angle:DEFINES+=USE_SYSTEM_ANGLE=1}
+%{_qt5_qmake} %{?system_angle:DEFINES+=USE_SYSTEM_ANGLE=1} \
+%ifnarch %{arm} %{ix86} x86_64
+       DEFINES+=ENABLE_JIT=0 DEFINES+=ENABLE_YARR_JIT=0
+%else
+       %{nil}
+%endif
 
 make %{?_smp_mflags}
Comment 6 Dan Horák 2013-11-28 10:15:09 EST
hm, not completely, fails a while later with

bytecode/CodeBlock.cpp: In member function 'unsigned int JSC::CodeBlock::numberOfDFGCompiles()':
bytecode/CodeBlock.cpp:2951:50: error: 'replacement' was not declared in this scope
     return (JITCode::isOptimizingJIT(replacement()->getJITType()) ? 1 : 0) + m_reoptimizationRetryCounter;
                                                  ^
Comment 7 Dan Horák 2013-11-28 10:42:38 EST
the code seems to be fixed in Webkit upstream, so qt5 should sync with them ...
Comment 8 Dan Horák 2013-11-28 10:45:55 EST
one more fix ...

diff -up qtwebkit-opensource-src-5.2.0-beta1/Source/JavaScriptCore/bytecode/CodeBlock.cpp.nojit qtwebkit-opensource-src-5.2.0-beta1/Source/JavaScriptCore/bytecode/CodeBlock.cpp
--- qtwebkit-opensource-src-5.2.0-beta1/Source/JavaScriptCore/bytecode/CodeBlock.cpp.nojit	2013-11-28 15:43:39.169409385 -0500
+++ qtwebkit-opensource-src-5.2.0-beta1/Source/JavaScriptCore/bytecode/CodeBlock.cpp	2013-11-28 15:44:17.399410231 -0500
@@ -2947,8 +2947,12 @@ void CodeBlock::countReoptimization()
 
 unsigned CodeBlock::numberOfDFGCompiles()
 {
+#if ENABLE(JIT)
     ASSERT(JITCode::isBaselineCode(getJITType()));
     return (JITCode::isOptimizingJIT(replacement()->getJITType()) ? 1 : 0) + m_reoptimizationRetryCounter;
+#else
+    return 0;
+#endif
 }
Comment 10 Dan Horák 2013-11-28 12:57:24 EST
Created attachment 830338 [details]
proposed changes for fedora git
Comment 11 Fedora Blocker Bugs Application 2013-11-28 13:39:28 EST
Proposed as a Freeze Exception for 20-final by Fedora user sharkcz using the blocker tracking app because:

 qt5-qtwebkit is part of qt5 library stack that was FTBFS on secondary arches for some time.
Comment 12 Rex Dieter 2013-11-29 09:02:09 EST
thanks!  committed, and building now.
Comment 13 Fedora Update System 2013-11-29 13:53:42 EST
qt5-qtscript-5.2.0-0.5.beta1.fc20, qt5-qttools-5.2.0-0.5.beta1.fc20, qt5-qtdeclarative-5.2.0-0.5.beta1.fc20, qt5-qtbase-5.2.0-0.7.beta1.20131108_141.fc20, qt5-qtwebkit-5.2.0-0.6.beta1.fc20 has been submitted as an update for Fedora 20.
https://admin.fedoraproject.org/updates/FEDORA-2013-22154/qt5-qtscript-5.2.0-0.5.beta1.fc20,qt5-qttools-5.2.0-0.5.beta1.fc20,qt5-qtwebkit-5.2.0-0.6.beta1.fc20,qt5-qtdeclarative-5.2.0-0.5.beta1.fc20,qt5-qtbase-5.2.0-0.7.beta1.20131108_141.fc20
Comment 14 Fedora Update System 2013-12-01 12:42:41 EST
Package qt5-qtscript-5.2.0-0.5.beta1.fc20, qt5-qttools-5.2.0-0.5.beta1.fc20, qt5-qtdeclarative-5.2.0-0.5.beta1.fc20, qt5-qtbase-5.2.0-0.7.beta1.20131108_141.fc20, qt5-qtwebkit-5.2.0-0.6.beta1.fc20:
* should fix your issue,
* was pushed to the Fedora 20 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing qt5-qtscript-5.2.0-0.5.beta1.fc20 qt5-qttools-5.2.0-0.5.beta1.fc20 qt5-qtdeclarative-5.2.0-0.5.beta1.fc20 qt5-qtbase-5.2.0-0.7.beta1.20131108_141.fc20 qt5-qtwebkit-5.2.0-0.6.beta1.fc20'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2013-22154/qt5-qtscript-5.2.0-0.5.beta1.fc20,qt5-qttools-5.2.0-0.5.beta1.fc20,qt5-qtwebkit-5.2.0-0.6.beta1.fc20,qt5-qtdeclarative-5.2.0-0.5.beta1.fc20,qt5-qtbase-5.2.0-0.7.beta1.20131108_141.fc20
then log in and leave karma (feedback).
Comment 15 Adam Williamson 2013-12-02 13:47:04 EST
Discussed at 2013-12-02 freeze exception review meeting: http://meetbot.fedoraproject.org/fedora-blocker-review/2013-12-02/f20-blocker-review-%234.2013-12-02-17.02.log.txt . Accepted as a freeze exception issue as a significant bug for secondary arches whose fix is unlikely to break anything important for primary arches.
Comment 16 Fedora Update System 2013-12-04 11:52:38 EST
qt5-qtscript-5.2.0-0.5.beta1.fc20, qt5-qttools-5.2.0-0.5.beta1.fc20, qt5-qtdeclarative-5.2.0-0.5.beta1.fc20, qt5-qtbase-5.2.0-0.7.beta1.20131108_141.fc20, qt5-qtwebkit-5.2.0-0.6.beta1.fc20 has been pushed to the Fedora 20 stable repository.  If problems still persist, please make note of it in this bug report.

Note You need to log in before you can comment on or make changes to this bug.