From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from lists.gentoo.org ([140.105.134.102] helo=robin.gentoo.org) by nuthatch.gentoo.org with esmtp (Exim 4.54) id 1FPDU3-0006GV-UV for garchives@archives.gentoo.org; Fri, 31 Mar 2006 06:51:48 +0000 Received: from robin.gentoo.org (localhost [127.0.0.1]) by robin.gentoo.org (8.13.6/8.13.5) with SMTP id k2V6oSUG008445; Fri, 31 Mar 2006 06:50:28 GMT Received: from smtp01.mrf.mail.rcn.net (smtp01.mrf.mail.rcn.net [207.172.4.61]) by robin.gentoo.org (8.13.6/8.13.5) with ESMTP id k2V6oRo4029304 for ; Fri, 31 Mar 2006 06:50:27 GMT Received: from 146-115-26-214.c3-0.abr-ubr1.sbo-abr.ma.cable.rcn.com (HELO [192.168.1.104]) ([146.115.26.214]) by smtp01.mrf.mail.rcn.net with ESMTP; 31 Mar 2006 00:43:27 -0500 X-IronPort-AV: i="4.03,148,1141621200"; d="scan'208"; a="191281690:sNHT24442166" Message-ID: <442CC164.2010602@gentoo.org> Date: Fri, 31 Mar 2006 00:43:00 -0500 From: Joshua Nichols User-Agent: Mail/News 1.5 (X11/20060220) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-java@gentoo.org MIME-Version: 1.0 To: gentoo-java@lists.gentoo.org Subject: [gentoo-java] looking for contributions to java-1.5-fixer X-Enigmail-Version: 0.94.0.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-Archives-Salt: 3a00364c-db47-4ec0-a7a7-8995693e6297 X-Archives-Hash: cdbd5e9625fc626ddbd245e0efecc36d Hey folks, So, we have a bash script to help people rebuild packages on their system that were built with Java 1.5. It does help a bit, but it could definitely could use a little work. People often ask how they can help out, so I figure it may be a good thing to announce the need for improving this script. Here's a brief synopsis of what it does: * gets a list of all jars, using the pattern /usr/share/*/lib/*.jar * uses a python script, class-version-verify.py to check what version bytecode for each jar * makes a list of offending jars * uses qfile from app-portage/portage-utils to determine what package it belongs to * attempts to emerge all the offending packages Here are some problems with the current script: * Things that are brought onto the classpath for /usr/bin/ant cause some big trouble. This is because 1.5 bytecode is brought onto the classpath when you're trying to build 1.4 bytecode. * It's not smart enough to emerge stuff in order. As a result, we just attempt to merge them in a pseudo random order. If a package fails, we keep track of it to try in another 'run'. If the same packages keep failing 3 times, the script dies. * Some things could be installing jars somewhere beside /usr/share/*/lib/*.jar (in particular, to /opt) * Some binary packages install jars with 1.5 bytecode. These would be false positive. Some corresponding suggestions of how to handle the problems: * Check ant dependencies first. If there are offending packages, unmerge those, then remerge * Try unmerging stuff first. This way, emerge will figure out what order to put things in * try parsing CLASSPATH out of /usr/share/*/package.env to get a list of jars that get installed * have a variable with a list of known 1.5 jars. ignore the jar if it's in this list. The source for this is in subversion at: https://svn.gentooexperimental.org/svn/java/java-config-wrapper/trunk/ (under src/shell) So if this sounds up your ally, give it a shot. Hope to hear from someone :) Regards, - Josh -- gentoo-java@gentoo.org mailing list