Bug 208858 - Compilation failure: ‘struct stat’ has no member named ‘st_birthtime’
Summary: Compilation failure: ‘struct stat’ has no member named ‘st_birthtime’
Status: RESOLVED INVALID
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebKitGTK (show other bugs)
Version: WebKit Nightly Build
Hardware: PC Linux
: P2 Normal
Assignee: Nobody
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-03-10 05:33 PDT by Pavel Nikulin
Modified: 2020-03-23 13:37 PDT (History)
4 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Pavel Nikulin 2020-03-10 05:33:19 PDT
Hello everybody,

Background on the bug: https://lists.webkit.org/pipermail/webkit-gtk/2020-March/003592.html

I'm having a following compilation error:

FAILED: Source/WebKit/CMakeFiles/WebKit.dir/__/__/DerivedSources/WebKit/unified-sources/UnifiedSource-72468c22-7.cpp.o 
/usr/lib/ccache/bin/x86_64-pc-linux-gnu-g++ -DBUILDING_GTK__=1 -DBUILDING_WEBKIT -DBUILDING_WITH_CMAKE=1 -DBUILDING_WebKit -DBWRAP_EXECUTABLE=\"/usr/bin/bwrap\" -DDATADIR=\"/usr/share\" -DDBUS_PROXY_EXECUTABLE=\"/usr/bin/xdg-dbus-proxy\" -DENABLE_PLUGIN_PROCESS=1 -DGETTEXT_PACKAGE=\"WebKit2GTK-4.0\" -DHAVE_CONFIG_H=1 -DJSC_GLIB_API_ENABLED -DLIBDIR=\"/usr/lib64\" -DLOCALEDIR=\"/usr/share/locale\" -DPKGLIBEXECDIR=\"/usr/libexec/webkit2gtk-4.0\" -DSTATICALLY_LINKED_WITH_PAL=1 -DWEBKIT2_COMPILATION -DWEBKITGTK_API_VERSION_STRING=\"4.0\" -DWEBKIT_DOM_USE_UNSTABLE_API -DWebKit_EXPORTS -IDerivedSources/ForwardingHeaders/webkit2gtk -IDerivedSources/ForwardingHeaders/webkit2gtk-webextension -IDerivedSources/webkit2gtk/webkit2 -IDerivedSources/webkit2gtk -IDerivedSources/ForwardingHeaders -IDerivedSources/WebKit -IDerivedSources/WebKit/include -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/NetworkProcess -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/NetworkProcess/Classifier -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/NetworkProcess/Cookies -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/NetworkProcess/CustomProtocols -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/NetworkProcess/Downloads -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/NetworkProcess/FileAPI -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/NetworkProcess/IndexedDB -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/NetworkProcess/ServiceWorker -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/NetworkProcess/WebStorage -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/NetworkProcess/cache -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/NetworkProcess/watchos -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/NetworkProcess/webrtc -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/Platform -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/Platform/IPC -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/PluginProcess -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/Shared -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/Shared/API -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/Shared/API/c -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/Shared/ApplePay -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/Shared/Authentication -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/Shared/CoreIPCSupport -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/Shared/Databases -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/Shared/Databases/IndexedDB -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/Shared/FileAPI -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/Shared/Gamepad -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/Shared/Plugins -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/Shared/Plugins/Netscape -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/Shared/Plugins/Netscape/x11 -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/Shared/RemoteLayerTree -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/Shared/WebsiteData -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/UIProcess -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/UIProcess/API -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/UIProcess/API/C -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/UIProcess/API/cpp -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/UIProcess/Authentication -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/UIProcess/Automation -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/UIProcess/Downloads -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/UIProcess/Gamepad -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/UIProcess/Launcher -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/UIProcess/Network -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/UIProcess/Network/CustomProtocols -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/UIProcess/Notifications -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/UIProcess/Plugins -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/UIProcess/RemoteLayerTree -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/UIProcess/UserContent -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/UIProcess/WebAuthentication -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/UIProcess/WebAuthentication/Mock -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/UIProcess/WebsiteData -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebProcess -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebProcess/ApplePay -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebProcess/ApplicationCache -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebProcess/Automation -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebProcess/Cache -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebProcess/Databases -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebProcess/Databases/IndexedDB -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebProcess/FileAPI -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebProcess/FullScreen -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebProcess/Gamepad -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebProcess/Geolocation -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebProcess/IconDatabase -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebProcess/InjectedBundle -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebProcess/InjectedBundle/API -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebProcess/InjectedBundle/API/c -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebProcess/InjectedBundle/DOM -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebProcess/Launching -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebProcess/MediaCache -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebProcess/MediaStream -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebProcess/Network -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebProcess/Network/webrtc -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebProcess/Notifications -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebProcess/OriginData -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebProcess/Plugins -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebProcess/Plugins/Netscape -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebProcess/ResourceCache -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebProcess/Storage -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebProcess/UserContent -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebProcess/WebCoreSupport -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebProcess/WebPage -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebProcess/WebPage/RemoteLayerTree -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebProcess/WebStorage -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/WebKitLibraries -IDerivedSources/JavaScriptCore/javascriptcoregtk -IDerivedSources/ForwardingHeaders/JavaScriptCore -IDerivedSources/ForwardingHeaders/JavaScriptCore/glib -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/PluginProcess/unix -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/NetworkProcess/CustomProtocols/soup -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/NetworkProcess/glib -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/NetworkProcess/gtk -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/NetworkProcess/soup -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/NetworkProcess/unix -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/Platform/IPC/glib -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/Platform/IPC/unix -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/Platform/classifier -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/Shared/API/c/gtk -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/Shared/API/glib -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/Shared/CoordinatedGraphics -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/Shared/CoordinatedGraphics/threadedcompositor -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/Shared/Plugins/unix -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/Shared/glib -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/Shared/gtk -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/Shared/linux -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/Shared/soup -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/Shared/unix -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/UIProcess/API/C/cairo -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/UIProcess/API/C/gtk -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/UIProcess/API/glib -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/UIProcess/API/gtk -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/UIProcess/CoordinatedGraphics -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/UIProcess/Network/CustomProtocols/soup -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/UIProcess/Plugins/gtk -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/UIProcess/geoclue -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/UIProcess/glib -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/UIProcess/gstreamer -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/UIProcess/gtk -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/UIProcess/linux -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/UIProcess/soup -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebProcess/InjectedBundle/API/glib -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebProcess/InjectedBundle/API/glib/DOM -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebProcess/InjectedBundle/API/gtk -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebProcess/InjectedBundle/API/gtk/DOM -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebProcess/Plugins/Netscape/unix -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebProcess/Plugins/Netscape/x11 -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebProcess/gtk -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebProcess/soup -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebProcess/unix -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebProcess/WebCoreSupport/gtk -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebProcess/WebCoreSupport/soup -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebProcess/WebPage/CoordinatedGraphics -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebProcess/WebPage/atk -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebProcess/WebPage/gtk -I. -IDerivedSources -I/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/ThirdParty -isystem /usr/include/cairo -isystem /usr/include/enchant -isystem /usr/include/glib-2.0 -isystem /usr/lib64/glib-2.0/include -isystem /usr/include/gstreamer-1.0 -isystem /usr/lib64/libffi/include -isystem /usr/include/orc-0.4 -isystem /usr/include/gtk-3.0 -isystem /usr/include/at-spi2-atk/2.0 -isystem /usr/include/at-spi-2.0 -isystem /usr/include/dbus-1.0 -isystem /usr/lib64/dbus-1.0/include -isystem /usr/include/gio-unix-2.0 -isystem /usr/include/pango-1.0 -isystem /usr/include/fribidi -isystem /usr/include/atk-1.0 -isystem /usr/include/pixman-1 -isystem /usr/include/freetype2 -isystem /usr/include/harfbuzz -isystem /usr/include/libdrm -isystem /usr/include/gdk-pixbuf-2.0 -isystem /usr/include/libpng16 -isystem /usr/include/libmount -isystem /usr/include/blkid -isystem /usr/include/uuid -isystem /usr/include/gtk-3.0/unix-print -isystem /usr/include/libsoup-2.4 -isystem /usr/include/libxml2 -isystem /usr/lib64/gstreamer-1.0/include -isystem /usr/include/openjpeg-2.3 -isystem /usr/include/libsecret-1  -DNDEBUG -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 -O3 -pipe -march=skylake -mabm -msgx -mavx256-split-unaligned-load -mavx256-split-unaligned-store -fomit-frame-pointer -fno-strict-aliasing -fno-exceptions -fno-rtti -fPIC    -include /var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/WebKit2Prefix.h -Wno-unused-parameter -std=c++17 -MD -MT Source/WebKit/CMakeFiles/WebKit.dir/__/__/DerivedSources/WebKit/unified-sources/UnifiedSource-72468c22-7.cpp.o -MF Source/WebKit/CMakeFiles/WebKit.dir/__/__/DerivedSources/WebKit/unified-sources/UnifiedSource-72468c22-7.cpp.o.d -o Source/WebKit/CMakeFiles/WebKit.dir/__/__/DerivedSources/WebKit/unified-sources/UnifiedSource-72468c22-7.cpp.o -c DerivedSources/WebKit/unified-sources/UnifiedSource-72468c22-7.cpp
In file included from DerivedSources/WebKit/unified-sources/UnifiedSource-72468c22-7.cpp:8:
/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/NetworkProcess/cache/NetworkCacheFileSystem.cpp: In function ‘WebKit::NetworkCache::FileTimes WebKit::NetworkCache::fileTimes(const WTF::String&)’:
/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/NetworkProcess/cache/NetworkCacheFileSystem.cpp:123:48: error: ‘struct stat’ has no member named ‘st_birthtime’
  123 |     return { WallTime::fromRawSeconds(fileInfo.st_birthtime), WallTime::fromRawSeconds(fileInfo.st_mtime) };
      |                                                ^~~~~~~~~~~~
/var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkitgtk-2.26.4/Source/WebKit/NetworkProcess/cache/NetworkCacheFileSystem.cpp:123:107: error: could not convert ‘{<expression error>, WTF::WallTime::fromRawSeconds((double)fileInfo.stat::st_mtim.timespec::tv_sec)}’ from ‘<brace-enclosed initializer list>’ to ‘WebKit::NetworkCache::FileTimes’
  123 |     return { WallTime::fromRawSeconds(fileInfo.st_birthtime), WallTime::fromRawSeconds(fileInfo.st_mtime) };
      |                                                                                                           ^
      |                                                                                                           |
      |                                                                                                           <brace-enclosed initializer list>

> Can you tell us the version of the operating system, C++ compiler, C
library and CMake that you are using to build WebKitGTK?

Linux xps 5.5.5-gentoo-x86_64 #6 SMP PREEMPT Tue Mar 3 16:11:36 +06 2020 x86_64 Intel(R) Core(TM) i5-8250U CPU @ 1.60GHz GenuineIntel GNU/Linu

g++ (Gentoo 9.2.0-r2 p3) 9.2.0

cmake version 3.14.6
Comment 1 Carlos Alberto Lopez Perez 2020-03-10 08:29:33 PDT
The code that is failing to build for you should not be compiled on Linux because its inside a pre-processor block of "if HAVE(STAT_BIRTHTIME)".

And CMake should detect that and don't define HAVE_STAT_BIRTHTIME to true.
 
Can you check in the file CMakeCache.txt file inside your build the value of HAVE_STAT_BIRTHTIME? If it is defined to true (1), then we need to look at what caused cmake to define that to true.

The check that defines this is in the file Source/cmake/OptionsCommon.cmake in the call WEBKIT_CHECK_HAVE_STRUCT(HAVE_STAT_BIRTHTIME "struct stat" st_birthtime sys/stat.h) that calls the macro defined in Source/cmake/WebKitFeatures.cmake which ends calling cmake function check_struct_has_member() which its available at least since cmake 3.0 https://cmake.org/cmake/help/v3.0/module/CheckStructHasMember.html

Can you paste here the output of the following command:

grep -C25 -r HAVE_STAT_BIRTHTIME ${build-directory}/CMake*

?

it should show the value that cmake picked for this, as well as how it performed the check
Comment 2 Pavel Nikulin 2020-03-10 08:57:05 PDT
CMakeCache.txt

//Test HAVE_STAT_BIRTHTIME_value
HAVE_STAT_BIRTHTIME_value:INTERNAL=1

CMakeOutput.log

CMakeFiles/CMakeOutput.log:Performing C SOURCE FILE Test HAVE_STAT_BIRTHTIME_value succeeded with the following output:
CMakeFiles/CMakeOutput.log-Change Dir: /var/tmp/portage/net-libs/webkit-gtk-2.26.4/work/webkit-gtk-2.26.4_build/CMakeFiles/CMakeTmp
CMakeFiles/CMakeOutput.log-
CMakeFiles/CMakeOutput.log-Run Build Command(s):/usr/bin/ninja cmTC_3e055 
CMakeFiles/CMakeOutput.log-[1/2] Building C object CMakeFiles/cmTC_3e055.dir/src.c.o
CMakeFiles/CMakeOutput.log-[2/2] Linking C executable cmTC_3e055
CMakeFiles/CMakeOutput.log-
CMakeFiles/CMakeOutput.log-Source file was:
CMakeFiles/CMakeOutput.log-
CMakeFiles/CMakeOutput.log-#include <sys/stat.h>
CMakeFiles/CMakeOutput.log-
CMakeFiles/CMakeOutput.log-int main()
CMakeFiles/CMakeOutput.log-{
CMakeFiles/CMakeOutput.log-   (void)sizeof(((struct stat *)0)->st_birthtime);
CMakeFiles/CMakeOutput.log-   return 0;
CMakeFiles/CMakeOutput.log-}
Comment 3 Pavel Nikulin 2020-03-10 09:03:55 PDT
That's very weird as I have no st_birthtime in my stat.h or any include file. I tried compiling the test with g++ manually, and it fails as it should.
Comment 4 Pavel Nikulin 2020-03-10 09:07:01 PDT
I suspect something from the side of gentoo portage intervenes. Either distcc or ccache. Will try purging the cache and compiling locally.
Comment 5 Pavel Nikulin 2020-03-23 13:37:11 PDT
Confirming, DistCC is playing tricks. It compiles without it