icedtea6-native 1.7.5: fix build on old build hosts
authorMichael Smith <msmith@cbnco.com>
Wed, 12 Jan 2011 22:37:29 +0000 (17:37 -0500)
committerMichael Smith <msmith@cbnco.com>
Tue, 18 Jan 2011 20:42:16 +0000 (15:42 -0500)
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 <msmith@cbnco.com>
Cc: Henning Heinold <heinold@inf.fu-berlin.de>
recipes/icedtea/icedtea6-native-1.7.5/icedtea-jdk-build-sizer-32-on-amd64.patch [new file with mode: 0644]
recipes/icedtea/icedtea6-native.inc
recipes/icedtea/icedtea6-native_1.7.5.bb

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 (file)
index 0000000..3baeb5d
--- /dev/null
@@ -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.
index 5be2dc6..39ecdad 100644 (file)
@@ -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 \
index 308da11..373d1c4 100644 (file)
@@ -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 \
        "