summaryrefslogtreecommitdiffstats
path: root/docs/bootstrap-flow.md
diff options
context:
space:
mode:
Diffstat (limited to 'docs/bootstrap-flow.md')
-rw-r--r--docs/bootstrap-flow.md45
1 files changed, 45 insertions, 0 deletions
diff --git a/docs/bootstrap-flow.md b/docs/bootstrap-flow.md
new file mode 100644
index 0000000..96d18e6
--- /dev/null
+++ b/docs/bootstrap-flow.md
@@ -0,0 +1,45 @@
1# meta-java OpenJDK bootstrap workflow #
2
3## OpenJDK-14 ##
4
5 * TODO
6
7## OpenJDK-7 and OpenJDK-8 ##
8
9* first jikes-native is compiled
10 * a Java 1.4-capable compiler that does not need a runtime or
11 (strictly) a class library to work
12* jikes-initial-native is a wrapper around it
13
14* with this compiler we compile the initial (preliminary)
15 runtime (package virtual/java-initial-native)
16 * virtual/java-initial-native can be: cacao-initial-native (0.98)
17 or jamvm-initial-native (1.4.5)
18 * cacao is preferred, as it has a JIT, but doesn't compile
19 on all hosts
20 * cacao-initial-native and jamvm-initial-native both need
21 classpath-initial-native (0.93) and jikes-initial-native
22
23* now libecj-bootstrap-native is built
24 * this needs jikes-initial-native virtual/java-initial-native
25* now ecj-initial is built
26 * this needs libecj-bootstrap-native and
27 virtual/java-initial-native during runtime
28 * at that point we have a 1.5-capable compiler (ecj-initial)
29 running on a Java 1.4 compatible VM (cacao-inital-native
30 or jamvm-initial-native)
31
32* with this compiler (ecj-initial), we compile the final runtime
33 and compiler (virtual/java-native and virtual/javac-native)
34 * virtual/java-native can be: cacao-native (1.6.1) or
35 jamvm-native (2.0.0~pre)
36 * cacao vs jamvm as above
37 * cacao-native and jamvm-native both need
38 classpath-initial-native (0.93) and classpath-native (0.99)
39 and ecj-initial-native and virtual/java-initial-native
40 * virtual/javac-native can be: ecj-bootstrap-native
41 * ecj-bootstrap-native needs libecj-bootstrap-native
42 and virtual/java-native
43 * at that point we have a 1.5-capable compiler (ecj-bootstrap-native)
44 running on a Java 1.5 compatible VN (cacao-native or
45 jamvm-native)