[aarch64-port-dev ] crosscompiling openjdk-7 zero port to Aarch64 using OpenEmbedded
Riku Voipio
riku.voipio at linaro.org
Thu May 16 01:56:20 PDT 2013
Hi,
Currently the only way to use Aarch64 is with the rather slow
Foundation model simulator from ARM. Thus being able to cross-compile
OpenJDK greatly saves time for development, at least until hardware is
available. Henning has created a meta-java[1] layer to OpenEmbedded.
that allows crossbuilding OpenJDK. With some changes, it was possible
to cross-build OpenJDK to Aarch64 as well, and this code is now
included in meta-linaro[2] layer. If Henning is ok with the patches, I
can also submit them for pulling into meta-java as well. The easiest
way to try building is using Marcins setup scripts:
git clone git://git.linaro.org/openembedded/jenkins-setup.git
bash init-and-build.sh # clone all necessary repos and setup oe config
cd openembedded-core
source oe-init-build-env ../build
bitbake openjdk-7-jre
enjoy!
The included upstream changes:
- define aarch64 in icedtea's acinclude:
https://git.linaro.org/gitweb?p=openembedded/meta-linaro.git;a=blob;f=meta-aarch64/recipes-core/openjdk/files/aarch64-configure.patch
- Aarch64 zero port definition and replacing fork syscall with
equivalent clone call (already submitted to this list)
https://git.linaro.org/gitweb?p=openembedded/meta-linaro.git;a=blob;f=meta-aarch64/recipes-core/openjdk/files/icedtea-openjdk-aarch64.patch
- define aarch64 in fdlibm (used by classpath):
https://git.linaro.org/gitweb?p=openembedded/meta-linaro.git;a=blob;f=meta-aarch64/recipes-core/classpath/files/ieeefp-aarch64.patch
Included meta-java changes:
- Disable jamvm, cacao and shark builds by setting:
WITH_ADDITIONAL_VMS_aarch64 = ""
- Do not generate files by running target binaries with Qemu (which
does not exist on Aarch64), but include them as pregenerated files:
https://git.linaro.org/gitweb?p=openembedded/meta-linaro.git;a=blob;f=meta-aarch64/recipes-core/openjdk/files/icedtea-prebuilt-files.patch
[1] https://github.com/woglinde/meta-java
[2] https://git.linaro.org/gitweb?p=openembedded/meta-linaro.git;a=summary
More information about the aarch64-port-dev
mailing list