RESOLVED FIXED 218799
REGRESSION(r269662): [GTK][WPE] Build broken on Ubuntu-18.04 bots
https://bugs.webkit.org/show_bug.cgi?id=218799
Summary REGRESSION(r269662): [GTK][WPE] Build broken on Ubuntu-18.04 bots
Carlos Alberto Lopez Perez
Reported 2020-11-11 06:04:19 PST
After r269662 the build is broken in the bots that currently run in Ubuntu-18.04: https://build.webkit.org/builders/GTK-Linux-64-bit-Release-Ubuntu-LTS-Build https://build.webkit.org/builders/GTK-Linux-64bit-Release-Packaging-Nightly-Ubuntu1804 https://build.webkit.org/builders/WPE-Linux-64bit-Release-Packaging-Nightly-Ubuntu1804 The build failure is: lib/libWebCoreGTK.a(lib/../Source/WebCore/CMakeFiles/WebCore.dir/__/__/DerivedSources/WebCore/unified-sources/UnifiedSource-be65d27a-16.cpp.o):UnifiedSource-be65d27a-16.cpp:function WebCore::Range::compareNode(WebCore::Node&) const: error: undefined reference to 'WebCore::PartialOrdering WebCore::treeOrder<(WebCore::TreeType)0>(WebCore::BoundaryPoint const&, WebCore::BoundaryPoint const&)' lib/libWebCoreGTK.a(lib/../Source/WebCore/CMakeFiles/WebCore.dir/__/__/DerivedSources/WebCore/unified-sources/UnifiedSource-be65d27a-16.cpp.o):UnifiedSource-be65d27a-16.cpp:function WebCore::Range::compareNode(WebCore::Node&) const: error: undefined reference to 'WebCore::PartialOrdering WebCore::treeOrder<(WebCore::TreeType)0>(WebCore::BoundaryPoint const&, WebCore::BoundaryPoint const&)' lib/libWebCoreGTK.a(lib/../Source/WebCore/CMakeFiles/WebCore.dir/__/__/DerivedSources/WebCore/unified-sources/UnifiedSource-be65d27a-16.cpp.o):UnifiedSource-be65d27a-16.cpp:function WebCore::Range::compareBoundaryPoints(unsigned short, WebCore::Range const&) const: error: undefined reference to 'WebCore::PartialOrdering WebCore::treeOrder<(WebCore::TreeType)0>(WebCore::BoundaryPoint const&, WebCore::BoundaryPoint const&)' lib/libWebCoreGTK.a(lib/../Source/WebCore/CMakeFiles/WebCore.dir/__/__/DerivedSources/WebCore/unified-sources/UnifiedSource-be65d27a-16.cpp.o):UnifiedSource-be65d27a-16.cpp:function WebCore::Range::setStart(WTF::Ref<WebCore::Node, WTF::RawPtrTraits<WebCore::Node> >&&, unsigned int): error: undefined reference to 'WebCore::PartialOrdering WebCore::treeOrder<(WebCore::TreeType)0>(WebCore::BoundaryPoint const&, WebCore::BoundaryPoint const&)' collect2: error: ld returned 1 exit status I'm unsure at this point if its a problem with the toolchain or is caused because of a different including ordering due to unified builds.
Attachments
Ryosuke Niwa
Comment 1 2020-11-11 18:53:52 PST
Hm... Maybe we need to explicitly instantiate all variants of treeOrder. Try adding the following lines to BoundaryPoints.cpp? template PartialOrdering treeOrder<Tree>(const BoundaryPoint&, const BoundaryPoint&); template PartialOrdering treeOrder< ShadowIncludingTree >(const BoundaryPoint&, const BoundaryPoint&); template PartialOrdering treeOrder<ComposedTree>(const BoundaryPoint&, const BoundaryPoint&)
Darin Adler
Comment 2 2020-11-11 20:56:54 PST
Yes that should work; this is a non-unified build failure. We might not need all three of those. Just the <Tree> one would fix all the errors above.
Diego Pino
Comment 3 2020-11-11 21:54:47 PST
(In reply to Darin Adler from comment #2) > Yes that should work; this is a non-unified build failure. > > We might not need all three of those. Just the <Tree> one would fix all the > errors above. Right, the patch fixed the issue (I tested it in the affected bot). I landed the patch as it was originally suggested in r269715, just a few minutes ago.
Note You need to log in before you can comment on or make changes to this bug.