porting icedtea6 to FreeBSD

Jason Helfman jgh at FreeBSD.org
Thu Mar 29 09:28:40 PDT 2012

On Thu, Mar 29, 2012 at 05:36:14AM -0400, Andrew Hughes thus spake:
>So what's the basis for that?  Wouldn't it be better to use that source
>code rather than OpenJDK6?

I agree. Now that I know what is it doing.
>> I am specifying this for --with-jdk-home

What jdk do you suggest here?

>> >
>> >You don't seem to be using the latest; that would be 1.11.1.  If you
>> >want
>> >to get the end result into IcedTea, you may be better working with
>> >the
>> >Mercurial version:

What makes you say I am not using the latest? I did update to 1.11.1 for
this latest build.
>> I really would rather work with the released tarballs to support
>> FreeBSD,
>> unless something comes up where that can't be done. I'm really not
>> convinced
>> that I'm doing things right at this point to warrant a different path
>> :)
>There just doesn't seem much point in working on an old release with issues
>that may have already been fixed.  Also, to accept any patches you may have,
>we'll need them against HEAD not an old release.

I'm not working on an old release, though. I am grabbing the same tarball
from the same location as the build does for icedtea. I am confused though,
as to what actual tarballs I should be grabbing.

At the moment, I am taking:


Do I need more? From the build log, it seems this is all that is required.
>> I'm still trying to find out what icedtea does with openjdk :)
>Patches and builds it.

Okay. This makes more sense now.
>> >
>> >The patch issue is rather odd.  Are you rerunning a build over an
>> >existing
>> >OpenJDK tree as Andrew said?  What I'd recommend for ease of
>> >debugging is
>> >to build in a separate directory:
>> I believe I am doing that, with the above specified. Do I need to be
>> running
>> against a different jdk home? There are several to choose from for
>> FreeBSD.
>> I wonder if this is the issue. However, I switched to use jdk1.6 and
>> had the
>> same patch related issue.
>The JDK isn't an issue with patching.  I just mentioned it because it may
>affect things when we actually get to building.
>> The text leading up to this was:
>> --------------------------
>> |# HG changeset patch
>> |# User robm
>> |# Date 1322691030 0
>> |# Node ID ee0f12b18cb8d20c3fb61e96817bde6318a29221
>> |# Parent  dd8956e41b892ed7102e1d5668781f2c68ea9ac5
>> |7082299: AtomicReferenceArray should ensure that array is Object[]
>> |Summary: java.util.concurrent.AtomicReferenceArray needs to ensure
>> |that internal array is always Object[].
>> |Reviewed-by: chegar, coffeys
>> |
>> |diff --git
>> |a/src/share/classes/java/util/concurrent/atomic/AtomicReferenceArray.java
>> |b/src/share/classes/java/util/concurrent/atomic/AtomicReferenceArray.java
>> |---
>> |openjdk/jdk/src/share/classes/java/util/concurrent/atomic/AtomicReferenceArray.java
>> |+++
>> |openjdk/jdk/src/share/classes/java/util/concurrent/atomic/AtomicReferenceArray.java
>> --------------------------
>> Patching file
>> openjdk/jdk/src/share/classes/java/util/concurrent/atomic/AtomicReferenceArray.java
>> using Plan A...
>> Reversed (or previously applied) patch detected!  Assume -R? [y]
>> >
>> >$ mkdir icedtea6-build
>> >$ cd icedtea6-build
>> >$ ../icedtea6-1.11.1/configure <params>
>> This may partly my issue. I'm basically guessing what the correct
>> options
>> are to use.
>> Here is what I am using currently:
>> (LOCALBASE=/usr/local)
>> --with-ecj-jar=${LOCALBASE}/share/java/classes/ecj-3.7.2.jar \
>> --with-rhino=${LOCALBASE}/share/java/rhino/rhino.jar \
>> --with-jdk-home=/usr/local/openjdk6 \
>> --with-jaxp-drop-zip=${DISTDIR}/jaxp144_03.zip \
>> --with-jaf-drop-zip=${DISTDIR}/jdk6-jaf-b20.zip \
>> --with-jaxws-drop-zip=${DISTDIR}/jdk6-jaxws2_1_6-2011_06_13.zip \
>> --with-openjdk-src-zip=${DISTDIR}/openjdk-6-src-b24-14_nov_2011.tar.gz
>Yes I saw this.  All looks fine to me.
>Moving to 1.11 would allow the xerces/xalan dependencies to be dropped
>(this change will also be in 1.10.7)

Yes, I noticed this with the change to 1.11.1, and removed those from my
>> This has been resolved with later releases, and the patching is
>> probably a
>> result of misconfigured configured options.
>I doubt it from what I've seen of what you're doing.
>The issue seems to be that your OpenJDK sources are not in the expected state.

It is the same checksum, though, and the same location that is fetched
during the icedtea build. I just pre-fetch them, and assign it as a
configure option.
Here is a link to the files with the checksums that are used:

Thanks! :)


Jason Helfman         | FreeBSD Committer
jgh at FreeBSD.org       | http://people.freebsd.org/~jgh

More information about the distro-pkg-dev mailing list