webkit2gtk3 failed to build from source in Fedora rawhide/f32 https://koji.fedoraproject.org/koji/taskinfo?taskID=41322781 For details on the mass rebuild see: https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild Please fix webkit2gtk3 at your earliest convenience and set the bug's status to ASSIGNED when you start fixing it. If the bug remains in NEW state for 8 weeks, webkit2gtk3 will be orphaned. Before branching of Fedora 33, webkit2gtk3 will be retired, if it still fails to build. For more details on the FTBFS policy, please visit: https://fedoraproject.org/wiki/Fails_to_build_from_source
Created attachment 1661367 [details] build.log file build.log too big, will only attach last 32768 bytes
Created attachment 1661368 [details] root.log file root.log too big, will only attach last 32768 bytes
Created attachment 1661369 [details] state.log
FAILED: Source/ThirdParty/ANGLE/CMakeFiles/ANGLE.dir/src/common/event_tracer.cpp.o /usr/bin/c++ -DANGLE_ENABLE_ESSL -DANGLE_ENABLE_GLSL -DBUILDING_GTK__=1 -DBUILDING_WITH_CMAKE=1 -DBWRAP_EXECUTABLE=\"/usr/bin/bwrap\" -DDBUS_PROXY_EXECUTABLE=\"/usr/bin/xdg-dbus-proxy\" -DEGL_EGL_PROTOTYPES=0 -DGETTEXT_PACKAGE=\"WebKit2GTK-4.0\" -DGL_GLES_PROTOTYPES=0 -DHAVE_CONFIG_H=1 -DJSC_GLIB_API_ENABLED -DLIBANGLE_IMPLEMENTATION -DSVN_REVISION=\"tarball\" -DWEBKITGTK_API_VERSION_STRING=\"4.0\" -I../Source/ThirdParty/ANGLE/include -I../Source/ThirdParty/ANGLE/include/KHR -I../Source/ThirdParty/ANGLE/src -I../Source/ThirdParty/ANGLE/src/common/third_party/base -ISource/ThirdParty/ANGLE/include -fdiagnostics-color=always -Wextra -Wall -Wno-expansion-to-defined -Wno-psabi -Wno-noexcept-type -Wno-maybe-uninitialized -Wwrite-strings -Wundef -Wpointer-arith -Wmissing-format-attribute -Wformat-security -Wcast-align -O2 -g1 -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=zEC12 -mtune=z13 -fasynchronous-unwind-tables -fstack-clash-protection -DUSER_AGENT_GTK_DISTRIBUTOR_NAME='"Fedora"' -fno-strict-aliasing -fno-exceptions -fno-rtti -DNDEBUG -fPIC -Wno-cast-align -Wno-suggest-attribute=format -Wno-type-limits -Wno-undef -Wno-unused-parameter -std=c++17 -MD -MT Source/ThirdParty/ANGLE/CMakeFiles/ANGLE.dir/src/common/event_tracer.cpp.o -MF Source/ThirdParty/ANGLE/CMakeFiles/ANGLE.dir/src/common/event_tracer.cpp.o.d -o Source/ThirdParty/ANGLE/CMakeFiles/ANGLE.dir/src/common/event_tracer.cpp.o -c ../Source/ThirdParty/ANGLE/src/common/event_tracer.cpp In file included from ../Source/ThirdParty/ANGLE/src/common/event_tracer.h:9, from ../Source/ThirdParty/ANGLE/src/common/event_tracer.cpp:5: ../Source/ThirdParty/ANGLE/include/platform/Platform.h:239:35: error: 'size_t' has not been declared 239 | size_t programSize, | ^~~~~~ ../Source/ThirdParty/ANGLE/include/platform/Platform.h:243:33: error: 'size_t' has not been declared 243 | size_t programSize, | ^~~~~~ size_t is defined in a bunch of different headers. stdlib.h would suffice. ANGLE's Platform.h includes stdint.h, but it's not defined there.
As that is C++ (even if .h) include <cstddef>
Oh joy.. subsequent failure FAILED: Source/ThirdParty/ANGLE/CMakeFiles/ANGLE.dir/src/libANGLE/FrameCapture_mock.cpp.o /usr/bin/c++ -DANGLE_ENABLE_ESSL -DANGLE_ENABLE_GLSL -DBUILDING_GTK__=1 -DBUILDING_WITH_CMAKE=1 -DBWRAP_EXECUTABLE=\"/usr/bin/bwrap\" -DDBUS_PROXY_EXECUTABLE=\"/usr/bin/xdg-dbus-proxy\" -DEGL_EGL_PROTOTYPES=0 -DGETTEXT_PACKAGE=\"WebKit2GTK -4.0\" -DGL_GLES_PROTOTYPES=0 -DHAVE_CONFIG_H=1 -DJSC_GLIB_API_ENABLED -DLIBANGLE_IMPLEMENTATION -DSVN_REVISION=\"tarball\" -DWEBKITGTK_API_VERSION_STRING=\"4.0\" -I../Source/ThirdParty/ANGLE/include -I../Source/ThirdParty/ANGLE/include/KHR -I../Source/ThirdParty/ANGLE/src -I../Source/ThirdParty/ANGLE/src/common/third_party/base -ISource/ThirdParty/ANGLE/include -fdiagnostics-color=always -Wextra -Wall -Wno-expansion-to-defined -Wno-psabi -Wno-noexcept-type -Wno-maybe-uninitialized -Wwrite-strings -Wundef -Wpointer-arith -Wmissing-format-attribute -Wformat-security -Wcast-align -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -DUSER_AGENT_GTK_DISTRIBUTOR_NAME='"Fedora"' -fno-strict-aliasing -fno-exceptions -fno-rtti -DNDEBUG -fPIC -Wno-cast-align -Wno-suggest-attribute=format -Wno-type-limits -Wno-undef -Wno-unused-parameter -std=c++17 -MD -MT Source/ThirdParty/ANGLE/CMakeFiles/ANGLE.dir/src/libANGLE/FrameCapture_mock.cpp.o -MF Source/ThirdParty/ANGLE/CMakeFiles/ANGLE.dir/src/libANGLE/FrameCapture_mock.cpp.o.d -o Source/ThirdParty/ANGLE/CMakeFiles/ANGLE.dir/src/libANGLE/FrameCapture_mock.cpp.o -c ../Source/ThirdParty/ANGLE/src/libANGLE/FrameCapture_mock.cpp In file included from ../Source/ThirdParty/ANGLE/src/libANGLE/FrameCapture.h:13, from ../Source/ThirdParty/ANGLE/src/libANGLE/FrameCapture_mock.cpp:10: ../Source/ThirdParty/ANGLE/src/libANGLE/angletypes.h:427:2: in 'constexpr' expansion of 'angle::PackedEnumMap<gl::ComponentType, unsigned int>(std::initializer_list<std::pair<gl::ComponentType, unsigned int> >{((const std::pair<gl::ComponentType, unsigned int>*)(& const std::pair<gl::ComponentType, unsigned int> [3]{std::pair<gl::ComponentType, unsigned int>{gl::ComponentType::Float, 65537}, std::pair<gl::ComponentType, unsigned int>{gl::ComponentType::Int, 1}, std::pair<gl::ComponentType, unsigned int>{gl::ComponentType::UnsignedInt, 65536}})), 3})' ../Source/ThirdParty/ANGLE/src/common/PackedEnums.h:89:72: error: modifying a const object '(unsigned int&)(&(&(const Storage&)(&((angle::PackedEnumMap<gl::ComponentType, unsigned int>*)this)->angle::PackedEnumMap<gl::ComponentType, unsigned int>::mPrivateData))->std::array<unsigned int, 4>::operator[](((std::array<unsigned int, 4>::size_type)((angle::PackedEnumMap<gl::ComponentType, unsigned int>::UnderlyingType)it->std::pair<gl::ComponentType, unsigned int>::first))))' is not allowed in a constant expression 88 | const_cast<T &>(const_cast<const Storage &>( | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 89 | mPrivateData)[static_cast<UnderlyingType>(it->first)]) = it->second; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ In file included from ../Source/ThirdParty/ANGLE/src/libANGLE/Caps.h:12, from ../Source/ThirdParty/ANGLE/src/libANGLE/Context.h:20, from ../Source/ThirdParty/ANGLE/src/libANGLE/FrameCapture.h:14, from ../Source/ThirdParty/ANGLE/src/libANGLE/FrameCapture_mock.cpp:10: ../Source/ThirdParty/ANGLE/src/libANGLE/angletypes.h:427:2: note: originally declared 'const' here 427 | }}; | ^
For historical reasons, WebKit code style mostly prefers to include C headers when there is a choice between a C header and an equivalent C++ header, but it's inconsistent. That doesn't matter here because this is an ANGLE header, but it's already including stdint.h rather than cstdint, so makes sense to match the existing code style....
I'm installing a rawhide VM to try building WebKit there and catch any remaining failures. We'll see how it goes.
Please pull again, I committed the fix so far. It now failed at the very end when generating the documentation with a cc1: warning: command-line option ‘-Wno-noexcept-type’ is valid for C++/ObjC++ but not for C Not an error though, but that seems to be the cause, omitting that option from the command made it succeed: cd /builddir/build/BUILD/webkitgtk-2.27.4/x86_64-redhat-linux-gnu && /usr/bin/cmake -E env CC=/usr/bin/cc "CFLAGS=-fdiagnostics-color=always -Wextra -Wall -Wno-expansion-to-defined -Wno-psabi -Wno-noexcept-type -Wno-maybe-uninitialized -Wwrite-strings -Wundef -Wpointer-arith -Wmissing-format-attribute -Wformat-security -Wcast-align -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -DUSER_AGENT_GTK_DISTRIBUTOR_NAME='\"Fedora\"' -fno-strict-aliasing -fno-exceptions -Wno-unused-parameter" "LDFLAGS=-Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -fuse-ld=gold -Wl,--disable-new-dtags" /builddir/build/BUILD/webkitgtk-2.27.4/Tools/gtkdoc/generate-gtkdoc --gtk && touch docs-build.stamp
Thanks Eike! I'm testing this change: diff --git a/Source/cmake/WebKitCompilerFlags.cmake b/Source/cmake/WebKitCompilerFlags.cmake index c5fa4c3ea58..49446644e47 100644 --- a/Source/cmake/WebKitCompilerFlags.cmake +++ b/Source/cmake/WebKitCompilerFlags.cmake @@ -123,10 +123,11 @@ if (COMPILER_IS_GCC_OR_CLANG) # FIXME: We should probably not be disabling -Wno-maybe-uninitialized? WEBKIT_PREPEND_GLOBAL_COMPILER_FLAGS(-Qunused-arguments -Wno-maybe-uninitialized - -Wno-noexcept-type -Wno-parentheses-equality -Wno-psabi) + WEBKIT_PREPEND_GLOBAL_CXX_FLAGS(-Wno-noexcept-type) + # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80947 if (${CMAKE_CXX_COMPILER_VERSION} VERSION_LESS "8.0" AND NOT CMAKE_CXX_COMPILER_ID MATCHES "Clang") WEBKIT_PREPEND_GLOBAL_CXX_FLAGS(-Wno-attributes)
Upstream upstream: https://bugs.chromium.org/p/angleproject/issues/detail?id=4389 https://bugs.chromium.org/p/angleproject/issues/detail?id=4390
Thanks!
FEDORA-2021-a54756b357 has been pushed to the Fedora 34 stable repository. If problem still persists, please make note of it in this bug report.
FEDORA-2021-45e2a134ce has been pushed to the Fedora ELN stable repository. If problem still persists, please make note of it in this bug report.