www/webkitgtk4 failed to configure on sparc64 with:

  GCC 11.2 or newer is required to build WebKit.  Use a newer GCC version or
  Clang.

sparc64 doesn't have working gcc 11 but does have ports-clang. Changing
COMPILER to base-clang ports-clang ports-gcc gets past the configure
check. The only other issue I hit during the build was _Float16 is not
supported on sparc64. The neon.h patch fixed that. 

I noticed alpha and hppa were marked broken due to the old gcc version,
so I set MODGCC4_VERSION to 11 but only when not usng clang. If set
all the time, the sparc64 build picks up gcc 11's libstdc++ instead of
gcc 8. This change should allow alpha and hppa to get through the configure
stage at least so I removed the broken markers. If they are still 
broken after using gcc 11 then we can put back the broken marker with
the new errors.

okay?

Index: Makefile
===================================================================
RCS file: /cvs/ports/www/webkitgtk4/Makefile,v
retrieving revision 1.225
diff -u -p -u -r1.225 Makefile
--- Makefile    1 Dec 2024 11:52:46 -0000       1.225
+++ Makefile    14 Dec 2024 15:14:04 -0000
@@ -4,8 +4,6 @@
 USE_WXNEEDED =         Yes
 USE_NOBTCFI =          Yes
 
-BROKEN-alpha =         GCC 5.0.0 is required to build WebKitGTK+, use a newer 
GCC version or clang
-BROKEN-hppa =          GCC 5.0.0 is required to build WebKitGTK+, use a newer 
GCC version or clang
 BROKEN-arm =           JavaScriptCore/runtime/MachineContext.h, various 
sigcontext-related
 
 PORTROACH =            limitw:1,even
@@ -17,6 +15,8 @@ DISTNAME =            webkitgtk-${V}
 PKGNAME =              webkitgtk${API:S/.//}-${V}
 FULLPKGNAME =          ${PKGNAME}
 
+REVISION =             0
+
 EXTRACT_SUFX =         .tar.xz
 SUBST_VARS =           API
 DPB_PROPERTIES =       parallel
@@ -47,7 +47,7 @@ WANTLIB += webp webpdemux webpmux woff2d
 
 SITES =                        https://webkitgtk.org/releases/
 
-COMPILER =             base-clang ports-gcc
+COMPILER =             base-clang ports-clang ports-gcc
 
 MODULES =              devel/cmake \
                        lang/python \
@@ -146,6 +146,18 @@ LIB_DEPENDS +=             devel/epoll-shim
 CXXFLAGS +=            $$(pkg-config --cflags epoll-shim)
 
 .include <bsd.port.arch.mk>
+
+# if we are using ports-gcc then use gcc 11
+USING_CLANG =          No
+.for _i in ${CLANG_ARCHS} ${LLVM_ARCHS}
+.  if !empty(MACHINE_ARCH:M${_i})
+USING_CLANG =          Yes
+.  endif
+.endfor
+
+.if ${USING_CLANG:L} == "no"
+MODGCC4_VERSION =      11
+.endif
 
 # disable thin archives for bfd;
 # and set DEBUG=-g1 for GNU ar(1) arches (libWebCoreGTK.a is too big (4.1G)):
Index: patches/patch-Source_WTF_wtf_simde_arm_neon_h
===================================================================
RCS file: patches/patch-Source_WTF_wtf_simde_arm_neon_h
diff -N patches/patch-Source_WTF_wtf_simde_arm_neon_h
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ patches/patch-Source_WTF_wtf_simde_arm_neon_h       14 Dec 2024 15:14:04 
-0000
@@ -0,0 +1,13 @@
+clang 16 on sparc64 does not support _Float16
+
+Index: Source/WTF/wtf/simde/arm/neon.h
+--- Source/WTF/wtf/simde/arm/neon.h.orig
++++ Source/WTF/wtf/simde/arm/neon.h
+@@ -8787,6 +8787,7 @@ SIMDE_BEGIN_DECLS_
+   #elif !defined(__EMSCRIPTEN__) && !(defined(__clang__) && 
defined(SIMDE_ARCH_POWER)) && \
+     !(defined(HEDLEY_MSVC_VERSION) && defined(__clang__)) && \
+     !(defined(SIMDE_ARCH_MIPS) && defined(__clang__)) && \
++    !(defined(SIMDE_ARCH_SPARC) && defined(__clang__)) && \
+     !(defined(SIMDE_ARCH_ZARCH) && defined(__clang__)) && \
+     !(defined(__clang__) && defined(SIMDE_ARCH_RISCV64)) && ( \
+       defined(SIMDE_X86_AVX512FP16_NATIVE) || \

Reply via email to