Re: Status of GNU Classpath

Ricardo Wurmus <[email protected]> Wed, 08 Feb 2023 11:42:34 +0100
Newsgroups gmane.comp.gcc.java.devel,gmane.comp.java.classpath.devel
Message-ID <[email protected]>
Guillermo Rodriguez Garcia via Java <[email protected]> writes:

> Hi Ricardo,
>
>> > I can see that development halted around 2016 (from the commit logs of
>> > the official git repo), but would like to know if someone else is
>> > still using GNU Classpath.
>>
>> GNU Guix is using GNU Classpath in the bootstrap path from C to modern J=
DKs.
[=E2=80=A6]
> I understand that the above already does the job, and that GNU
> Classpath is not used in Guix anymore once OpenJDK is built. Is this
> correct?

Classpath does not end up being used in applications at *runtime*, but
it remains part of the bootstrap chain forever.  In Guix we merely cache
build artifacts, but the build inputs (instructions and the closure of
all sources) are never fully divorced from the build outputs.  In other
words: we cannot ever *not* build Classpath if we want to build
OpenJDK.  Users only avoid building out the full bootstrap chain by
downloading substitutes for a local build =E2=80=94 but the builds themselv=
es
must happen somewhere (in this case on the build farm).

We also rebuild the complete bootstrap chain whenever its inputs
change.  For Classpath and the OpenJDK this would happen, for example,
when we use a new default C compiler, or any of the input libraries or
tools change.

We will need to continue to be able to build Classpath and all of the
other early Java things for as long as Java packages should be buildable
by Guix.  Over the years this may require minor tweaks and patches.

--=20
Ricardo