GNU bug report logs - #36685
ant-bootstrap fails on core-updates (409 dependents)

Previous Next

Package: guix;

Reported by: Chris Marusich <cmmarusich <at> gmail.com>

Date: Tue, 16 Jul 2019 06:59:01 UTC

Severity: important

Done: Ricardo Wurmus <rekado <at> elephly.net>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Ricardo Wurmus <rekado <at> elephly.net>
To: cmmarusich <at> gmail.com
Cc: guix-devel <at> gnu.org, 36685 <at> debbugs.gnu.org
Subject: bug#36685: ant-bootstrap fails on core-updates (409 dependents)
Date: Thu, 18 Jul 2019 12:51:23 +0200
Ricardo Wurmus <rekado <at> elephly.net> writes:

> Ricardo Wurmus <rekado <at> elephly.net> writes:
>
>> I have confirmed that this is the problem by replacing “while
>> (VMFile.exists(file.path))” with “while (false)”.  The build doesn’t
>> fully complete then either, but it gets past the compilation of the Ant
>> source files.  This clears JamVM and Jikes.
>
> It doesn’t.
>
> VMFile.exists always returns “true”, no matter what.  The C part is
> fine, but the Java part is not, so I suspected the JVM to be at fault.
>
> I managed to build ant-bootstrap successfully with this patch: […]

Here’s a shorter patch:

--8<---------------cut here---------------start------------->8---
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 403c446a82..bd98784232 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -152,6 +152,13 @@ and binary format defined in The Java Virtual Machine Specification.")
              "--disable-gjdoc")
        #:phases
        (modify-phases %standard-phases
+         (add-after 'unpack 'foo
+           (lambda _
+             (substitute* "native/jni/java-io/java_io_VMFile.c"
+               (("result = cpio_isFileExists.*" m)
+                (string-append m "
+//Without a long comment the Java side will return \"true\" on x86_64 all the time.")))
+             #t))
          (add-after 'install 'install-data
            (lambda _ (invoke "make" "install-data"))))))
     (native-inputs
--8<---------------cut here---------------end--------------->8---

This only adds a comment.  If the comment is too short it won’t work.

I suspected some misguided optimizations, so I built jamvm-1-bootstrap
and classpath-bootstrap with -O0, -O1, and I disabled stripping of
binaries, but to no avail.

Any ideas?

--
Ricardo





This bug report was last modified 5 years and 254 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.