RFR: 8015377: Support using compiler devkits on Linux

Erik Joelsson erik.joelsson at oracle.com
Mon Jun 3 09:40:57 UTC 2013

Reminder that this would still like a review.


On 2013-05-27 10:45, Erik Joelsson wrote:
> On 2013-05-27 05:22, David Holmes wrote:
>> Hi Erik,
>> Not a full review by any means.
>> Looking at libraries.m4, there is some later code:
>>  156 # Some of the old makefiles require a setting of OPENWIN_HOME
>>  157 # Since the X11R6 directory has disappeared on later Linuxes,
>>  158 # we need to probe for it.
>>  159 if test "x$OPENJDK_TARGET_OS" = xlinux; then
>>  160     if test -d "$SYS_ROOT/usr/X11R6"; then
>>  161         OPENWIN_HOME="$SYS_ROOT/usr/X11R6"
>>  162     fi
>>  163     if test -d "$SYS_ROOT/usr/include/X11"; then
>>  164         OPENWIN_HOME="$SYS_ROOT/usr"
>>  165     fi
>>  166 fi
>> that looks like it should an if/else similar to the code you 
>> modified. (Bob Vandette flagged this to me a while ago)
> That should be using the same logic as above yes. Fixed.
> http://cr.openjdk.java.net/~erikj/8015377/webrev.root.02/
>> Otherwise the existing configure changes look okay. Can't comment on 
>> the devkit package stuff.
> Thanks! Not sure about committing the devikt creator scripts, but 
> think they should be open in some way. They are quite messy, even if 
> I've tried cleaning them up.
> /Erik
>> Thanks,
>> David
>> On 24/05/2013 10:40 PM, Erik Joelsson wrote:
>>> Official compiler and OS versions for building OracleJDK are being
>>> evaluated. A wanted feature is to be able to separate compiler version
>>> from OS version for the linux build, as is already the case for all
>>> other platforms. This could be achieved by creating portable self
>>> contained compiler bundles. Support for such devkits already exist in
>>> the OpenJDK configure scripts, but since it's rarely used, there are a
>>> couple of issues with it that needs to be fixed.
>>> This patch fixes those issues and also provides makefiles that can be
>>> used to replicate the devkits being evaluated. More information on how
>>> to build them can be found in the comments in
>>> common/makefiles/devkit/Makefile. I don't expect many will try this, 
>>> but
>>> the information should be open. These makefiles could be left for 
>>> later.
>>> The configure changes are what we need now.
>>> A devkit like this solves several problems:
>>> 1. We need to build on an older OS to create binaries compatible with
>>> both old and new versions of OSes, but we also want to use modern
>>> compilers not likely to be available on an older OS.
>>> 2. For developers it's easier to get a working build environment on a
>>> new system since most dependencies will be in the devkit. It also makes
>>> it easier to use the official compiler and libraries for developer 
>>> builds.
>>> 3. Support for cross compilation is included. The x86_64 package
>>> supports the -m32 flag and will function correctly when the jdk
>>> configure script is fed with --with-target-bits=32. The i686 package
>>> contains a full x86_64 cross toolchain.
>>> http://cr.openjdk.java.net/~erikj/8015377/webrev.root.01/
>>> Binary bundles will be made available internally soon.
>>> /Erik

More information about the build-dev mailing list