Bug 178407

Summary: [GTK][Stable] BackingStoreBackendCairoImpl.h:23:10: fatal error: WebCore/HysteresisActivity.h
Product: WebKit Reporter: s172262
Component: WebKitGTKAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: bugs-noreply, cgarcia, clopez, mcatanzaro, zan
Priority: P2    
Version: WebKit Local Build   
Hardware: Mac   
OS: macOS 10.13   
Attachments:
Description Flags
Patch zan: review+

Description s172262 2017-10-17 14:06:39 PDT
I tried to build webkitgtk+ ver 2.18.0 with cairo on macos10.13.

>BackingStoreBackendCairoImpl.h:23:10: fatal error: WebCore/HysteresisActivity.h

Please change in Source/WebCore/platform/graphics/cairo/BackingStoreBackendCairoImpl.h at line 23.

- #include <WebCore/HysteresisActivity.h>
+ #include <WebCore/platform/HysteresisActivity.h>
Comment 1 Michael Catanzaro 2017-10-17 16:39:59 PDT
Thanks for this bug report.

(In reply to s172262 from comment #0)
> I tried to build webkitgtk+ ver 2.18.0 with cairo on macos10.13.
> 
> >BackingStoreBackendCairoImpl.h:23:10: fatal error: WebCore/HysteresisActivity.h
> 
> Please change in
> Source/WebCore/platform/graphics/cairo/BackingStoreBackendCairoImpl.h at
> line 23.
> 
> - #include <WebCore/HysteresisActivity.h>
> + #include <WebCore/platform/HysteresisActivity.h>

WebKit coding style is to add the right include directories, so that full paths are not required. So the right fix is to add the right include path in some CMake file somewhere. Can't tell where without more of a build log to see where BackingStoreBackendCairoImpl.h is being included from. But it's very, very odd that WebCore/platform would not already be in the include path.

Anyway, HysteresisActivity has been moved to PAL in trunk, so it'll need to be fixed separately for 2.18. We're not going to fix it ourselves as we don't actually develop or support WebKitGTK+ on Mac, but we do consider community patches when posted following the guidance at https://webkit.org/contributing-code/#create-the-patch if you want to take a stab at it.
Comment 2 s172262 2017-10-17 19:30:35 PDT
> We're not going to fix it ourselves as we don't actually develop or support WebKitGTK+ on Mac,
> but we do consider community patches when posted following the guidance at
> https://webkit.org/contributing-code/#create-the-patch if you want to take a  stab at it.

I know this isn't only MacOS's matter.

See https://www.mail-archive.com/slackbuilds-users@slackbuilds.org/msg17290.html
and https://lists.nongnu.org/archive/html/bug-guix/2017-10/msg00083.html
Comment 3 Carlos Alberto Lopez Perez 2017-10-17 20:03:58 PDT
I think the fix may be to include the header quoted as the include is from a header or WebCore into another of WebCore.

Can you check if this will fix the issue?

- #include <WebCore/HysteresisActivity.h>
+ #include "HysteresisActivity.h"
Comment 4 Carlos Garcia Campos 2017-10-17 23:38:43 PDT
Created attachment 324099 [details]
Patch

This is for 2.18, it won't apply in trunk
Comment 5 Carlos Garcia Campos 2017-10-18 02:56:20 PDT
Committed r223597
Comment 6 Carlos Alberto Lopez Perez 2017-10-18 06:26:58 PDT
The fix was merged on WebKitGTK+ 2.18.1 that was released a few hours ago.