Re: java/openjdk19 fails to build on aarch64

Jonathan Chen <[email protected]>
Newsgroups gmane.os.freebsd.devel.java
Message-ID <[email protected]>
On 19/03/25 22:24, Harald Eilertsen wrote:
> On Wed, Mar 19, 2025 at 07:27:00PM +1300, Jonathan Chen wrote:
>> On 18/03/25 01:15, Harald Eilertsen wrote:
>>> On Mon, Mar 17, 2025 at 04:41:13PM +1300, Jonathan Chen wrote:
>>>> ===>  Building for openjdk19-19.0.2+7.1_1
>>>> Error: The configuration is not up to date for 'bsd-aarch64-server-release'.
>>>
>>> Check /usr/ports/openjdk19/work/jdk19u-jdk-19.0.2-7-1/build/bsd-aarch64-server-release/configure.log
>>>
>>> To see if the configure step completes, and if not, what causes it to
>>> fail.
>>
>> I've compared the configure.log+spec.gmk on aarch64 against amd64, and
>> haven't noted anything unusual. However, on my aarch64 system, gmake notices
>> that the files in make/autoconf are newer than
>> build/bsd-aarch64-server-release/spec.gmk and this triggers the failure.
> 
> libraries.m4 should be patched before configure is run, which again
> produces spec.gmk. Otherwise it would be no point in patching it to
> begin with...

You are correct. I only realised this just after I pressed the "Send" 
button. So I dug into this a bit deeper, and it appears that 
make/autoconf/build-aux directory has a later timestamp than spec.gmk 
after the configure phase. There are no files within "build-aux" that 
have a later timestamp, so I guess either a file had been created or 
removed within the directory; resulting in the timestamp change. 
However, this is enough to trigger the "not up to date" warning and 
stopping the build.

To force the build to ignore the warning, I applied the following patch:

diff --git a/java/openjdk19/Makefile b/java/openjdk19/Makefile
index 76e8910459..4b84b82092 100644
--- a/java/openjdk19/Makefile
+++ b/java/openjdk19/Makefile
@@ -48,7 +48,7 @@ MAKE_ENV=     LANG="C" \
                 CC=${CC} \
                 CXX=${CXX} \
                 CPP=${CPP} \
-               MAKEFLAGS=""
+               MAKEFLAGS="CONF_CHECK=ignore "

  JDK_OSARCH=    bsd-${ARCH:S/amd64/x86_64/:S/i386/x86/:S/powerpc64/ppc64/}
  JDK_BUILDDIR= 
${WRKSRC}/build/${JDK_OSARCH}-${JDK_BUILD_JVM}-${JDK_BUILD_TYPE}


Cheers.
-- 
Jonathan Chen <[email protected]>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.