Date: Tue, 20 Dec 2011 22:10:11 GMT From: Jilles Tjoelker <jilles@stack.nl> To: freebsd-java@FreeBSD.org Subject: Re: java/163456: [patch] java/openjdk6: build and distribute open timezone data (tzdata) Message-ID: <201112202210.pBKMABS6006868@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
The following reply was made to PR java/163456; it has been noted by GNATS. From: Jilles Tjoelker <jilles@stack.nl> To: Greg Lewis <glewis@eyesbeyond.com> Cc: Jason Helfman <jhelfman@experts-exchange.com>, FreeBSD-gnats-submit@freebsd.org, jkim@freebsd.org Subject: Re: java/163456: [patch] java/openjdk6: build and distribute open timezone data (tzdata) Date: Tue, 20 Dec 2011 23:05:04 +0100 On Tue, Dec 20, 2011 at 09:47:57AM -0800, Greg Lewis wrote: > On Mon, Dec 19, 2011 at 10:39:04AM -0800, Jason Helfman wrote: > > Timezone data hasn't been updated since 2010 in OpenJDK. This patch downloads open timezone data, uses the built java tool > > javazic.jar to translate files so java may use them, and distributes into the correct location. > > Builds cleanly in Tinderbox => http://jgh.devio.us/files/logs/openjdk6-b24_1.log.gz Great. > > This patch encapsulates the spirit of ports/161945, and potentially could be seen as a duplicate if compilefontconfig.jar > > were copied into ${PREFIX}/openjdk6/jre/lib/ > Thanks for doing this! I wonder if with a little more work we couldn't > make this work for all of the JDK ports instead of having to reimplement > it for openjdk7, jdk16, jdk15, diablo, etc. > I.e., can we pull this out into a separate port that installs the > appropriate zoneinfo files into somewhere like > ${LOCALBASE}/share/java/zoneinfo and then symlink the zi directory in all > of the jdk and jre ports to that directory. This would avoid the need to update and recompile all JDKs whenever tzdata changes. > I haven't looked deeply into your change but I assume the biggest problem > with this is that you need a JDK with javazic.jar already installed before > you can process the raw zoneinfo files so we'd be creating a circular > dependency. Yes, this causes a bootstrapping problem. It is not much worse than the bootstrapping problem Java already has, though. The bootstrap requirement changes from a JDK to a JDK-with-javazic.jar. Also, the files generated by javazic.jar are architecture-independent so this should not make bootstrapping a new architecture harder (except that ports has no concept of architecture-independent binary packages). Another alternative is a second tzdata-java port that downloads the generated files, so it does not need Java to build. Don't let this stop you from committing the changes to openjdk6, though. -- Jilles Tjoelker
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201112202210.pBKMABS6006868>