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

Dr Andrew John Hughes ahughes at redhat.com
Wed Jun 8 20:07:03 UTC 2011


On 13:51 Mon 30 May     , Andrew Haley wrote:
> On 05/27/2011 04:45 AM, Dr Andrew John Hughes wrote:
> > On 15:39 Thu 26 May     , Pekka Enberg wrote:
> >> 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:
> >>  else
> >>  
> >>  if WITH_JAR
> >> -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
> >>  else
> >>  CREATE_GLIBJ_ZIP=$(ZIP) -r -D glibj.zip gnu java javax org sun META-INF > /dev/null
> >>  endif
> >> -- 
> >> 1.7.4.1
> >>
> >>
> > 
> > My only concern with the patch (as I think Mark also raised on IRC) is that it means
> > the index is only generated if WITH_JAR is set and not if $(ZIP) is used.
> > 
> > Should we just drop the $(ZIP) option and require jar to be available?  I suspect
> > the reason we haven't done this is a bootstrapping issue.
> 
> That's right.
> 
> Is there some reason that zip can't generate the index?  I thought it was
> just another file.
> 

Well, zip can't but I guess we could.

> Andrew.
> 
> 

-- 
Andrew :)

Free Java Software Engineer
Red Hat, Inc. (http://www.redhat.com)

Support Free Java!
Contribute to GNU Classpath and IcedTea
http://www.gnu.org/software/classpath
http://icedtea.classpath.org
PGP Key: F5862A37 (https://keys.indymedia.org/)
Fingerprint = EA30 D855 D50F 90CD F54D  0698 0713 C3ED F586 2A37



More information about the Classpath-patches mailing list