From ffaf836d25fa50fb9c6ab832c00cd163f73f3903 Mon Sep 17 00:00:00 2001 From: Michael Smith Date: Wed, 12 Jan 2011 17:37:29 -0500 Subject: icedtea6-native 1.7.5: fix build on old build hosts Set ALT_FREETYPE_HEADERS_PATH so openjdk-ecj doesn't look in /usr/include for freetype2 headers. Build xawt sizer.32 on x86_64. A precompiled sizer.32 is included in the icedtea tarball, but this could be an accident, and it doesn't run on older build systems that can't handle DT_GNU_HASH executables; this later causes the openjdk-6 build to fail for 32-bit targets. Signed-off-by: Michael Smith Cc: Henning Heinold --- .../icedtea-jdk-build-sizer-32-on-amd64.patch | 36 ++++++++++++++++++++++ recipes/icedtea/icedtea6-native.inc | 6 +++- recipes/icedtea/icedtea6-native_1.7.5.bb | 2 ++ 3 files changed, 43 insertions(+), 1 deletion(-) create mode 100644 recipes/icedtea/icedtea6-native-1.7.5/icedtea-jdk-build-sizer-32-on-amd64.patch diff --git a/recipes/icedtea/icedtea6-native-1.7.5/icedtea-jdk-build-sizer-32-on-amd64.patch b/recipes/icedtea/icedtea6-native-1.7.5/icedtea-jdk-build-sizer-32-on-amd64.patch new file mode 100644 index 0000000000..3baeb5d738 --- /dev/null +++ b/recipes/icedtea/icedtea6-native-1.7.5/icedtea-jdk-build-sizer-32-on-amd64.patch @@ -0,0 +1,36 @@ +Build the xawt sizer.32 binary on Linux/x86_64 so we can use it when +compiling openjdk for 32-bit platforms. + +--- openjdk/jdk/make/sun/xawt/Makefile.orig 2011-01-08 01:53:22.000000000 -0500 ++++ openjdk/jdk/make/sun/xawt/Makefile 2011-01-11 15:12:17.000000000 -0500 +@@ -184,6 +184,22 @@ + + else # !solaris + ++ifeq ($(PLATFORM), linux) ++ ++ifeq ($(ARCH), amd64) ++# On amd64 we generate both 32 and 64-bit sizers in spite of ARCH_DATA_MODEL. ++SIZERS = $(SIZER).32 $(SIZER).64 ++SIZERS_C = $(SIZER_32_C) $(SIZER_64_C) ++SIZES = $(WRAPPER_GENERATOR_DIR)/sizes.32 $(WRAPPER_GENERATOR_DIR)/sizes.64 ++CFLAGS_32 = $(CFLAGS) -m32 ++else # !amd64 ++SIZERS = $(SIZER).32 ++SIZERS_C = $(SIZER_32_C) ++SIZES = $(WRAPPER_GENERATOR_DIR)/sizes.32 ++endif # amd64 ++ ++else # !linux ++ + ifeq ($(ARCH_DATA_MODEL), 32) + SIZERS = $(SIZER).32 + SIZERS_C = $(SIZER_32_C) +@@ -194,6 +210,7 @@ + SIZES = $(WRAPPER_GENERATOR_DIR)/sizes.64 + endif # 32 + ++endif # linux + endif # solaris + + # XXX Hack for 6185483 - use hard-coded sizes. diff --git a/recipes/icedtea/icedtea6-native.inc b/recipes/icedtea/icedtea6-native.inc index 5be2dc6c4e..39ecdad1bb 100644 --- a/recipes/icedtea/icedtea6-native.inc +++ b/recipes/icedtea/icedtea6-native.inc @@ -1,7 +1,7 @@ DESCRIPTION = "Harness to build the source code from OpenJDK using Free Software build tools" HOMEPAGE = "http://icedtea.classpath.org" LICENSE = "GPL with Classpath Exception" -INC_PR = "r2" +INC_PR = "r3" DEPENDS = "virtual/javac-native classpath-tools-native \ virtual/java-native classpath-native \ @@ -18,6 +18,10 @@ JAVA_HOME[unexport] = "1" # No parallel build yet. PARALLEL_MAKE = "" +# openjdk-ecj looks in /usr/include and /usr/lib for freetype by default. +export ALT_FREETYPE_HEADERS_PATH = "${STAGING_INCDIR}/freetype2" +export ALT_FREETYPE_LIB_PATH = "${STAGING_LIBDIR}" + # Configure options compatible with Cacao >= 0.99 only! EXTRA_OECONF = "\ --with-parallel-jobs=1 \ diff --git a/recipes/icedtea/icedtea6-native_1.7.5.bb b/recipes/icedtea/icedtea6-native_1.7.5.bb index 308da11abe..373d1c4866 100644 --- a/recipes/icedtea/icedtea6-native_1.7.5.bb +++ b/recipes/icedtea/icedtea6-native_1.7.5.bb @@ -24,6 +24,7 @@ ICEDTEA_PATCHES = "\ file://icedtea-hotspot-make-arch-sane-for-x86.patch;apply=no \ file://icedtea-jdk-sane-x86-arch.patch;apply=no \ file://icedtea-unbreak-float.patch;apply=no \ + file://icedtea-jdk-build-sizer-32-on-amd64.patch;apply=no \ " export DISTRIBUTION_PATCHES = "\ @@ -33,4 +34,5 @@ export DISTRIBUTION_PATCHES = "\ patches/icedtea-hotspot-make-arch-sane-for-x86.patch \ patches/icedtea-jdk-sane-x86-arch.patch \ patches/icedtea-unbreak-float.patch \ + patches/icedtea-jdk-build-sizer-32-on-amd64.patch \ " -- cgit 1.2.3-korg