Building IcedTea7 Using BSD option On OS X
Andrew John Hughes
gnu_andrew at member.fsf.org
Fri Jan 2 10:54:17 PST 2009
2009/1/2 Michael Franz <mvfranz at gmail.com>:
> On Thu, Jan 1, 2009 at 3:49 AM, Andrew John Hughes
> <gnu_andrew at member.fsf.org> wrote:
>> 2009/1/1 Michael Franz <mvfranz at gmail.com>:
>> > Hi,
>> > I have been able to build IcedTea 7 on OS X. I removed a bunch of
>> > patches
>> > and had to fake some stuff to get it to work. I wanted to use zero and
>> > shark. This is the version that prints:
>> > java version "1.7.0_0-fastdebug-bsd"
>> > IcedTea 1.9-pre-rb5fe6c65b574 Runtime Environment (build
>> > 1.7.0_0-fastdebug-bsd-b42)
>> > OpenJDK Core VM (build 14.0-b08, interpreted mode)
>> > Is this enough to tell if I was able to build with zero and shark?
>> 'Core VM' shows that the zero VM has been built. I'm not sure about
>> how to tell if Shark is being used -- Gary?
>> To build Shark, you would have needed LLVM.
> I didn't install LLVM. I was expecting compilation error if something was
> missing. It might be that one of the patches I did not apply prevented the
> shark code.
Strange, configure should fail if you do --enable-shark and there is no LLVM.
>> > This is what I used to configure:
>> > ./configure --enable-zero
>> > --with-ecj-jar=/opt/local/share/java/eclipse-ecj.jar
>> > --with-xalan2-jar=/opt/local/share/java/xalan.jar
>> > --with-xalan2-serializer-jar=/opt/local/share/java/serializer.jar
>> > --with-xerces2-jar=/opt/local/share/java/xercesImpl.jar --without-rhino
>> > --disable-liveconnect --with-project=bsd --with-openjdk
>> > --with-openjdk-home=/Users/mfranz/developer/openjdk-bsd/bin/openjdk7-darwin-i386-20080820
>> > --disable-xrender --enable-shark
>> > Some of my issues were because the BSD port is not completely up-to-date
>> > with OpenJDK 7.
>> Yes that's happened with a number of the other ports, though b40 up
>> seem to be able to use the same patches more or less.
>> If we can make the process easier, please let us know.
> These are the patches I did not apply.
not sure how you managed to build without these, they turn off the
These fix the build to use external versions of libjpeg, zlib, libpng, freetype.
Without these patches, you'll be using the in-tree copies which have
known security issues and will decay over time.
This suggests you need some additional cases for the Mac OS linker/gcc.
These suggest a dated build drop used by the BSD port.
> I skipped these, since it was easier to not apply them, then to try and fix
> why they did not apply correctly.
> These two applied OK, but broke the build.
> Looking at the ssize_t patch, it seems that maybe OpenJDK is inconsistent in
> using this macro. Since OS X uses ssize_t for SSIZE_T the logic to figure
> this out is only for solaris and LP64. If it is not one of those platfroms
> it is int.
> bytebuffer depends on java.nio.Buffer.java having directMark as a package
> private method. This is not in the BSD port and I cannot confirm in OpenJDK
> as the repo has been down for a number of days.
It's discardMark() and yes, this is new in b42 IIRC. I suggest the
BSD team look at updating their tree.
>> > Michael
>> > On Tue, Dec 30, 2008 at 2:31 AM, Andrew John Hughes
>> > <gnu_andrew at member.fsf.org> wrote:
>> >> 2008/12/30 Michael Franz <mvfranz at gmail.com>:
>> >> > Hi,
>> >> >
>> >> > I tried to build IcedTea 7 using the --with-project=bsd option. Most
>> >> > of
>> >> > my
>> >> > issues are with applying the patches. I have not gone through all of
>> >> > them,
>> >> > but they seem to fail around the bsd specific lines.
>> >> >
>> >> > What would be the best way to handle these differences?
>> >> >
>> >> > Michael
>> >> >
>> >> Let us know the specifics and we'll work out a solution. As I say, we
>> >> enabled the option but no-one on the IcedTea team uses BSD so it
>> >> hasn't been tested.
>> >> --
>> >> Andrew :-)
>> >> Support Free Java!
>> >> Contribute to GNU Classpath and the OpenJDK
>> >> http://www.gnu.org/software/classpath
>> >> http://openjdk.java.net
>> >> PGP Key: 94EFD9D8 (http://subkeys.pgp.net)
>> >> Fingerprint: F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8
>> Andrew :-)
Support Free Java!
Contribute to GNU Classpath and the OpenJDK
PGP Key: 94EFD9D8 (http://subkeys.pgp.net)
Fingerprint: F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8
More information about the bsd-port-dev