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
 
 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

Reply via email to