On Mon, Feb 14, 2022 at 08:13:10PM -0500, George Koehler wrote:
> We pass -DUSE_OPENGL_OR_ES=OFF to webkitgtk4 only on powerpc. This
> flag breaks the build of recent versions of webkitgtk4;
> ok to remove it?
>
> I know that 2.34.4 without this diff is broken, and 2.34.5 with this
> diff does package on powerpc. I didn't try 2.34.5 without this diff,
> but I believe that 2.34.5 would fail in the same way as 2.34.4.
> See the fatal error below this diff.
>
> In www/midori using 2.34.5 with the diff, most websites crash their
> tabs; the terminal says, "LLVM ERROR: Relocation type not implemented
> yet!", same crash as glxgears (on macppc without radeondrm). This is
> bad, but better than having no package of webkitgtk4. I successfully
> loaded 2 sites, www.openbsd.org and gigablast.com, and didn't notice
> any "colors being off".
>
> Index: Makefile
> ===================================================================
> RCS file: /cvs/ports/www/webkitgtk4/Makefile,v
> retrieving revision 1.162
> diff -u -p -r1.162 Makefile
> --- Makefile 9 Feb 2022 13:06:39 -0000 1.162
> +++ Makefile 15 Feb 2022 00:10:24 -0000
> @@ -141,8 +141,6 @@ LDFLAGS += -Wl,--no-keep-memory
> .if ${MACHINE_ARCH} == "powerpc"
> # Don't make LLVM run out of memory
> DPB_PROPERTIES = lonesome
> -# XXX fix colors being off, it would be nice to fix the code
> -CONFIGURE_ARGS += -DUSE_OPENGL_OR_ES=OFF
> .endif
Fine with me, OK
>
> post-extract:
>
> The build with -DUSE_OPENGL_OR_ES=OFF failed after several hours on
> powerpc. This is the fatal error from webkitgtk-2.34.4,
>
> | In file included from DerivedSources/WebKit/unified-sources/\
> | UnifiedSource-54928a2b-35.cpp:8:
> | In file included from /usr/ports/pobj/webkitgtk4-2.34.4/\
> | webkitgtk-2.34.4/Source/WebKit/WebProcess/WebPage/\
> | CoordinatedGraphics/DrawingAreaCoordinatedGraphics.cpp:32:
> | /usr/ports/pobj/webkitgtk4-2.34.4/webkitgtk-2.34.4/Source/WebKit/\
> | WebProcess/WebPage/CoordinatedGraphics/LayerTreeHost.h:41:10: \
> | fatal error: 'WebCore/CoordinatedGraphicsLayer.h' file not found
> | #include <WebCore/CoordinatedGraphicsLayer.h>
> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>
> Coordinated graphics are enabled by default, but not enabled
> when -DUSE_OPENGL_OR_ES=OFF in Source/cmake/OptionsGTK.cmake,
>
> | if (USE_OPENGL_OR_ES) ...
> | SET_AND_EXPOSE_TO_BUILD(USE_COORDINATED_GRAPHICS TRUE)
>
> So CoordinatedGraphicsLayer.h isn't appended to a list of header
> files in Source/WebCore/platform/TextureMapper.cmake,
>
> | if (USE_COORDINATED_GRAPHICS) ...
> | list(APPEND WebCore_PRIVATE_FRAMEWORK_HEADERS ...
> | platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h
>
> https://commits.webkit.org/238823@main included this .h from
> Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/LayerTreeHost.h,
>
> | #if PLATFORM(GTK)
> | #include <WebCore/CoordinatedGraphicsLayer.h>
> | #endif
>
--
Antoine