From 32ad10fd94b0c21237b1f916cd87534ea5bad048 Mon Sep 17 00:00:00 2001 From: Sven Gothel Date: Tue, 6 Aug 2013 15:35:52 +0200 Subject: Initial commit Ji Gong --- README.JEP161.txt | 3 +++ README.JVM.txt | 24 ++++++++++++++++++++++++ README.Jigsaw.txt | 14 ++++++++++++++ 3 files changed, 41 insertions(+) create mode 100644 README.JEP161.txt create mode 100644 README.JVM.txt create mode 100644 README.Jigsaw.txt diff --git a/README.JEP161.txt b/README.JEP161.txt new file mode 100644 index 0000000..2316bb8 --- /dev/null +++ b/README.JEP161.txt @@ -0,0 +1,3 @@ +JEP 161 got included in OpenJDK 8 M7 2013/06/13 (b94) +Feature Complete milestone http://openjdk.java.net/projects/jdk8/milestones +thus... it should be possible to compile a compact1 profile using the openjdk 8 sourcecode without the modular system added using jigsaw diff --git a/README.JVM.txt b/README.JVM.txt new file mode 100644 index 0000000..a2baa30 --- /dev/null +++ b/README.JVM.txt @@ -0,0 +1,24 @@ +(03:06:24 PM) xranby: its a bit undocumented the key is that there exist a jvm.cfg file inside the jre directory +(03:06:53 PM) xranby: this file lists all folders inside java/jre/lib//* that contains a libjvm.so +(03:07:12 PM) xranby: the top most -myawesomejvm KNOWN line becomes the default +(03:07:29 PM) xranby: the libjvm.so itself implement the JNI spec +(03:08:26 PM) xranby: basically according to this book: http://web.archive.org/web/20120905183616/http://java.sun.com/docs/books/jni/download/jni.pdf +(03:08:43 PM) xranby: + all added JEP's & JSR's over time + some openjdk undocumented apis +(03:08:56 PM) xranby: jamvm and cacao for example implements this +(03:09:17 PM) xranby: and allows you to place the jamvm, cacao, avian libjvm.so inside one subfolder +(03:09:25 PM) xranby: and add a line -jamvm KNOWN to the jvm.cfg +(03:09:54 PM) xranby: during builds... there was previously a mecanism inside the openjdk source +(03:10:19 PM) xranby: if you defined ALT_HOTSPOT_IMPORT_PATH or similar pointing to a prebuilt libjvm.so +(03:10:27 PM) xranby: it would import that one instead of building it from scratch +(03:10:39 PM) xranby: this mechanism changes from time to time +(03:10:59 PM) xranby: at present it require a directory that looks like a real JDK installation +(03:11:11 PM) xranby: (although it only copys the libjvm.so) +(03:11:29 PM) xranby: we use this trick to build openjdk using jamvm using the icedtea build system +(03:11:48 PM) xranby: all details are found inside the icedtea project +(03:12:08 PM) xranby: hence makes it possible to build openjdk on platforms without hotspot +(03:12:20 PM) xranby: ... i will not go into details on how to bootstrap openjdk +(03:12:27 PM) xranby: from scratch on a new architecture +(03:12:33 PM) xranby: .. its black magic +(03:13:21 PM) xranby: basically you do GCC -> GCJ -> ECJ -> ANT -> bootstrap openjdk subset compiled using ecj -> openjdk +(03:13:31 PM) xranby: and deal with all cyclic complexity + diff --git a/README.Jigsaw.txt b/README.Jigsaw.txt new file mode 100644 index 0000000..ac11672 --- /dev/null +++ b/README.Jigsaw.txt @@ -0,0 +1,14 @@ +apt-get build-dep openjdk-7-jdk + +hg clone http://hg.openjdk.java.net/jigsaw/jigsaw +cd jigsaw/ +sh ./get_source.sh + +#./configure +# --enable-unlimited-crypto +# --disable-headful + +sh configure && make all +make test TEST=jdk_jigsaw + +-> ./jdk/make/modules/modules.config -- cgit v1.2.3