[cp-patches] [RFC/PATCH] Generate META-INF/INDEX.LIST file for glibj.zip

Pekka Enberg penberg at kernel.org
Thu May 26 12:39:49 UTC 2011

This patch changes the glibj.zip packaging so that META-INF/INDEX.LIST is
generated to the file. This is needed for VMClassLoader.getBootPackages() to
work correctly:

  private static String[] getBootPackages()
    URL indexList = getResource("META-INF/INDEX.LIST");
    if (indexList != null)

NOTE! This problem is only seen with Jato currently as it's the only VM I'm
aware of that doesn't override any of the classes in vm/reference. CACAO and
JamVM override the whole classloading parts themselves.

I asked about this on IRC and Mark Wielaard explained background on the issue:

  < mjw> 2006-04-19  Olivier Jolly  <olivier.jolly at pcedev.com>
  < mjw>    * vm/reference/java/lang/VMClassLoader.java (getBootPackages): Loads
  < mjw>    boot packages list from the META-INF/INDEX.LIST file if it exists.
  < mjw> http://developer.classpath.org/pipermail/classpath-patches/2006-April/001704.html
  < mjw> "the patch to support the -i option should be incorporated soon and we'll be able to add the creation of the index to the glibj.zip by default."
  < mjw> soon just happens the be > 5 years...

Signed-off-by: Pekka Enberg <penberg at kernel.org>
 lib/Makefile.am |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/lib/Makefile.am b/lib/Makefile.am
index 8104ee7..50d1baa 100644
--- a/lib/Makefile.am
+++ b/lib/Makefile.am
@@ -71,7 +71,7 @@ glibj.zip:
-CREATE_GLIBJ_ZIP=$(JAR) cf glibj.zip gnu java javax org sun META-INF
+CREATE_GLIBJ_ZIP=$(JAR) cf glibj.zip gnu java javax org sun META-INF && $(JAR) i glibj.zip
 CREATE_GLIBJ_ZIP=$(ZIP) -r -D glibj.zip gnu java javax org sun META-INF > /dev/null

More information about the Classpath-patches mailing list