During an exp-run for llvm 15 (see bug 265425), it turned out that
java/openjdk8 failed to build with clang 15:
/wrkdirs/usr/ports/java/openjdk8/work/jdk8u-jdk8u352-b08.1/jdk/src/share/bin/splashscreen_stubs.c:64:30: error: incompatible pointer to integer conversion returning 'void *' from a function with result type 'int' [-Wint-conversion]
INVOKE(SplashLoadMemory, NULL)(pdata, size);
^~~~
/usr/include/sys/_null.h:34:14: note: expanded from macro 'NULL'
#define NULL ((void *)0)
^~~~~~~~~~~
/wrkdirs/usr/ports/java/openjdk8/work/jdk8u-jdk8u352-b08.1/jdk/src/share/bin/splashscreen_stubs.c:60:39: note: expanded from macro 'INVOKE'
#define INVOKE(name,def) _INVOKE(name,def,return)
^~~
/wrkdirs/usr/ports/java/openjdk8/work/jdk8u-jdk8u352-b08.1/jdk/src/share/bin/splashscreen_stubs.c:57:25: note: expanded from macro '_INVOKE'
if (!proc) { return def; } \
^~~
/wrkdirs/usr/ports/java/openjdk8/work/jdk8u-jdk8u352-b08.1/jdk/src/share/bin/splashscreen_stubs.c:68:28: error: incompatible pointer to integer conversion returning 'void *' from a function with result type 'int' [-Wint-conversion]
INVOKE(SplashLoadFile, NULL)(filename);
^~~~
/usr/include/sys/_null.h:34:14: note: expanded from macro 'NULL'
#define NULL ((void *)0)
^~~~~~~~~~~
/wrkdirs/usr/ports/java/openjdk8/work/jdk8u-jdk8u352-b08.1/jdk/src/share/bin/splashscreen_stubs.c:60:39: note: expanded from macro 'INVOKE'
#define INVOKE(name,def) _INVOKE(name,def,return)
^~~
/wrkdirs/usr/ports/java/openjdk8/work/jdk8u-jdk8u352-b08.1/jdk/src/share/bin/splashscreen_stubs.c:57:25: note: expanded from macro '_INVOKE'
if (!proc) { return def; } \
^~~
2 errors generated.
Indeed, instead of the pointer value NULL, the integer value 0 should be
used.
PR: 268223
Approved by: portmgr (tcberner)
MFH: 2022Q4
Running java or javac executables fails with:
Error: dl failure on line 910
Error: failed /usr/local/openjdk8/jre/lib/ppc64le/server/libjvm.so, because /usr/local/openjdk8/jre/lib/ppc64le/server/libjvm.so: Undefined symbol "_ZN5frameC1EPlPh"
powerpc64le needs --disable-jfr and USE_PRECOMPILED_HEADER=0 - same as powerpc64 elfv2.
Clang refuses to build little-endian binaries for power7, this needs to be bumped to power8 (this is a bug in openjdk, POWER7 is not LE-compatible).
-minsert-sched-nops=regroup_exact -mno-multiple -mno-string are not supported by clang and need to be removed.
FreeBSD uses sys/endian.h instead of byteswap.h and bswap{16,32,64} instead of bswap_{16,32,64}.
PR: 251247
Approved by: java (maintainer timeout)
Remove files/patch-hotspot_src_cpu_ppc_vm_sharedRuntime__ppc.cpp to fix patching.
I'm not sure why this patch was added. Removing it doesn't break build on powerpc64 (both elfv1 and elfv2). There's no include for alloca.h in sharedRuntime_ppc.cpp.
Since the maintainer didn't respond, I'm adding the bootstrap to my own directory on freefall.
PR: 242965
Submitted by: Mikael Urankar (original version)
Approved by: java (maintainer timeout)
* FreeBSD crashes on infinite recursion rather than throwing a stack
overflow because the stack address of the fault is in the page below
the guard area. Workaround this by rounding down the fault address to
the nearest page boundary. Investigation is still under way into what
may be causing this but this appears to prevent it in simple test cases.
PR: 222146
* Updated the fontconfig.patch file
* Simplified FONTCONFIG to use EXTRA_PATCHES rather than a separate target
PR: 239358
Submitted by: John Hein <jcfyecrayz@liamekaens.com>, fluffy
missed during a large merge of the configuration file. This resulted in,
at least, macros affecting maths operations using the big endian rather
than the little endian versions.
PR: 234689
leveraging the libinotify wrapper.
It's still possible to use the polling watchservice,
by defining the following system property:
sun.nio.fs.watchservice=polling