[oe] [meta-java][PATCH 2/2] openjdk-6: Fix cross compilation for e5500 machines
Khem Raj
raj.khem at gmail.com
Mon Jul 23 00:02:32 UTC 2012
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
More information about the Openembedded-devel
mailing list