[oe] [meta-java][PATCH 2/2] openjdk-6: Fix cross compilation for e5500 machines
Henning Heinold
heinold at inf.fu-berlin.de
Mon Jul 23 08:12:35 UTC 2012
On Sun, Jul 22, 2012 at 05:02:32PM -0700, Khem Raj wrote:
> This is only way for compile for now since qemu can not
> run the sizers binary for e5500 machines. It segfaults
> so we disable generating sizes and also xawt and jawt
> which depends on sizers, this lets jre to cross compile
> for ppc/e5500
>
> Signed-off-by: Khem Raj <raj.khem at gmail.com>
> ---
> .../icedtea-jdk-sizers-crosscompile-hack.patch | 61 ++++++++++++++++++++
> recipes-core/openjdk/openjdk-6-release-6b24.inc | 13 ++++-
> 2 files changed, 73 insertions(+), 1 deletions(-)
> create mode 100644 recipes-core/openjdk/openjdk-6-6b24/icedtea-jdk-sizers-crosscompile-hack.patch
>
> diff --git a/recipes-core/openjdk/openjdk-6-6b24/icedtea-jdk-sizers-crosscompile-hack.patch b/recipes-core/openjdk/openjdk-6-6b24/icedtea-jdk-sizers-crosscompile-hack.patch
> new file mode 100644
> index 0000000..54d6a19
> --- /dev/null
> +++ b/recipes-core/openjdk/openjdk-6-6b24/icedtea-jdk-sizers-crosscompile-hack.patch
> @@ -0,0 +1,61 @@
> +Disable xawt and jawt along with sizes generation which does not work well if
> +you cant generated sizes in cross env. So for architectures which dont have
> +working qemu this is an option
> +
> +Signed-off-by: Khem Raj <raj.khem at gmail.com>
> +Upstream-Status: Inappropriate [Cross-compile specific hack]
> +
> +--- openjdk/jdk/make/sun/xawt/Makefile.khem 2012-07-21 23:54:47.396405922 -0700
> ++++ openjdk/jdk/make/sun/xawt/Makefile 2012-07-21 23:55:52.032405922 -0700
> +@@ -245,18 +245,19 @@
> + $(SIZER_DIR) $(XLIBTYPES) "sizer" $(subst .,,$(suffix $(basename $@)))
> +
> + $(SIZES): $(SIZERS)
> +- @if [ "$(DOHACK)$@" = "true$(PREDEFINED_SIZES)" ]; then \
> +- $(ECHO) COPYING $(PREDEFINED_SIZES_TMPL) into $@; \
> +- $(CP) $(PREDEFINED_SIZES_TMPL) $@; \
> +- $(CHMOD) +w $@;\
> +- else \
> +- $(ECHO) GENERATING $@; \
> +- $(QEMU) $(WRAPPER_GENERATOR_DIR)/sizer$(suffix $@) > $@; \
> +- fi
> +- @if [ "$(DOCOMPARE)$(suffix $@)" = "true.64" ]; then \
> +- $(ECHO) COMPARING $@ and $(STORED_SIZES_TMPL_$(PLATFORM)_$(LIBARCH)); \
> +- $(DIFF) $@ $(STORED_SIZES_TMPL_$(PLATFORM)_$(LIBARCH)); \
> +- fi
> ++ touch $(SIZES)
> ++# @if [ "$(DOHACK)$@" = "true$(PREDEFINED_SIZES)" ]; then \
> ++# $(ECHO) COPYING $(PREDEFINED_SIZES_TMPL) into $@; \
> ++# $(CP) $(PREDEFINED_SIZES_TMPL) $@; \
> ++# $(CHMOD) +w $@;\
> ++# else \
> ++# $(ECHO) GENERATING $@; \
> ++# $(QEMU) $(WRAPPER_GENERATOR_DIR)/sizer$(suffix $@) > $@; \
> ++# fi
> ++# @if [ "$(DOCOMPARE)$(suffix $@)" = "true.64" ]; then \
> ++# $(ECHO) COMPARING $@ and $(STORED_SIZES_TMPL_$(PLATFORM)_$(LIBARCH)); \
> ++# $(DIFF) $@ $(STORED_SIZES_TMPL_$(PLATFORM)_$(LIBARCH)); \
> ++# fi
> +
> + $(TEMPDIR)/.gen.wrappers: $(SIZES) $(WRAPPER_GENERATOR_CLASS) $(XLIBTYPES)
> + $(BOOT_JAVA_CMD) -cp $(WRAPPER_GENERATOR_TEMPDIR) WrapperGenerator \
> +--- openjdk/jdk/make/sun/Makefile.khem 2011-11-14 14:11:40.000000000 -0800
> ++++ openjdk/jdk/make/sun/Makefile 2012-07-22 00:42:04.980409296 -0700
> +@@ -50,7 +50,7 @@
> + MOTIF_SUBDIRS = motif12 motif21
> + endif
> + HEADLESS_SUBDIR = headless
> +- XAWT_SUBDIR = xawt
> ++ XAWT_SUBDIR =
> + endif
> +
> + ifndef OPENJDK
> +@@ -65,7 +65,7 @@
> + awt splashscreen $(XAWT_SUBDIR) $(MOTIF_SUBDIRS) \
> + $(HEADLESS_SUBDIR) $(DGA_SUBDIR) \
> + font jpeg cmm applet rmi beans $(JDBC_SUBDIR) \
> +- jawt text nio launcher management $(ORG_SUBDIR) \
> ++ text nio launcher management $(ORG_SUBDIR) \
> + native2ascii serialver tools jconsole
> +
> + all build clean clobber::
> diff --git a/recipes-core/openjdk/openjdk-6-release-6b24.inc b/recipes-core/openjdk/openjdk-6-release-6b24.inc
> index b867fb3..1da7ffb 100644
> --- a/recipes-core/openjdk/openjdk-6-release-6b24.inc
> +++ b/recipes-core/openjdk/openjdk-6-release-6b24.inc
> @@ -83,7 +83,12 @@ ICEDTEAPATCHES = "\
> file://icedtea-zero-hotspotfix.patch;apply=no \
> file://icedtea-jdk-powerpc-atomic64.patch;apply=no \
> "
> -
> +ICEDTEAPATCHES_append_e5500-64b = " \
> + file://icedtea-jdk-sizers-crosscompile-hack.patch;apply=no \
> + "
> +ICEDTEAPATCHES_append_e5500 = " \
> + file://icedtea-jdk-sizers-crosscompile-hack.patch;apply=no \
> + "
> ICEDTEAPATCHES_append_libc-uclibc = " \
> file://icedtea-hotspot-isfinte.patch;apply=no \
> file://icedtea-hotspot-glibc-version.patch;apply=no \
> @@ -119,5 +124,11 @@ DISTRIBUTION_PATCHES_append_libc-uclibc = "\
> patches/icedtea-jdk-unpack-uclibc.patch \
> patches/icedtea-hotspot-dlvsym-uclibc.patch \
> "
> +DISTRIBUTION_PATCHES_append_e5500-64b = " \
> + patches/icedtea-jdk-sizers-crosscompile-hack.patch \
> + "
>
> +DISTRIBUTION_PATCHES_append_e5500 = " \
> + patches/icedtea-jdk-sizers-crosscompile-hack.patch \
> + "
> export DISTRIBUTION_PATCHES
> --
> 1.7.5.4
>
Hi Khem,
did you make a runtime test?
Bye henning
More information about the Openembedded-devel
mailing list