On Fri, 14 Nov 2025 14:48:14 GMT, Kurt Miller <[email protected]> wrote:

> When building with external libpng the PNG defines added to CFLAGS may 
> conflict with the installed libpng header pnglibconf.h resulting in 
> compilation errors. For example on OpenBSD/aarch64:
> 
> `/usr/local/include/pnglibconf.h:207:9: error: 'PNG_ARM_NEON_OPT' macro 
> redefined [-Werror,-Wmacro-redefined]`
> 
> This moves all `-DPNG_*` into the case where internal libpng is used. This 
> has only been tested with the tier1 github actions so needs to be checked on 
> Linux/ppc and AIX.

Code change looks good to me. There is only one minor input about updating a 
comment. 
I have given full client test run with this change.

make/modules/java.desktop/lib/ClientLibraries.gmk line 167:

> 165:   ifeq ($(USE_EXTERNAL_LIBPNG), false)
> 166:     LIBSPLASHSCREEN_HEADER_DIRS += libsplashscreen/libpng
> 167:     LIBSPLASHSCREEN_CFLAGS += -DPNG_NO_MMX_CODE -DPNG_ARM_NEON_OPT=0

I think we can move these flags which are not specific to any OS/Architecture 
to src/java.desktop/share/native/libsplashscreen/libpng/pnglibconf.h itself. 
But it should be handled in follow-up task not under this bug. Filed 
https://bugs.openjdk.org/browse/JDK-8372979 for the same.

make/modules/java.desktop/lib/ClientLibraries.gmk line 174:

> 172:     endif
> 173: 
> 174:     # The external libpng submitted in the jdk is a reduced version

I think this comment should start with "The libpng bundled with jdk". 
Mentioning "external" at this level doesn't seem right. Since we are touching 
this part we can update the comment.

-------------

PR Review: https://git.openjdk.org/jdk/pull/28324#pullrequestreview-3533249426
PR Review Comment: https://git.openjdk.org/jdk/pull/28324#discussion_r2583689158
PR Review Comment: https://git.openjdk.org/jdk/pull/28324#discussion_r2583697212

Reply via email to