Request for review: Build changes in preparation for SE-Embedded support

Dr Andrew John Hughes ahughes at redhat.com
Tue Mar 15 21:43:50 UTC 2011


On 18:05 Tue 15 Mar     , David Holmes wrote:
> Further to my earlier review request for 7025066 I've now broken this 
> down into four parts:
> 
> - support for BUILD_CLIENT_ONLY
> - support for cross-compilation incl basic ARM/PPC support
> - AWT related changes for cross-compile/arm/pp/ plus SE-Embedded 
> specific items
> - SE-Embedded specific items
> 
> I'm addressing the first two of these here at this time. (AWT is being 
> handled by AWT folk). The SE-Embedded specific changes will come last 
> together with any necessary clean-up if things don't quite go to plan.
> 
> I haven't created CRs for these yet but will if there are no issues.
> 
> BUILD_CLIENT_ONLY:
> 
> http://cr.openjdk.java.net/~dholmes/jdk-bco/webrev/
> 
> Provides support for building a JDK for which only the client VM is 
> required and/or available. Essentially avoids copying any "server" 
> components and creates a jvm.cfg file that aliases -server to -client. 
> If BUILD_CLIENT_ONLY is selected on a 64-bit build then a sanity warning 
> is issued. (This is only a warning because you can actually build 64-bit 
> client Hotspot, it just isn't supported and you can't directly build it 
> in a full JDK build without hacking a couple of Makefiles).
> 

There still seem to be some odd whitespace changes in this one.  Otherwise,
looks sensible.

> ---
> 
> Cross-compilation support:
> 
> http://cr.openjdk.java.net/~dholmes/jdk-crosscomp/webrev/
> 
> Basic support for cross-compilation, plus flags/settings etc for basic 
> ARM and PPC support in the shared open code. Cross-compilation works as 
> follows:
> - you must set the ALT_COMPILER_PATH and ALT_OPENWIN_HOME to point to 
> your cross-compiler (you'll also need freetype configured correctly)

What is ALT_OPENWIN_HOME?  And why should using the cross-compilation build
mean that 'X11 headers are not under /usr/include'?  Why 'OPENWIN' and not
'X11'?

> - CROSS_COMPILE_ARCH should be set to the architecture you are building 
> for eg ARM, PPC
> - EXTRA_CFLAGS can be used to pass cross-compilation specific compile 
> options
> - HOST_CC is a compiler that can produces binaries that can run on the 
> build host (used in a few parts of the JDK build). This defaults to gcc 
> on Linux but must be explicitly set elsewhere
> - Some build features such as freetype-check and 
> binary-file-verification are disabled as they don't apply when 
> cross-compiling
> 

Rest seems ok.

> The above will form the basis of the documentation for these changes, 
> but as it seems the docs live in a different repository (???) I'll need 
> to file a separate CR etc for that.
> 
> Thanks for the reviews.
> 
> Kelly: I will need to push these via TL not BUILD due to various 
> dependencies. However I also need the module changes to propagate from 
> BUILD to TL before doing so. :(
> 
> David Holmes
> Java SE Embedded Group

-- 
Andrew :)

Free Java Software Engineer
Red Hat, Inc. (http://www.redhat.com)

Support Free Java!
Contribute to GNU Classpath and IcedTea
http://www.gnu.org/software/classpath
http://icedtea.classpath.org
PGP Key: F5862A37 (https://keys.indymedia.org/)
Fingerprint = EA30 D855 D50F 90CD F54D  0698 0713 C3ED F586 2A37



More information about the build-dev mailing list