guix-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#26966: [PATCH 01/22] gnu: Add jikes.


From: Ludovic Courtès
Subject: bug#26966: [PATCH 01/22] gnu: Add jikes.
Date: Thu, 18 May 2017 13:54:21 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.2 (gnu/linux)

Ricardo Wurmus <address@hidden> skribis:

> From: Ricardo Wurmus <address@hidden>
>
> * gnu/packages/java.scm (jikes): New variable.

[...]

> +;;;
> +;;; Java bootstrap toolchain.
> +;;;
> +
> +;; The Java bootstrap begins with Jikes, a Java compiler.  We use it to build
> +;; the SableVM standard library and virtual machine.  This is sufficient to
> +;; build an older version of Ant, which is needed to build an older version 
> of
> +;; ECJ, an incremental Java compiler.

Maybe you could mention the implementation language of these three tools
to clarify this choice?

> +;; ECJ is needed to build the latest release of GNU Classpath (0.99).
> +;; Classpath (> 0.98) is a requirement for JamVM, a more modern 
> implementation
> +;; of the Java virtual machine.
> +;;
> +;; With JamVM we can build the latest development version of GNU Classpath,
> +;; which has much more support for Java 1.6 than the latest release.  Since
> +;; the previous build of JamVM is limited by the use of GNU Classpath 0.99 we
> +;; rebuild it with the latest development version of GNU Classpath.
> +;;
> +;; Finally, we use the bootstrap toolchain to build the OpenJDK with the
> +;; Icedtea 1.x build framework.  We then build the more recent JDKs Icedtea
> +;; 2.x and Icedtea 3.x.

This process looks future proof to me, which is really nice.  That is,
Jikes is in C++ so when a new architecture comes out we won’t have
difficulties building it natively; tools implementing the old Java
language and librairies are “stuck in time” but that’s OK because they
don’t rely on anything special beyond C/C++/POSIX.

Ludo’.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]