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

Andrew Haley aph at redhat.com
Mon May 30 12:51:46 UTC 2011


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.

Andrew.




More information about the Classpath-patches mailing list