Clang 19 has a number of new warnings, and because java/openjdk11 compiles with -Werror by default, on i386 it results in errors similar to: /wrkdirs/usr/ports/java/openjdk11/work/jdk11u-jdk-11.0.24-8-1/src/java.desktop/share/native/libharfbuzz/graph/../hb-algs.hh:1332:18: error: builtin __has_trivial_assign is deprecated; use __is_trivially_assignable instead [-Werror,-Wdeprecated-builtins] 1332 | static_assert (hb_is_trivially_copy_assignable (T), ""); | ^ /wrkdirs/usr/ports/java/openjdk11/work/jdk11u-jdk-11.0.24-8-1/src/java.desktop/share/native/libharfbuzz/graph/../hb-meta.hh:204:44: note: expanded from macro 'hb_is_trivially_copy_assignable' 204 | #define hb_is_trivially_copy_assignable(T) __has_trivial_assign(T) | ^ I propose to disable warnings-as-errors for this port, similar to what is already done for openjdk17. It does not make sense to have this on by default, unless you are an upstream maintainer.
Created attachment 253199 [details] java/openjdk11: fix build with clang 19 on i386
Why not: -.if ${ARCH} == aarch64 || ${ARCH} == amd64 || ${ARCH:Marmv*} || ${ARCH:Mpowerpc64*} +.if ${ARCH} == aarch64 || ${ARCH} == amd64 || ${ARCH:Marmv*} || ${ARCH} == i386 || ${ARCH:Mpowerpc64*} CONFIGURE_ARGS+= --disable-warnings-as-errors .endif ???
(In reply to Vladimir Druzenko from comment #2) In my opinion, for a port it does not make sense to turn on -Werror. I would turn this off unconditionally, and remove the whole .if block instead.
(In reply to Dimitry Andric from comment #3) IMHO, it looks like it needs to be unconditionally for all arches. In this list we lack riscv64 only.
Closing in favor of bug 281188, which fixes this for all openjdk ports.