From e6e59540e4540dfca17c5904aad6fdc23cf6934e Mon Sep 17 00:00:00 2001 From: Henning Heinold Date: Thu, 22 Nov 2012 18:44:06 +0100 Subject: openjdk7: copy over the openjdk7 from openjdk7-branch The branches differed to much and I wanted to keep openjdk-6. We will loose some history, but I think that is not a great problem Thanks to khem for working on the recipes too. --- .../openjdk/openjdk-7-03b21/build-hacks.patch | 78 ++++ .../openjdk/openjdk-7-03b21/cacao-libtoolize.patch | 12 + .../openjdk-7-03b21/cacao-loadavg-makefile.patch | 12 + .../openjdk/openjdk-7-03b21/cacao-loadavg.patch | 27 ++ .../openjdk/openjdk-7-03b21/fix-checksums.patch | 13 + .../openjdk-7-03b21/fix_hotspot_crosscompile.patch | 51 +++ .../icedtea-corba-parallel-make.patch | 31 ++ .../openjdk-7-03b21/icedtea-crosscompile-fix.patch | 342 ++++++++++++++ .../icedtea-crosscompile-fix.patch.new | 62 +++ .../openjdk-7-03b21/icedtea-fix-xrender.patch | 13 + .../openjdk-7-03b21/icedtea-hostbuildcc.patch | 12 + .../icedtea-hotspot-dlvsym-uclibc.patch | 16 + .../icedtea-hotspot-glibc-version.patch | 23 + .../openjdk-7-03b21/icedtea-hotspot-isfinte.patch | 15 + .../openjdk-7-03b21/icedtea-hotspot-isnanf.patch | 21 + .../openjdk-7-03b21/icedtea-hotspot-loadavg.patch | 28 ++ .../openjdk-7-03b21/icedtea-jdk-iconv-uclibc.patch | 39 ++ .../icedtea-jdk-nio-use-host-cc.patch | 89 ++++ .../icedtea-jdk-ppc64-jvm-cfg.patch | 41 ++ .../icedtea-jdk-remove-unused-backtrace.patch | 41 ++ .../icedtea-jdk-unpack-uclibc.patch | 10 + .../openjdk-7-03b21/icedtea-launcher-stdc++.patch | 13 + .../openjdk-7-03b21/icedtea-libnet-renaming.patch | 154 +++++++ .../icedtea-remove_sparc_compiler_option.patch | 13 + .../openjdk-7-03b21/icedtea-remove_werror.patch | 14 + .../icedtea-shark-arm-linux-cpu-detection.patch | 113 +++++ .../openjdk-7-03b21/icedtea-unbreak-float.patch | 16 + .../openjdk-7-03b21/icedtea-zero-hotspotfix.patch | 36 ++ .../openjdk/openjdk-7-03b21/jamvm-extract.patch | 13 + recipes-core/openjdk/openjdk-7-03b21/jvm.cfg | 43 ++ recipes-core/openjdk/openjdk-7-common.inc | 496 +++++++++++++++++++++ recipes-core/openjdk/openjdk-7-release-03b21.inc | 147 ++++++ recipes-core/openjdk/openjdk-7_03b21-2.1.1.bb | 24 + 33 files changed, 2058 insertions(+) create mode 100644 recipes-core/openjdk/openjdk-7-03b21/build-hacks.patch create mode 100644 recipes-core/openjdk/openjdk-7-03b21/cacao-libtoolize.patch create mode 100644 recipes-core/openjdk/openjdk-7-03b21/cacao-loadavg-makefile.patch create mode 100644 recipes-core/openjdk/openjdk-7-03b21/cacao-loadavg.patch create mode 100644 recipes-core/openjdk/openjdk-7-03b21/fix-checksums.patch create mode 100644 recipes-core/openjdk/openjdk-7-03b21/fix_hotspot_crosscompile.patch create mode 100644 recipes-core/openjdk/openjdk-7-03b21/icedtea-corba-parallel-make.patch create mode 100644 recipes-core/openjdk/openjdk-7-03b21/icedtea-crosscompile-fix.patch create mode 100644 recipes-core/openjdk/openjdk-7-03b21/icedtea-crosscompile-fix.patch.new create mode 100644 recipes-core/openjdk/openjdk-7-03b21/icedtea-fix-xrender.patch create mode 100644 recipes-core/openjdk/openjdk-7-03b21/icedtea-hostbuildcc.patch create mode 100644 recipes-core/openjdk/openjdk-7-03b21/icedtea-hotspot-dlvsym-uclibc.patch create mode 100644 recipes-core/openjdk/openjdk-7-03b21/icedtea-hotspot-glibc-version.patch create mode 100644 recipes-core/openjdk/openjdk-7-03b21/icedtea-hotspot-isfinte.patch create mode 100644 recipes-core/openjdk/openjdk-7-03b21/icedtea-hotspot-isnanf.patch create mode 100644 recipes-core/openjdk/openjdk-7-03b21/icedtea-hotspot-loadavg.patch create mode 100644 recipes-core/openjdk/openjdk-7-03b21/icedtea-jdk-iconv-uclibc.patch create mode 100644 recipes-core/openjdk/openjdk-7-03b21/icedtea-jdk-nio-use-host-cc.patch create mode 100644 recipes-core/openjdk/openjdk-7-03b21/icedtea-jdk-ppc64-jvm-cfg.patch create mode 100644 recipes-core/openjdk/openjdk-7-03b21/icedtea-jdk-remove-unused-backtrace.patch create mode 100644 recipes-core/openjdk/openjdk-7-03b21/icedtea-jdk-unpack-uclibc.patch create mode 100644 recipes-core/openjdk/openjdk-7-03b21/icedtea-launcher-stdc++.patch create mode 100644 recipes-core/openjdk/openjdk-7-03b21/icedtea-libnet-renaming.patch create mode 100644 recipes-core/openjdk/openjdk-7-03b21/icedtea-remove_sparc_compiler_option.patch create mode 100644 recipes-core/openjdk/openjdk-7-03b21/icedtea-remove_werror.patch create mode 100644 recipes-core/openjdk/openjdk-7-03b21/icedtea-shark-arm-linux-cpu-detection.patch create mode 100644 recipes-core/openjdk/openjdk-7-03b21/icedtea-unbreak-float.patch create mode 100644 recipes-core/openjdk/openjdk-7-03b21/icedtea-zero-hotspotfix.patch create mode 100644 recipes-core/openjdk/openjdk-7-03b21/jamvm-extract.patch create mode 100644 recipes-core/openjdk/openjdk-7-03b21/jvm.cfg create mode 100644 recipes-core/openjdk/openjdk-7-common.inc create mode 100644 recipes-core/openjdk/openjdk-7-release-03b21.inc create mode 100644 recipes-core/openjdk/openjdk-7_03b21-2.1.1.bb diff --git a/recipes-core/openjdk/openjdk-7-03b21/build-hacks.patch b/recipes-core/openjdk/openjdk-7-03b21/build-hacks.patch new file mode 100644 index 0000000..c6dfe5f --- /dev/null +++ b/recipes-core/openjdk/openjdk-7-03b21/build-hacks.patch @@ -0,0 +1,78 @@ +Index: icedtea-2.1/Makefile.am +=================================================================== +--- icedtea-2.1.orig/Makefile.am ++++ icedtea-2.1/Makefile.am +@@ -416,6 +416,12 @@ ICEDTEA_ENV = \ + JAVAC="" \ + JAVA_HOME="" \ + JDK_HOME="" \ ++ OE_CFLAGS="$(OE_CFLAGS)" \ ++ OE_CPPFLAGS="$(OE_CPPFLAGS)" \ ++ OE_CXXFLAGS="$(OE_CXXFLAGS)" \ ++ OE_LDFLAGS="$(OE_LDFLAGS)" \ ++ OE_LAUNCHER_LDFLAGS="$(OE_LAUNCHER_LDFLAGS)" \ ++ DISTRIBUTION_ID="$(DIST_ID)" \ + QUIETLY="" \ + ANT_RESPECT_JAVA_HOME="TRUE" \ + DISTRIBUTION_ID="$(DIST_ID)" \ +@@ -1923,12 +1929,16 @@ clean-rewrite-rhino: + stamps/jamvm.stamp: $(OPENJDK_TREE) stamps/rt.stamp + if BUILD_JAMVM + cd jamvm/jamvm && \ +- ./autogen.sh --with-java-runtime-library=openjdk \ +- --prefix=$(abs_top_builddir)/jamvm/install ; \ +- $(MAKE) ; \ +- $(MAKE) install ++ $(ARCH_PREFIX) ./autogen.sh --with-java-runtime-library=openjdk \ ++ --prefix=/usr/lib \ ++ --host=$(host_alias) \ ++ --build=$(build_alias) \ ++ --target=$(target_alias) \ ++ --with-libtool-sysroot ; \ ++ $(ARCH_PREFIX) $(MAKE) ; \ ++ $(ARCH_PREFIX) $(MAKE) install DESTDIR=$(abs_top_builddir)/jamvm/install + mkdir -p $(abs_top_builddir)/jamvm/install/hotspot/jre/lib/$(INSTALL_ARCH_DIR)/server +- cp $(abs_top_builddir)/jamvm/install/lib/libjvm.so $(abs_top_builddir)/jamvm/install/hotspot/jre/lib/$(INSTALL_ARCH_DIR)/server ++ cp $(abs_top_builddir)/jamvm/install/usr/lib/lib/libjvm.so $(abs_top_builddir)/jamvm/install/hotspot/jre/lib/$(INSTALL_ARCH_DIR)/server + ln -sf server $(abs_top_builddir)/jamvm/install/hotspot/jre/lib/$(INSTALL_ARCH_DIR)/client + touch $(abs_top_builddir)/jamvm/install/hotspot/jre/lib/$(INSTALL_ARCH_DIR)/server/Xusage.txt + ln -sf client/libjvm.so $(abs_top_builddir)/jamvm/install/hotspot/jre/lib/$(INSTALL_ARCH_DIR)/libjsig.so +@@ -1945,7 +1955,7 @@ clean-jamvm: + stamps/add-jamvm.stamp: stamps/icedtea.stamp stamps/jamvm.stamp + if ADD_JAMVM_BUILD + mkdir -p $(BUILD_JRE_ARCH_DIR)/jamvm +- install -m 644 jamvm/install/lib/libjvm.so \ ++ install -m 644 jamvm/install/usr/lib/lib/libjvm.so \ + $(BUILD_JRE_ARCH_DIR)/jamvm/ + printf -- '-jamvm KNOWN\n' >> $(BUILD_JRE_ARCH_DIR)/jvm.cfg + else +@@ -1989,6 +1999,7 @@ if !USE_SYSTEM_CACAO + --host=$(host_alias) \ + --build=$(build_alias) \ + --target=$(target_alias) \ ++ --with-libtool-sysroot \ + --prefix=$(abs_top_builddir)/cacao/install \ + --with-java-runtime-library=openjdk7 \ + --with-java-runtime-library-prefix=$(abs_top_builddir)/openjdk \ +@@ -2056,7 +2067,7 @@ clean-add-cacao-debug: + # configure script arguments, quoted in single quotes + CONFIGURE_ARGS = @CONFIGURE_ARGS@ + ADD_ZERO_CONFIGURE_ARGS = \ +- --with-jdk-home=$(BUILD_OUTPUT_DIR)/j2sdk-image \ ++ --with-jdk-home=$(abs_top_builddir)/bootstrap/jdk7.6.0 \ + --disable-bootstrap --enable-zero + if ADD_SHARK_BUILD + ADD_ZERO_CONFIGURE_ARGS += \ +Index: icedtea-2.1/javac.in +=================================================================== +--- icedtea-2.1.orig/javac.in ++++ icedtea-2.1/javac.in +@@ -70,5 +70,7 @@ else + my @CLASSPATH = ('@ECJ_JAR@'); + push @CLASSPATH, split /:/, $ENV{"CLASSPATH"} if exists $ENV{"CLASSPATH"}; + $ENV{"CLASSPATH"} = join ':', @CLASSPATH; +- exec '@JAVA@', 'org.eclipse.jdt.internal.compiler.batch.Main', @ecj_parms, @ecj_args; ++ # Compiling hotspot-tools consumes tons of memory and exceeds any default ++ # limits for jamvm and cacao. ++ exec '@JAVA@', '-Xmx1024m', 'org.eclipse.jdt.internal.compiler.batch.Main', @ecj_parms, @ecj_args; + } diff --git a/recipes-core/openjdk/openjdk-7-03b21/cacao-libtoolize.patch b/recipes-core/openjdk/openjdk-7-03b21/cacao-libtoolize.patch new file mode 100644 index 0000000..484cb10 --- /dev/null +++ b/recipes-core/openjdk/openjdk-7-03b21/cacao-libtoolize.patch @@ -0,0 +1,12 @@ +Index: icedtea6/Makefile.am +=================================================================== +--- icedtea6.orig/Makefile.am 2011-12-21 22:58:23.000000000 +0100 ++++ icedtea6/Makefile.am 2011-12-21 23:00:21.405887186 +0100 +@@ -1922,6 +1922,7 @@ + if BUILD_CACAO + if !USE_SYSTEM_CACAO + cd cacao/cacao && \ ++ rm -f libtool && \ + ./autogen.sh && \ + $(ARCH_PREFIX) ./configure \ + --host=$(host_alias) \ diff --git a/recipes-core/openjdk/openjdk-7-03b21/cacao-loadavg-makefile.patch b/recipes-core/openjdk/openjdk-7-03b21/cacao-loadavg-makefile.patch new file mode 100644 index 0000000..0f50c6c --- /dev/null +++ b/recipes-core/openjdk/openjdk-7-03b21/cacao-loadavg-makefile.patch @@ -0,0 +1,12 @@ +Index: icedtea6/Makefile.am +=================================================================== +--- icedtea6.orig/Makefile.am 2011-12-20 10:54:09.000000000 +0100 ++++ icedtea6/Makefile.am 2011-12-20 11:49:12.810009279 +0100 +@@ -1921,6 +1921,7 @@ + if BUILD_CACAO + if !USE_SYSTEM_CACAO + cd cacao/cacao && \ ++ patch -p1 -N < $(abs_top_srcdir)/patches/cacao-loadavg.patch && \ + rm -f libtool && \ + ./autogen.sh && \ + $(ARCH_PREFIX) ./configure \ diff --git a/recipes-core/openjdk/openjdk-7-03b21/cacao-loadavg.patch b/recipes-core/openjdk/openjdk-7-03b21/cacao-loadavg.patch new file mode 100644 index 0000000..0fc1a81 --- /dev/null +++ b/recipes-core/openjdk/openjdk-7-03b21/cacao-loadavg.patch @@ -0,0 +1,27 @@ +Index: cacao-cff92704c4e0/src/vm/os.hpp +=================================================================== +--- cacao-cff92704c4e0/src/vm/os.hpp 2011-12-08 13:40:45.000000000 +0100 ++++ cacao-cff92704c4e0/src/vm/os.hpp 2011-12-20 11:42:36.985633921 +0100 +@@ -425,7 +425,21 @@ + #if defined(HAVE_GETLOADAVG) + return ::getloadavg(loadavg, nelem); + #else +-# error getloadavg not available ++ FILE *LOADAVG; ++ double avg[3] = { 0.0, 0.0, 0.0 }; ++ int i, res = -1;; ++ ++ if ((LOADAVG = fopen("/proc/loadavg", "r"))) { ++ fscanf(LOADAVG, "%lf %lf %lf", &avg[0], &avg[1], &avg[2]); ++ res = 0; ++ fclose(LOADAVG); ++ } ++ ++ for (i = 0; (i < nelem) && (i < 3); i++) { ++ loadavg[i] = avg[i]; ++ } ++ ++ return res; + #endif + } + diff --git a/recipes-core/openjdk/openjdk-7-03b21/fix-checksums.patch b/recipes-core/openjdk/openjdk-7-03b21/fix-checksums.patch new file mode 100644 index 0000000..1999170 --- /dev/null +++ b/recipes-core/openjdk/openjdk-7-03b21/fix-checksums.patch @@ -0,0 +1,13 @@ +Index: icedtea-2.1/Makefile.am +=================================================================== +--- icedtea-2.1.orig/Makefile.am ++++ icedtea-2.1/Makefile.am +@@ -18,7 +18,7 @@ JAXP_SHA256SUM = 8ce48c704f38285207ee6dc + JAXWS_SHA256SUM = 823ca6b8fd780bf1b1565a90cfc8ec6f0ee422a5d25ffb20b1ce0272dc4955aa + JDK_SHA256SUM = 5f8b5edbebb358730425e64a31eaa11c346467ba10ffe1848f2d2ad2ea53bc3d + LANGTOOLS_SHA256SUM = c77dd42d83f06d18fa8aa65c93d137608a2e02cf24b68fc10d7b1c0bcc12a93c +-OPENJDK_SHA256SUM = ada790b4754f521ebfad0dd909ea29b92b2b3c1b84b2e99d32673343727d95d7 ++OPENJDK_SHA256SUM = 758227833982371e3a94def84226a947f8dbbd176517f313b8cb96840bdea41e + + CACAO_VERSION = a567bcb7f589 + CACAO_SHA256SUM = d49f79debc131a5694cae6ab3ba2864e7f3249ee8d9dc09aae8afdd4dc6b09f9 diff --git a/recipes-core/openjdk/openjdk-7-03b21/fix_hotspot_crosscompile.patch b/recipes-core/openjdk/openjdk-7-03b21/fix_hotspot_crosscompile.patch new file mode 100644 index 0000000..8d2d045 --- /dev/null +++ b/recipes-core/openjdk/openjdk-7-03b21/fix_hotspot_crosscompile.patch @@ -0,0 +1,51 @@ +Index: icedtea-2.1/acinclude.m4 +=================================================================== +--- icedtea-2.1.orig/acinclude.m4 ++++ icedtea-2.1/acinclude.m4 +@@ -909,6 +909,21 @@ AC_DEFUN([IT_WITH_PROJECT], + AM_CONDITIONAL([USE_JDK7], test x"${project}" = "xjdk7") + ]) + ++AC_DEFUN([AC_CHECK_WITH_CC_FOR_BUILD], ++[ ++ AC_MSG_CHECKING(for compiler used for subsidiary programs) ++ AC_ARG_WITH([cc-for-build], ++ [AS_HELP_STRING(--with-cc-for-build,specify the compiler for subsidiary (helper) programs)], ++ [ ++ CC_FOR_BUILD="${withval}" ++ ], ++ [ ++ CC_FOR_BUILD="\$(CC)" ++ ]) ++ AC_MSG_RESULT(${CC_FOR_BUILD}) ++ AC_SUBST(CC_FOR_BUILD) ++]) ++ + AC_DEFUN([IT_WITH_GCJ], + [ + AC_MSG_CHECKING([whether to compile ecj natively]) +Index: icedtea-2.1/configure.ac +=================================================================== +--- icedtea-2.1.orig/configure.ac ++++ icedtea-2.1/configure.ac +@@ -18,6 +18,8 @@ AC_PREFIX_DEFAULT([bootstrap]) + AC_PROG_CC + AC_PROG_CXX + ++AC_CHECK_WITH_CC_FOR_BUILD ++ + IT_FIND_TOOL([MAKE], [make]) + IT_FIND_TOOL([GZIP], [gzip]) + IT_FIND_TOOL([ANT], [ant]) +Index: icedtea-2.1/Makefile.am +=================================================================== +--- icedtea-2.1.orig/Makefile.am ++++ icedtea-2.1/Makefile.am +@@ -416,6 +416,7 @@ ICEDTEA_ENV = \ + JAVAC="" \ + JAVA_HOME="" \ + JDK_HOME="" \ ++ CC_FOR_BUILD="$(CC_FOR_BUILD)" \ + OE_CFLAGS="$(OE_CFLAGS)" \ + OE_CPPFLAGS="$(OE_CPPFLAGS)" \ + OE_CXXFLAGS="$(OE_CXXFLAGS)" \ diff --git a/recipes-core/openjdk/openjdk-7-03b21/icedtea-corba-parallel-make.patch b/recipes-core/openjdk/openjdk-7-03b21/icedtea-corba-parallel-make.patch new file mode 100644 index 0000000..09f7511 --- /dev/null +++ b/recipes-core/openjdk/openjdk-7-03b21/icedtea-corba-parallel-make.patch @@ -0,0 +1,31 @@ +diff --git openjdk/corba/make/Makefile openjdk/corba/make/Makefile +index aef5c1b..62e2216 100644 +--- openjdk/corba/make/Makefile ++++ openjdk/corba/make/Makefile +@@ -134,7 +134,7 @@ default: all + #----- classes.jar + + CLASSES_JAR = $(LIB_DIR)/classes.jar +-$(CLASSES_JAR): ++$(CLASSES_JAR): build + $(MKDIR) -p $(@D) + $(BOOT_JAR_CMD) -cf $@ -C $(CLASSES_DIR) . + +@@ -144,6 +144,7 @@ SRC_ZIP_FILES = $(shell $(FIND) $(SRC_CLASSES_DIR) \( -name \*-template \) -prun + + SRC_ZIP = $(LIB_DIR)/src.zip + $(SRC_ZIP): $(SRC_ZIP_FILES) ++ $(MKDIR) -p $(@D) + abs_src_zip=`cd $(@D) ; pwd`/$(@F) ; \ + ( cd $(SRC_CLASSES_DIR) ; $(FIND) . \( -name \*-template \) -prune -o -type f -print | $(ZIP) -q $$abs_src_zip -@ ) ; \ + ( cd $(GENSRC_DIR) ; $(FIND) . -type f -print | $(ZIP) -q $$abs_src_zip -@ ) ; +@@ -153,7 +154,8 @@ $(SRC_ZIP): $(SRC_ZIP_FILES) + BIN_ZIP_FILES = $(BUILD_DIR/lib/orb.idl $(BUILD_DIR)/lib/ir.idl + + BIN_ZIP = $(LIB_DIR)/bin.zip +-$(BIN_ZIP): $(BIN_ZIP_FILES) ++$(BIN_ZIP): build $(BIN_ZIP_FILES) ++ $(MKDIR) -p $(@D) + abs_bin_zip=`cd $(@D) ; pwd`/$(@F) ; \ + ( cd $(BUILD_DIR) ; $(FIND) lib -name "*.idl" -print | $(ZIP) -q $$abs_bin_zip -@ ) ; + diff --git a/recipes-core/openjdk/openjdk-7-03b21/icedtea-crosscompile-fix.patch b/recipes-core/openjdk/openjdk-7-03b21/icedtea-crosscompile-fix.patch new file mode 100644 index 0000000..9099d4c --- /dev/null +++ b/recipes-core/openjdk/openjdk-7-03b21/icedtea-crosscompile-fix.patch @@ -0,0 +1,342 @@ +--- openjdk/hotspot/make/linux/makefiles/buildtree.make ++++ openjdk/hotspot/make/linux/makefiles/buildtree.make +@@ -402,7 +402,7 @@ test_gamma: $(BUILDTREE_MAKE) $(GAMMADIR)/make/test/Queens.java + echo "rm -f Queens.class"; \ + echo "\$${JAVA_HOME}/bin/javac -d . $(GAMMADIR)/make/test/Queens.java"; \ + echo '[ -f gamma_g ] && { gamma=gamma_g; }'; \ +- echo './$${gamma:-gamma} $(TESTFLAGS) Queens < /dev/null'; \ ++ echo 'echo Silently skipping the execution of the gamma program'; \ + ) > $@ + $(QUIETLY) chmod +x $@ + +--- openjdk/hotspot/make/linux/makefiles/gcc.make ++++ openjdk/hotspot/make/linux/makefiles/gcc.make +@@ -160,7 +160,7 @@ CFLAGS_WARN/DEFAULT = $(WARNINGS_ARE_ERRORS) $(ACCEPTABLE_WARNINGS) + CFLAGS_WARN/BYFILE = $(CFLAGS_WARN/$@)$(CFLAGS_WARN/DEFAULT$(CFLAGS_WARN/$@)) + + # The flags to use for an Optimized g++ build +-OPT_CFLAGS += -O3 ++OPT_CFLAGS += $(OE_CFLAGS) + + # Hotspot uses very unstrict aliasing turn this optimization off + OPT_CFLAGS += -fno-strict-aliasing +@@ -204,15 +204,7 @@ LFLAGS += -Wl,-relax + endif + + # Enable linker optimization +-LFLAGS += -Xlinker -O1 +- +-# If this is a --hash-style=gnu system, use --hash-style=both +-# The gnu .hash section won't work on some Linux systems like SuSE 10. +-_HAS_HASH_STYLE_GNU:=$(shell $(CC) -dumpspecs | grep -- '--hash-style=gnu') +-ifneq ($(_HAS_HASH_STYLE_GNU),) +- LDFLAGS_HASH_STYLE = -Wl,--hash-style=both +-endif +-LFLAGS += $(LDFLAGS_HASH_STYLE) ++LFLAGS += $(OE_LDFLAGS) + + # Use $(MAPFLAG:FILENAME=real_file_name) to specify a map file. + MAPFLAG = -Xlinker --version-script=FILENAME +--- openjdk/hotspot/make/linux/makefiles/launcher.make ++++ openjdk/hotspot/make/linux/makefiles/launcher.make +@@ -50,8 +50,8 @@ ifeq ($(LINK_INTO),AOUT) + LIBS_LAUNCHER += $(STATIC_STDCXX) $(LIBS) + else + LAUNCHER.o = launcher.o +- LFLAGS_LAUNCHER += -L `pwd` +- LIBS_LAUNCHER += -l$(JVM) $(LIBS) ++ LFLAGS_LAUNCHER += -L `pwd` $(OE_LAUNCHER_LDFLAGS) $(OE_LDFLAGS) ++ LIBS_LAUNCHER += -l$(JVM) $(LIBS) -lstdc++ + endif + + LINK_LAUNCHER = $(LINK.c) +--- openjdk/hotspot/make/linux/makefiles/vm.make ++++ openjdk/hotspot/make/linux/makefiles/vm.make +@@ -272,6 +272,7 @@ ifeq ($(SHARK_BUILD), true) + LIBS_VM += $(LLVM_LIBS) + endif + ++LFLAGS_VM += $(OE_LDFLAGS) + LINK_VM = $(LINK_LIB.c) + + # rule for building precompiled header +--- openjdk/jdk/make/common/Defs-linux.gmk ++++ openjdk/jdk/make/common/Defs-linux.gmk +@@ -125,35 +125,13 @@ else + endif + endif + +-# +-# Default optimization +-# +- +-ifndef OPTIMIZATION_LEVEL +- ifeq ($(PRODUCT), java) +- OPTIMIZATION_LEVEL = HIGHER +- else +- OPTIMIZATION_LEVEL = LOWER +- endif +-endif +-ifndef FASTDEBUG_OPTIMIZATION_LEVEL +- FASTDEBUG_OPTIMIZATION_LEVEL = LOWER +-endif +- +-CC_OPT/NONE = +-CC_OPT/LOWER = -O2 +-CC_OPT/HIGHER = -O3 +-CC_OPT/HIGHEST = -O3 +- +-CC_OPT = $(CC_OPT/$(OPTIMIZATION_LEVEL)) +- + # For all platforms, do not omit the frame pointer register usage. + # We need this frame pointer to make it easy to walk the stacks. + # This should be the default on X86, but ia64 and amd64 may not have this + # as the default. + CFLAGS_REQUIRED_alpha += -mieee -D_LITTLE_ENDIAN + CFLAGS_REQUIRED_amd64 += -fno-omit-frame-pointer -D_LITTLE_ENDIAN +-CFLAGS_REQUIRED_arm += -D_LITTLE_ENDIAN ++CFLAGS_REQUIRED_arm += -fno-omit-frame-pointer -D_LITTLE_ENDIAN + CFLAGS_REQUIRED_hppa += + CFLAGS_REQUIRED_i586 += -fno-omit-frame-pointer -D_LITTLE_ENDIAN + CFLAGS_REQUIRED_ia64 += -fno-omit-frame-pointer -D_LITTLE_ENDIAN +@@ -232,7 +210,7 @@ ifeq ($(DEBUG_BINARIES), true) + CFLAGS_REQUIRED += $(DEBUG_FLAG) + endif + +-CFLAGS_OPT = $(CC_OPT) ++CFLAGS_OPT = $(OE_CFLAGS) + CFLAGS_DBG = $(DEBUG_FLAG) + CFLAGS_COMMON += $(CFLAGS_REQUIRED) + +@@ -308,7 +286,7 @@ LDFLAGS_COMMON += $(LDFLAGS_DEFS_OPTION) + # + # -L paths for finding and -ljava + # +-LDFLAGS_OPT = -Xlinker -O1 ++LDFLAGS_OPT = $(OE_LDFLAGS) + LDFLAGS_COMMON += -L$(LIBDIR)/$(LIBARCH) + LDFLAGS_COMMON += -Wl,-soname=$(LIB_PREFIX)$(LIBRARY).$(LIBRARY_SUFFIX) + +--- openjdk/jdk/make/sun/awt/mawt.gmk ++++ openjdk/jdk/make/sun/awt/mawt.gmk +@@ -151,22 +151,6 @@ else + #endif + + LIBXTST = -lXtst +-ifeq ($(PLATFORM), linux) +- ifeq ($(ARCH_DATA_MODEL), 64) +- # XXX what about the rest of them? +- LIBXT = -lXt +- else +- # Allows for builds on Debian GNU Linux, X11 is in a different place +- LIBXT = $(firstword $(wildcard $(OPENWIN_LIB)/libXt.a) \ +- $(wildcard /usr/lib/libXt.a)) +- LIBSM = $(firstword $(wildcard $(OPENWIN_LIB)/libSM.a) \ +- $(wildcard /usr/lib/libSM.a)) +- LIBICE = $(firstword $(wildcard $(OPENWIN_LIB)/libICE.a) \ +- $(wildcard /usr/lib/libICE.a)) +- LIBXTST = $(firstword $(wildcard $(OPENWIN_LIB)/libXtst.a) \ +- $(wildcard /usr/lib/libXtst.a)) +- endif +-endif + + # Use -lXmu for EditRes support + LIBXMU_DBG = -lXmu +@@ -181,7 +165,7 @@ ifeq ($(PLATFORM), linux) + OTHER_CFLAGS += -DMLIB_NO_LIBSUNMATH + # XXX what is this define below? Isn't it motif-related? + OTHER_CFLAGS += -DXMSTRINGDEFINES=1 +-OTHER_LDLIBS = $(LIBXMU) $(LIBXTST) -lXext $(LIBXT) $(LIBSM) $(LIBICE) -lX11 -lXi ++OTHER_LDLIBS = $(LIBXMU) $(LIBXTST) -lXext -lXt -lSM -lICE -lXi -lX11 + endif + + endif +@@ -230,12 +214,6 @@ else + CPPFLAGS += -I$(PLATFORM_SRC)/native/common/deps/fontconfig2 + endif + +-ifndef HEADLESS +-CPPFLAGS += -I$(OPENWIN_HOME)/include +-LDFLAGS += -L$(OPENWIN_LIB) +- +-endif # !HEADLESS +- + CPPFLAGS += -I$(SHARE_SRC)/native/$(PKGDIR)/debug \ + -I$(SHARE_SRC)/native/$(PKGDIR)/../font \ + -I$(PLATFORM_SRC)/native/$(PKGDIR)/../font \ +@@ -258,12 +236,6 @@ CPPFLAGS += -I$(SHARE_SRC)/native/$(PKGDIR)/debug \ + -I$(PLATFORM_SRC)/native/$(PKGDIR) \ + $(EVENT_MODEL) + +-ifeq ($(PLATFORM), linux) +- # Checking for the X11/extensions headers at the additional location +- CPPFLAGS += -I$(firstword $(wildcard $(OPENWIN_HOME)/include/X11/extensions) \ +- $(wildcard /usr/include/X11/extensions)) +-endif +- + ifeq ($(PLATFORM), solaris) + CPPFLAGS += -I$(OPENWIN_HOME)/include/X11/extensions + endif +diff --git openjdk/corba/make/common/shared/Platform.gmk openjdk/corba/make/common/shared/Platform.gmk +index e21f4d0..5f071a7 100644 +--- openjdk/corba/make/common/shared/Platform.gmk ++++ openjdk/corba/make/common/shared/Platform.gmk +@@ -152,9 +152,13 @@ ifeq ($(SYSTEM_UNAME), Linux) + OS_NAME = linux + OS_VERSION := $(shell uname -r) + # Arch and OS name/version +- mach := $(shell uname -m) +- ifneq (,$(wildcard /usr/bin/dpkg-architecture)) +- mach := $(shell (dpkg-architecture -qDEB_BUILD_ARCH_CPU 2>/dev/null || echo $(mach)) | sed 's/powerpc$$/ppc/;s/hppa/parisc/') ++ ifdef CROSS_COMPILE_ARCH ++ mach := $(CROSS_COMPILE_ARCH) ++ else ++ mach := $(shell uname -m) ++ ifneq (,$(wildcard /usr/bin/dpkg-architecture)) ++ mach := $(shell (dpkg-architecture -qDEB_BUILD_ARCH_CPU 2>/dev/null || echo $(mach)) | sed 's/powerpc$$/ppc/;s/hppa/parisc/') ++ endif + endif + archExpr = case "$(mach)" in \ + i[3-9]86) \ +diff --git openjdk/jdk/make/common/shared/Platform.gmk openjdk/jdk/make/common/shared/Platform.gmk +index 5b21888..3b9297f 100644 +--- openjdk/jdk/make/common/shared/Platform.gmk ++++ openjdk/jdk/make/common/shared/Platform.gmk +@@ -159,9 +159,9 @@ ifeq ($(SYSTEM_UNAME), Linux) + mach := $(CROSS_COMPILE_ARCH) + else + mach := $(shell uname -m) +- endif +- ifneq (,$(wildcard /usr/bin/dpkg-architecture)) +- mach := $(shell (dpkg-architecture -qDEB_BUILD_ARCH_CPU 2>/dev/null || echo $(mach)) | sed 's/powerpc$$/ppc/;s/hppa/parisc/') ++ ifneq (,$(wildcard /usr/bin/dpkg-architecture)) ++ mach := $(shell (dpkg-architecture -qDEB_BUILD_ARCH_CPU 2>/dev/null || echo $(mach)) | sed 's/powerpc$$/ppc/;s/hppa/parisc/') ++ endif + endif + archExpr = case "$(mach)" in \ + i[3-9]86) \ +diff --git openjdk/hotspot/make/linux/makefiles/build_vm_def.sh openjdk/hotspot/make/linux/makefiles/build_vm_def.sh +index ea81ff6..6a3765b 100644 +--- openjdk/hotspot/make/linux/makefiles/build_vm_def.sh ++++ openjdk/hotspot/make/linux/makefiles/build_vm_def.sh +@@ -1,10 +1,12 @@ + #!/bin/sh + + # If we're cross compiling use that path for nm +-if [ "$CROSS_COMPILE_ARCH" != "" ]; then +-NM=$ALT_COMPILER_PATH/nm +-else +-NM=nm ++if [ "$NM" == "" ]; then ++ if [ "$CROSS_COMPILE_ARCH" != "" ]; then ++ NM=$ALT_COMPILER_PATH/nm ++ else ++ NM=nm ++ fi + fi + + $NM --defined-only $* \ +diff --git openjdk/jdk/make/java/nio/Makefile openjdk/jdk/make/java/nio/Makefile +index 8130b9b..7906531 100644 +--- openjdk/jdk/make/java/nio/Makefile ++++ openjdk/jdk/make/java/nio/Makefile +@@ -834,8 +834,12 @@ else + $(SCH_GEN)/SocketOptionRegistry.java: $(GENSOR_EXE) + $(prep-target) + NAWK="$(NAWK)" SH="$(SH)" $(SH) -e addNotices.sh "$(SOR_COPYRIGHT_YEARS)" > $@ ++ifdef CROSS_COMPILE_ARCH ++ $(QEMU) $(GENSOR_EXE) >> $@ ++else + $(GENSOR_EXE) >> $@ + endif ++endif + # + # Generated sun.nio.cs SingleByte classes + # +@@ -869,8 +873,12 @@ else + $(SFS_GEN)/UnixConstants.java: $(GENUC_EXE) + $(prep-target) + NAWK="$(NAWK)" SH="$(SH)" $(SH) -e addNotices.sh "$(GENUC_COPYRIGHT_YEARS)" > $@ ++ifdef CROSS_COMPILE_ARCH ++ $(QEMU) $(GENUC_EXE) >> $@ ++else + $(GENUC_EXE) >> $@ + endif ++endif + + GENSC_SRC = $(PLATFORM_SRC)/native/sun/nio/fs/genSolarisConstants.c + +@@ -891,7 +899,11 @@ else + $(SFS_GEN)/SolarisConstants.java: $(GENSC_EXE) + $(prep-target) + NAWK="$(NAWK)" SH="$(SH)" $(SH) -e addNotices.sh "$(GENSC_COPYRIGHT_YEARS)" > $@ ++ifdef CROSS_COMPILE_ARCH ++ $(QEMU) $(GENSC_EXE) >> $@ ++else + $(GENSC_EXE) >> $@ + endif ++endif + + .PHONY: sources +diff --git openjdk/jdk/make/sun/xawt/Makefile openjdk/jdk/make/sun/xawt/Makefile +index e7d54e2..ce8819c 100644 +--- openjdk/jdk/make/sun/xawt/Makefile ++++ openjdk/jdk/make/sun/xawt/Makefile +@@ -188,20 +188,6 @@ else + CPPFLAGS += -I$(PLATFORM_SRC)/native/common/deps/glib2 + endif + +-ifeq ($(PLATFORM), linux) +- ifndef CROSS_COMPILE_ARCH +- # Allows for builds on Debian GNU Linux, X11 is in a different place +- # This should really be handled at a higher-level so we don't have to +- # work-around this when cross-compiling +- CPPFLAGS += -I/usr/X11R6/include/X11/extensions \ +- -I/usr/include/X11/extensions \ +- -I$(OPENWIN_HOME)/include +- else +- CPPFLAGS += -I$(OPENWIN_HOME)/include/X11/extensions \ +- -I$(OPENWIN_HOME)/include +- endif +-endif +- + # We have some odd logic here because some Solaris 10 updates + # have a render.h file that suggests gradients are supported, but + # the Xrender.h doesn't have the corresponding type definitions. +@@ -312,11 +298,7 @@ XLIBTYPES=$(PLATFORM_SRC)/classes/sun/awt/X11/generator/xlibtypes.txt + + $(SIZERS): $(SIZERS_C) + $(prep-target) +-ifndef CROSS_COMPILE_ARCH + $(CC) $(CFLAGS_$(subst .,,$(suffix $@))) $(CPPFLAGS) -o $@ $(SIZER)$(suffix $@).c +-else +- $(HOST_CC) $(CPPFLAGS) -o $@ $(SIZER)$(suffix $@).c +-endif + + $(WRAPPER_GENERATOR_CLASS): $(WRAPPER_GENERATOR_JAVA) + $(prep-target) +@@ -329,6 +311,16 @@ $(SIZERS_C): $(WRAPPER_GENERATOR_CLASS) $(XLIBTYPES) + $(SIZER_DIR) $(XLIBTYPES) "sizer" $(subst .,,$(suffix $(basename $@))) + + $(SIZES): $(SIZERS) ++ifdef CROSS_COMPILE_ARCH ++ @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 ++else + @if [ "$(DOHACK)$@" = "true$(PREDEFINED_SIZES)" ]; then \ + $(ECHO) COPYING $(PREDEFINED_SIZES_TMPL) into $@; \ + $(CP) $(PREDEFINED_SIZES_TMPL) $@; \ +@@ -337,6 +329,7 @@ $(SIZES): $(SIZERS) + $(ECHO) GENERATING $@; \ + $(WRAPPER_GENERATOR_DIR)/sizer$(suffix $@) > $@; \ + fi ++endif + @if [ "$(DOCOMPARE)$(suffix $@)" = "true.64" ]; then \ + $(ECHO) COMPARING $@ and $(STORED_SIZES_TMPL_$(PLATFORM)_$(LIBARCH)); \ + $(DIFF) $@ $(STORED_SIZES_TMPL_$(PLATFORM)_$(LIBARCH)); \ diff --git a/recipes-core/openjdk/openjdk-7-03b21/icedtea-crosscompile-fix.patch.new b/recipes-core/openjdk/openjdk-7-03b21/icedtea-crosscompile-fix.patch.new new file mode 100644 index 0000000..c14d378 --- /dev/null +++ b/recipes-core/openjdk/openjdk-7-03b21/icedtea-crosscompile-fix.patch.new @@ -0,0 +1,62 @@ +diff --git a/jdk/make/sun/awt/mawt.gmk b/jdk/make/sun/awt/mawt.gmk +index 45e8349..ed452ba 100644 +--- a/jdk/make/sun/awt/mawt.gmk ++++ b/jdk/make/sun/awt/mawt.gmk +@@ -151,22 +151,6 @@ else + #endif + + LIBXTST = -lXtst +-ifeq ($(PLATFORM), linux) +- ifeq ($(ARCH_DATA_MODEL), 64) +- # XXX what about the rest of them? +- LIBXT = -lXt +- else +- # Allows for builds on Debian GNU Linux, X11 is in a different place +- LIBXT = $(firstword $(wildcard $(OPENWIN_LIB)/libXt.a) \ +- $(wildcard /usr/lib/libXt.a)) +- LIBSM = $(firstword $(wildcard $(OPENWIN_LIB)/libSM.a) \ +- $(wildcard /usr/lib/libSM.a)) +- LIBICE = $(firstword $(wildcard $(OPENWIN_LIB)/libICE.a) \ +- $(wildcard /usr/lib/libICE.a)) +- LIBXTST = $(firstword $(wildcard $(OPENWIN_LIB)/libXtst.a) \ +- $(wildcard /usr/lib/libXtst.a)) +- endif +-endif + + # Use -lXmu for EditRes support + LIBXMU_DBG = -lXmu +@@ -181,7 +165,7 @@ ifeq ($(PLATFORM), linux) + OTHER_CFLAGS += -DMLIB_NO_LIBSUNMATH + # XXX what is this define below? Isn't it motif-related? + OTHER_CFLAGS += -DXMSTRINGDEFINES=1 +-OTHER_LDLIBS = $(LIBXMU) $(LIBXTST) -lXext $(LIBXT) $(LIBSM) $(LIBICE) -lX11 -lXi ++OTHER_LDLIBS = $(LIBXMU) $(LIBXTST) -lXext -lXt -lSM -lICE -lXi -lX11 + endif + + endif +@@ -230,12 +214,6 @@ else + CPPFLAGS += -I$(PLATFORM_SRC)/native/common/deps/fontconfig2 + endif + +-ifndef HEADLESS +-CPPFLAGS += -I$(OPENWIN_HOME)/include +-LDFLAGS += -L$(OPENWIN_LIB) +- +-endif # !HEADLESS +- + CPPFLAGS += -I$(SHARE_SRC)/native/$(PKGDIR)/debug \ + -I$(SHARE_SRC)/native/$(PKGDIR)/../font \ + -I$(PLATFORM_SRC)/native/$(PKGDIR)/../font \ +@@ -258,12 +236,6 @@ CPPFLAGS += -I$(SHARE_SRC)/native/$(PKGDIR)/debug \ + -I$(PLATFORM_SRC)/native/$(PKGDIR) \ + $(EVENT_MODEL) + +-ifeq ($(PLATFORM), linux) +- # Checking for the X11/extensions headers at the additional location +- CPPFLAGS += -I$(firstword $(wildcard $(OPENWIN_HOME)/include/X11/extensions) \ +- $(wildcard /usr/include/X11/extensions)) +-endif +- + ifeq ($(PLATFORM), solaris) + CPPFLAGS += -I$(OPENWIN_HOME)/include/X11/extensions + endif diff --git a/recipes-core/openjdk/openjdk-7-03b21/icedtea-fix-xrender.patch b/recipes-core/openjdk/openjdk-7-03b21/icedtea-fix-xrender.patch new file mode 100644 index 0000000..4bd8b2c --- /dev/null +++ b/recipes-core/openjdk/openjdk-7-03b21/icedtea-fix-xrender.patch @@ -0,0 +1,13 @@ +Index: openjdk/jdk/src/solaris/native/sun/java2d/x11/XRSurfaceData.c +=================================================================== +--- openjdk.orig/jdk/src/solaris/native/sun/java2d/x11/XRSurfaceData.c 2011-10-19 16:56:03.014276748 +0200 ++++ openjdk/jdk/src/solaris/native/sun/java2d/x11/XRSurfaceData.c 2011-10-19 16:57:19.942658211 +0200 +@@ -29,7 +29,7 @@ + #include "X11SurfaceData.h" + + /*#include */ +-#include ++#include + + #ifndef RepeatNone /* added in 0.10 */ + #define RepeatNone 0 diff --git a/recipes-core/openjdk/openjdk-7-03b21/icedtea-hostbuildcc.patch b/recipes-core/openjdk/openjdk-7-03b21/icedtea-hostbuildcc.patch new file mode 100644 index 0000000..5f2c98b --- /dev/null +++ b/recipes-core/openjdk/openjdk-7-03b21/icedtea-hostbuildcc.patch @@ -0,0 +1,12 @@ +Index: openjdk/hotspot/make/linux/makefiles/rules.make +=================================================================== +--- openjdk/hotspot/make/linux/makefiles/rules.make 2010-02-02 02:22:33.201668748 +0100 ++++ openjdk/hotspot/make/linux/makefiles/rules.make 2010-02-02 02:23:08.480415783 +0100 +@@ -39,6 +39,7 @@ + # $(CC) is the c compiler (cc/gcc), $(CCC) is the c++ compiler (CC/g++). + C_COMPILE = $(CC) $(CPPFLAGS) $(CFLAGS) + CC_COMPILE = $(CCC) $(CPPFLAGS) $(CFLAGS) ++CC_HOST_COMPILE = $(BUILD_CC) $(CPPFLAGS) $(CFLAGS) + + AS.S = $(AS) $(ASFLAGS) + diff --git a/recipes-core/openjdk/openjdk-7-03b21/icedtea-hotspot-dlvsym-uclibc.patch b/recipes-core/openjdk/openjdk-7-03b21/icedtea-hotspot-dlvsym-uclibc.patch new file mode 100644 index 0000000..657f722 --- /dev/null +++ b/recipes-core/openjdk/openjdk-7-03b21/icedtea-hotspot-dlvsym-uclibc.patch @@ -0,0 +1,16 @@ +Index: openjdk/hotspot/src/os/linux/vm/os_linux.cpp +=================================================================== +--- openjdk/hotspot/src/os/linux/vm/os_linux.cpp 2011-12-20 19:15:05.000000000 +0100 ++++ openjdk/hotspot/src/os/linux/vm/os_linux.cpp 2011-12-20 19:18:22.411503442 +0100 +@@ -2593,10 +2593,7 @@ + // If we are running with earlier version, which did not have symbol versions, + // we should use the base version. + void* os::Linux::libnuma_dlsym(void* handle, const char *name) { +- void *f = dlvsym(handle, name, "libnuma_1.1"); +- if (f == NULL) { +- f = dlsym(handle, name); +- } ++ void *f = dlsym(handle, name); + return f; + } + diff --git a/recipes-core/openjdk/openjdk-7-03b21/icedtea-hotspot-glibc-version.patch b/recipes-core/openjdk/openjdk-7-03b21/icedtea-hotspot-glibc-version.patch new file mode 100644 index 0000000..faa90ea --- /dev/null +++ b/recipes-core/openjdk/openjdk-7-03b21/icedtea-hotspot-glibc-version.patch @@ -0,0 +1,23 @@ +Index: icedtea6-1.8/build/openjdk/hotspot/src/os/linux/vm/os_linux.cpp +=================================================================== +--- openjdk/hotspot/src/os/linux/vm/os_linux.cpp 2010-06-09 22:22:13.696298239 +0200 ++++ openjdk/hotspot/src/os/linux/vm/os_linux.cpp 2010-06-09 22:24:15.308790737 +0200 +@@ -49,7 +49,6 @@ + # include + # include + # include +-# include + # include + # include + # include +@@ -544,9 +543,7 @@ + os::Linux::set_glibc_version(str); + } else { + // _CS_GNU_LIBC_VERSION is not supported, try gnu_get_libc_version() +- static char _gnu_libc_version[32]; +- jio_snprintf(_gnu_libc_version, sizeof(_gnu_libc_version), +- "glibc %s %s", gnu_get_libc_version(), gnu_get_libc_release()); ++ static char _gnu_libc_version[32] = "2.9"; + os::Linux::set_glibc_version(_gnu_libc_version); + } + diff --git a/recipes-core/openjdk/openjdk-7-03b21/icedtea-hotspot-isfinte.patch b/recipes-core/openjdk/openjdk-7-03b21/icedtea-hotspot-isfinte.patch new file mode 100644 index 0000000..7c5da59 --- /dev/null +++ b/recipes-core/openjdk/openjdk-7-03b21/icedtea-hotspot-isfinte.patch @@ -0,0 +1,15 @@ +Index: icedtea6-1.8/build/openjdk/hotspot/src/share/vm/utilities/globalDefinitions_gcc.hpp +=================================================================== +--- openjdk/hotspot/src/share/vm/utilities/globalDefinitions_gcc.hpp 2010-06-09 21:41:28.576131825 +0200 ++++ openjdk/hotspot/src/share/vm/utilities/globalDefinitions_gcc.hpp 2010-06-09 21:41:55.555711815 +0200 +@@ -235,8 +235,8 @@ + + // Checking for finiteness + +-inline int g_isfinite(jfloat f) { return finite(f); } +-inline int g_isfinite(jdouble f) { return finite(f); } ++inline int g_isfinite(jfloat f) { return isfinite(f); } ++inline int g_isfinite(jdouble f) { return isfinite(f); } + + + // Wide characters diff --git a/recipes-core/openjdk/openjdk-7-03b21/icedtea-hotspot-isnanf.patch b/recipes-core/openjdk/openjdk-7-03b21/icedtea-hotspot-isnanf.patch new file mode 100644 index 0000000..494e965 --- /dev/null +++ b/recipes-core/openjdk/openjdk-7-03b21/icedtea-hotspot-isnanf.patch @@ -0,0 +1,21 @@ +Index: icedtea6-1.8/build/openjdk/hotspot/src/share/vm/utilities/globalDefinitions_gcc.hpp +=================================================================== +--- openjdk/hotspot/src/share/vm/utilities/globalDefinitions_gcc.hpp 2010-06-09 21:47:12.695674808 +0200 ++++ openjdk/hotspot/src/share/vm/utilities/globalDefinitions_gcc.hpp 2010-06-09 21:48:08.699007491 +0200 +@@ -220,14 +220,14 @@ + // checking for nanness + #ifdef SOLARIS + #ifdef SPARC +-inline int g_isnan(float f) { return isnanf(f); } ++inline int g_isnan(float f) { return __isnanf(f); } + #else + // isnanf() broken on Intel Solaris use isnand() + inline int g_isnan(float f) { return isnand(f); } + #endif + inline int g_isnan(double f) { return isnand(f); } + #elif LINUX +-inline int g_isnan(float f) { return isnanf(f); } ++inline int g_isnan(float f) { return __isnanf(f); } + inline int g_isnan(double f) { return isnan(f); } + #else + #error "missing platform-specific definition here" diff --git a/recipes-core/openjdk/openjdk-7-03b21/icedtea-hotspot-loadavg.patch b/recipes-core/openjdk/openjdk-7-03b21/icedtea-hotspot-loadavg.patch new file mode 100644 index 0000000..7da41fd --- /dev/null +++ b/recipes-core/openjdk/openjdk-7-03b21/icedtea-hotspot-loadavg.patch @@ -0,0 +1,28 @@ +Index: icedtea6-1.8/build/openjdk/hotspot/src/os/linux/vm/os_linux.cpp +=================================================================== +--- openjdk/hotspot/src/os/linux/vm/os_linux.cpp 2010-06-09 22:16:09.406334411 +0200 ++++ openjdk/hotspot/src/os/linux/vm/os_linux.cpp 2010-06-09 22:19:38.952152043 +0200 +@@ -4325,7 +4325,22 @@ + // Linux doesn't yet have a (official) notion of processor sets, + // so just return the system wide load average. + int os::loadavg(double loadavg[], int nelem) { +- return ::getloadavg(loadavg, nelem); ++ ++ FILE *LOADAVG; ++ double avg[3] = { 0.0, 0.0, 0.0 }; ++ int i, res = -1;; ++ ++ if ((LOADAVG = fopen("/proc/loadavg", "r"))) { ++ fscanf(LOADAVG, "%lf %lf %lf", &avg[0], &avg[1], &avg[2]); ++ res = 0; ++ fclose(LOADAVG); ++ } ++ ++ for (i = 0; (i < nelem) && (i < 3); i++) { ++ loadavg[i] = avg[i]; ++ } ++ ++ return res; + } + + void os::pause() { diff --git a/recipes-core/openjdk/openjdk-7-03b21/icedtea-jdk-iconv-uclibc.patch b/recipes-core/openjdk/openjdk-7-03b21/icedtea-jdk-iconv-uclibc.patch new file mode 100644 index 0000000..68f8581 --- /dev/null +++ b/recipes-core/openjdk/openjdk-7-03b21/icedtea-jdk-iconv-uclibc.patch @@ -0,0 +1,39 @@ +Index: openjdk/jdk/make/java/npt/Makefile +=================================================================== +--- openjdk/jdk/make/java/npt/Makefile 2010-06-13 15:11:02.598512448 +0200 ++++ openjdk/jdk/make/java/npt/Makefile 2010-06-13 15:11:28.504759286 +0200 +@@ -65,6 +65,8 @@ + # We don't want to link against -ljava + JAVALIB= + ++LDLIBS += -liconv ++ + # Add -export options to explicitly spell exported symbols + ifeq ($(PLATFORM), windows) + OTHER_LCF += -export:nptInitialize -export:nptTerminate +Index: icedtea6-1.8/openjdk-ecj/jdk/make/java/instrument/Makefile +=================================================================== +--- openjdk/jdk/make/java/instrument/Makefile 2010-06-13 15:12:14.688505195 +0200 ++++ openjdk/jdk/make/java/instrument/Makefile 2010-06-13 15:12:32.641425670 +0200 +@@ -123,6 +123,8 @@ + # We don't want to link against -ljava + JAVALIB= + ++LDLIBS += -liconv ++ + # + # Add to ambient vpath so we pick up the library files + # +Index: openjdk/jdk/make/sun/splashscreen/Makefile +=================================================================== +--- openjdk/jdk/make/sun/splashscreen/Makefile 2010-06-13 15:12:48.951840824 +0200 ++++ openjdk/jdk/make/sun/splashscreen/Makefile 2010-06-13 15:13:01.191422891 +0200 +@@ -55,6 +55,8 @@ + + JAVALIB= + ++LDLIBS += -liconv ++ + # + # C Flags + # diff --git a/recipes-core/openjdk/openjdk-7-03b21/icedtea-jdk-nio-use-host-cc.patch b/recipes-core/openjdk/openjdk-7-03b21/icedtea-jdk-nio-use-host-cc.patch new file mode 100644 index 0000000..6b14673 --- /dev/null +++ b/recipes-core/openjdk/openjdk-7-03b21/icedtea-jdk-nio-use-host-cc.patch @@ -0,0 +1,89 @@ +diff --git openjdk/jdk/make/java/nio/Makefile openjdk/jdk/make/java/nio/Makefile +index 7906531..afa5d46 100644 +--- openjdk/jdk/make/java/nio/Makefile ++++ openjdk/jdk/make/java/nio/Makefile +@@ -823,7 +823,7 @@ $(TEMPDIR)/$(GENSOR_SRC) : $(GENSOR_SRC) + + $(GENSOR_EXE) : $(TEMPDIR)/$(GENSOR_SRC) + $(prep-target) +- ($(CD) $(TEMPDIR); $(CC) $(CPPFLAGS) $(LDDFLAGS) \ ++ ($(CD) $(TEMPDIR); $(CC_FOR_BUILD) $(CPPFLAGS) $(LDDFLAGS) \ + -o genSocketOptionRegistry$(EXE_SUFFIX) $(GENSOR_SRC)) + + ifdef NIO_PLATFORM_CLASSES_ROOT_DIR +@@ -834,12 +834,8 @@ else + $(SCH_GEN)/SocketOptionRegistry.java: $(GENSOR_EXE) + $(prep-target) + NAWK="$(NAWK)" SH="$(SH)" $(SH) -e addNotices.sh "$(SOR_COPYRIGHT_YEARS)" > $@ +-ifdef CROSS_COMPILE_ARCH +- $(QEMU) $(GENSOR_EXE) >> $@ +-else + $(GENSOR_EXE) >> $@ + endif +-endif + # + # Generated sun.nio.cs SingleByte classes + # +@@ -863,7 +859,7 @@ GENUC_COPYRIGHT_YEARS = $(shell $(CAT) $(GENUC_SRC) | \ + + $(GENUC_EXE) : $(GENUC_SRC) + $(prep-target) +- $(CC) $(CPPFLAGS) -o $@ $(GENUC_SRC) ++ $(CC_FOR_BUILD) $(CPPFLAGS) -o $@ $(GENUC_SRC) + + ifdef NIO_PLATFORM_CLASSES_ROOT_DIR + $(SFS_GEN)/UnixConstants.java: $(NIO_PLATFORM_CLASSES_ROOT_DIR)/sun/nio/fs/UnixConstants-$(PLATFORM)-$(ARCH).java +@@ -873,12 +869,8 @@ else + $(SFS_GEN)/UnixConstants.java: $(GENUC_EXE) + $(prep-target) + NAWK="$(NAWK)" SH="$(SH)" $(SH) -e addNotices.sh "$(GENUC_COPYRIGHT_YEARS)" > $@ +-ifdef CROSS_COMPILE_ARCH +- $(QEMU) $(GENUC_EXE) >> $@ +-else + $(GENUC_EXE) >> $@ + endif +-endif + + GENSC_SRC = $(PLATFORM_SRC)/native/sun/nio/fs/genSolarisConstants.c + +@@ -889,7 +881,7 @@ GENSC_COPYRIGHT_YEARS = $(shell $(CAT) $(GENSC_SRC) | \ + + $(GENSC_EXE) : $(GENSC_SRC) + $(prep-target) +- $(CC) $(CPPFLAGS) -o $@ $(GENSC_SRC) ++ $(CC_FOR_BUILD) $(CPPFLAGS) -o $@ $(GENSC_SRC) + + ifdef NIO_PLATFORM_CLASSES_ROOT_DIR + $(SFS_GEN)/SolarisConstants.java: $(NIO_PLATFORM_CLASSES_ROOT_DIR)/sun/nio/fs/SolarisConstants-$(PLATFORM)-$(ARCH).java +@@ -899,11 +891,7 @@ else + $(SFS_GEN)/SolarisConstants.java: $(GENSC_EXE) + $(prep-target) + NAWK="$(NAWK)" SH="$(SH)" $(SH) -e addNotices.sh "$(GENSC_COPYRIGHT_YEARS)" > $@ +-ifdef CROSS_COMPILE_ARCH +- $(QEMU) $(GENSC_EXE) >> $@ +-else + $(GENSC_EXE) >> $@ + endif +-endif + + .PHONY: sources +--- openjdk/jdk/make/sun/Makefile.khem 2012-08-10 19:32:40.695550897 -0700 ++++ openjdk/jdk/make/sun/Makefile 2012-08-10 19:33:39.195550853 -0700 +@@ -55,7 +55,7 @@ ifneq ($(PLATFORM), windows) + endif + endif + HEADLESS_SUBDIR = headless +- XAWT_SUBDIR = xawt ++ XAWT_SUBDIR = + endif + + ifndef OPENJDK +@@ -79,7 +79,7 @@ else + endif + SUBDIRS_desktop = audio $(RENDER_SUBDIR) image \ + $(DISPLAY_LIBS) $(DGA_SUBDIR) \ +- jawt font jpeg cmm $(DISPLAY_TOOLS) beans ++ font jpeg cmm $(DISPLAY_TOOLS) beans + SUBDIRS_management = management + SUBDIRS_misc = $(ORG_SUBDIR) rmi $(JDBC_SUBDIR) tracing + SUBDIRS_tools = native2ascii serialver tools jconsole diff --git a/recipes-core/openjdk/openjdk-7-03b21/icedtea-jdk-ppc64-jvm-cfg.patch b/recipes-core/openjdk/openjdk-7-03b21/icedtea-jdk-ppc64-jvm-cfg.patch new file mode 100644 index 0000000..5bb7604 --- /dev/null +++ b/recipes-core/openjdk/openjdk-7-03b21/icedtea-jdk-ppc64-jvm-cfg.patch @@ -0,0 +1,41 @@ +--- /dev/null 2012-07-25 13:25:05.651551001 -0700 ++++ openjdk/jdk/src/solaris/bin/ppc64/jvm.cfg 2012-08-10 23:59:02.651551157 -0700 +@@ -0,0 +1,38 @@ ++# Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved. ++# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ++# ++# This code is free software; you can redistribute it and/or modify it ++# under the terms of the GNU General Public License version 2 only, as ++# published by the Free Software Foundation. Oracle designates this ++# particular file as subject to the "Classpath" exception as provided ++# by Oracle in the LICENSE file that accompanied this code. ++# ++# This code is distributed in the hope that it will be useful, but WITHOUT ++# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ++# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ++# version 2 for more details (a copy is included in the LICENSE file that ++# accompanied this code). ++# ++# You should have received a copy of the GNU General Public License version ++# 2 along with this work; if not, write to the Free Software Foundation, ++# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. ++# ++# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA ++# or visit www.oracle.com if you need additional information or have any ++# questions. ++# ++# List of JVMs that can be used as an option to java, javac, etc. ++# Order is important -- first in this list is the default JVM. ++# NOTE that this both this file and its format are UNSUPPORTED and ++# WILL GO AWAY in a future release. ++# ++# You may also select a JVM in an arbitrary location with the ++# "-XXaltjvm=" option, but that too is unsupported ++# and may not be available in a future release. ++# ++-client KNOWN ++-server KNOWN ++-hotspot ERROR ++-classic WARN ++-native ERROR ++-green ERROR diff --git a/recipes-core/openjdk/openjdk-7-03b21/icedtea-jdk-remove-unused-backtrace.patch b/recipes-core/openjdk/openjdk-7-03b21/icedtea-jdk-remove-unused-backtrace.patch new file mode 100644 index 0000000..5423fde --- /dev/null +++ b/recipes-core/openjdk/openjdk-7-03b21/icedtea-jdk-remove-unused-backtrace.patch @@ -0,0 +1,41 @@ +Index: openjdk/jdk/src/solaris/native/sun/xawt/XToolkit.c +=================================================================== +--- openjdk/jdk/src/solaris/native/sun/xawt/XToolkit.c 2010-08-05 16:45:56.607257503 +0200 ++++ openjdk/jdk/src/solaris/native/sun/xawt/XToolkit.c 2010-08-05 16:47:19.727254686 +0200 +@@ -27,9 +27,6 @@ + #include + #include + #include +-#ifdef __linux__ +-#include +-#endif + + #include + #include +@@ -689,26 +686,6 @@ + return ret; + } + +-#ifdef __linux__ +-void print_stack(void) +-{ +- void *array[10]; +- size_t size; +- char **strings; +- size_t i; +- +- size = backtrace (array, 10); +- strings = backtrace_symbols (array, size); +- +- fprintf (stderr, "Obtained %zd stack frames.\n", size); +- +- for (i = 0; i < size; i++) +- fprintf (stderr, "%s\n", strings[i]); +- +- free (strings); +-} +-#endif +- + Window get_xawt_root_shell(JNIEnv *env) { + static jclass classXRootWindow = NULL; + static jmethodID methodGetXRootWindow = NULL; diff --git a/recipes-core/openjdk/openjdk-7-03b21/icedtea-jdk-unpack-uclibc.patch b/recipes-core/openjdk/openjdk-7-03b21/icedtea-jdk-unpack-uclibc.patch new file mode 100644 index 0000000..7e98767 --- /dev/null +++ b/recipes-core/openjdk/openjdk-7-03b21/icedtea-jdk-unpack-uclibc.patch @@ -0,0 +1,10 @@ +--- openjdk/jdk/make/com/sun/java/pack/Makefile ++++ openjdk/jdk/make/com/sun/java/pack/Makefile +@@ -103,6 +103,7 @@ else + OTHER_LDLIBS += -lc $(LIBCXX) + # setup the list of libraries to link in... + ifeq ($(PLATFORM), linux) ++ OTHER_LDLIBS += -lpthread + ifeq ("$(CC_VER_MAJOR)", "3") + OTHER_LDLIBS += -Wl,-Bstatic -lgcc_eh -Wl,-Bdynamic + endif diff --git a/recipes-core/openjdk/openjdk-7-03b21/icedtea-launcher-stdc++.patch b/recipes-core/openjdk/openjdk-7-03b21/icedtea-launcher-stdc++.patch new file mode 100644 index 0000000..b97745d --- /dev/null +++ b/recipes-core/openjdk/openjdk-7-03b21/icedtea-launcher-stdc++.patch @@ -0,0 +1,13 @@ +Index: openjdk/hotspot/make/linux/makefiles/launcher.make +=================================================================== +--- openjdk/hotspot/make/linux/makefiles/launcher.make 2011-12-20 10:33:37.000000000 +0100 ++++ openjdk/hotspot/make/linux/makefiles/launcher.make 2011-12-20 10:37:54.055022618 +0100 +@@ -51,7 +51,7 @@ + else + LAUNCHER.o = launcher.o + LFLAGS_LAUNCHER += -L `pwd` +- LIBS_LAUNCHER += -l$(JVM) $(LIBS) ++ LIBS_LAUNCHER += -l$(JVM) $(LIBS) -lstdc++ + ifeq ($(SHARK_BUILD), true) + LFLAGS_LAUNCHER += $(LLVM_LDFLAGS) + LIBS_LAUNCHER += $(LLVM_LIBS) diff --git a/recipes-core/openjdk/openjdk-7-03b21/icedtea-libnet-renaming.patch b/recipes-core/openjdk/openjdk-7-03b21/icedtea-libnet-renaming.patch new file mode 100644 index 0000000..f590577 --- /dev/null +++ b/recipes-core/openjdk/openjdk-7-03b21/icedtea-libnet-renaming.patch @@ -0,0 +1,154 @@ +Index: openjdk/jdk/make/java/net/Makefile +=================================================================== +--- openjdk/jdk/make/java/net/Makefile 2010-07-05 12:28:58.476625401 +0200 ++++ openjdk/jdk/make/java/net/Makefile 2010-07-05 12:29:11.876625138 +0200 +@@ -25,7 +25,7 @@ + + BUILDDIR = ../.. + PACKAGE = java.net +-LIBRARY = net ++LIBRARY = javanet + PRODUCT = sun + include $(BUILDDIR)/common/Defs.gmk + +Index: openjdk/jdk/src/share/classes/java/net/AbstractPlainDatagramSocketImpl.java +=================================================================== +--- openjdk/jdk/src/share/classes/java/net/AbstractPlainDatagramSocketImpl.java 2010-07-05 17:40:56.467876415 +0200 ++++ openjdk/jdk/src/share/classes/java/net/AbstractPlainDatagramSocketImpl.java 2010-07-05 17:41:43.326628410 +0200 +@@ -58,7 +58,7 @@ + */ + static { + java.security.AccessController.doPrivileged( +- new sun.security.action.LoadLibraryAction("net")); ++ new sun.security.action.LoadLibraryAction("javanet")); + } + + /** +Index: openjdk/jdk/src/share/classes/java/net/AbstractPlainSocketImpl.java +=================================================================== +--- openjdk/jdk/src/share/classes/java/net/AbstractPlainSocketImpl.java 2010-07-05 17:41:01.027875484 +0200 ++++ openjdk/jdk/src/share/classes/java/net/AbstractPlainSocketImpl.java 2010-07-05 17:41:56.826626386 +0200 +@@ -74,7 +74,7 @@ + */ + static { + java.security.AccessController.doPrivileged( +- new sun.security.action.LoadLibraryAction("net")); ++ new sun.security.action.LoadLibraryAction("javanet")); + } + + /** +Index: openjdk/jdk/src/share/classes/java/net/DatagramPacket.java +=================================================================== +--- openjdk/jdk/src/share/classes/java/net/DatagramPacket.java 2010-07-05 17:41:02.017875980 +0200 ++++ openjdk/jdk/src/share/classes/java/net/DatagramPacket.java 2010-07-05 17:42:06.057875677 +0200 +@@ -47,7 +47,7 @@ + */ + static { + java.security.AccessController.doPrivileged( +- new sun.security.action.LoadLibraryAction("net")); ++ new sun.security.action.LoadLibraryAction("javanet")); + init(); + } + +Index: openjdk/jdk/src/share/classes/java/net/InetAddress.java +=================================================================== +--- openjdk/jdk/src/share/classes/java/net/InetAddress.java 2010-07-05 17:41:02.756626429 +0200 ++++ openjdk/jdk/src/share/classes/java/net/InetAddress.java 2010-07-05 17:42:15.997875786 +0200 +@@ -230,7 +230,7 @@ + static { + preferIPv6Address = java.security.AccessController.doPrivileged( + new GetBooleanAction("java.net.preferIPv6Addresses")).booleanValue(); +- AccessController.doPrivileged(new LoadLibraryAction("net")); ++ AccessController.doPrivileged(new LoadLibraryAction("javanet")); + init(); + } + +Index: openjdk/jdk/src/share/classes/java/net/NetworkInterface.java +=================================================================== +--- openjdk/jdk/src/share/classes/java/net/NetworkInterface.java 2010-07-05 17:41:03.547875282 +0200 ++++ openjdk/jdk/src/share/classes/java/net/NetworkInterface.java 2010-07-05 17:42:22.647875475 +0200 +@@ -52,7 +52,7 @@ + private boolean virtual = false; + + static { +- AccessController.doPrivileged(new LoadLibraryAction("net")); ++ AccessController.doPrivileged(new LoadLibraryAction("javanet")); + init(); + } + +Index: openjdk/jdk/src/share/classes/sun/net/spi/DefaultProxySelector.java +=================================================================== +--- openjdk/jdk/src/share/classes/sun/net/spi/DefaultProxySelector.java 2010-07-05 17:41:04.306628153 +0200 ++++ openjdk/jdk/src/share/classes/sun/net/spi/DefaultProxySelector.java 2010-07-05 17:42:32.666627264 +0200 +@@ -89,7 +89,7 @@ + }}); + if (b != null && b.booleanValue()) { + java.security.AccessController.doPrivileged( +- new sun.security.action.LoadLibraryAction("net")); ++ new sun.security.action.LoadLibraryAction("javanet")); + hasSystemProxies = init(); + } + } +Index: henning/bug/com.buglabs.build.oe/tmp/work/armv7a-angstrom-linux-gnueabi/openjdk-6-jre-6b18-1.8-r3.3/openjdk-src-dir/jdk/src/share/classes/sun/nio/ch/Util.java +=================================================================== +--- openjdk/jdk/src/share/classes/sun/nio/ch/Util.java 2010-07-05 17:41:05.086626745 +0200 ++++ openjdk/jdk/src/share/classes/sun/nio/ch/Util.java 2010-07-05 17:42:39.266626410 +0200 +@@ -354,7 +354,7 @@ + return; + loaded = true; + java.security.AccessController +- .doPrivileged(new sun.security.action.LoadLibraryAction("net")); ++ .doPrivileged(new sun.security.action.LoadLibraryAction("javanet")); + java.security.AccessController + .doPrivileged(new sun.security.action.LoadLibraryAction("nio")); + // IOUtil must be initialized; Its native methods are called from +Index: openjdk/jdk/src/solaris/classes/sun/net/dns/ResolverConfigurationImpl.java +=================================================================== +--- openjdk/jdk/src/solaris/classes/sun/net/dns/ResolverConfigurationImpl.java 2010-07-05 17:41:05.896626691 +0200 ++++ openjdk/jdk/src/solaris/classes/sun/net/dns/ResolverConfigurationImpl.java 2010-07-05 17:42:45.606625991 +0200 +@@ -244,7 +244,7 @@ + + static { + java.security.AccessController.doPrivileged( +- new sun.security.action.LoadLibraryAction("net")); ++ new sun.security.action.LoadLibraryAction("javanet")); + } + + } +Index: henning/bug/com.buglabs.build.oe/tmp/work/armv7a-angstrom-linux-gnueabi/openjdk-6-jre-6b18-1.8-r3.3/openjdk-src-dir/jdk/src/windows/classes/sun/net/dns/ResolverConfigurationImpl.java +=================================================================== +--- openjdk/jdk/src/windows/classes/sun/net/dns/ResolverConfigurationImpl.java 2010-07-05 17:41:06.786627210 +0200 ++++ openjdk/jdk/src/windows/classes/sun/net/dns/ResolverConfigurationImpl.java 2010-07-05 17:42:51.926627747 +0200 +@@ -160,7 +160,7 @@ + + static { + java.security.AccessController.doPrivileged( +- new sun.security.action.LoadLibraryAction("net")); ++ new sun.security.action.LoadLibraryAction("javanet")); + init0(); + + // start the address listener thread +--- openjdk/jdk/make/java/nio/Makefile ++++ openjdk/jdk/make/java/nio/Makefile +@@ -282,7 +282,7 @@ ifeq ($(PLATFORM),windows) + endif + + ifeq ($(PLATFORM), linux) +-OTHER_LDLIBS += -L$(LIBDIR)/$(LIBARCH) -ljava -lnet -lpthread -ldl ++OTHER_LDLIBS += -L$(LIBDIR)/$(LIBARCH) -ljava -ljavanet -lpthread -ldl + ifdef USE_SYSTEM_GIO + OTHER_LDLIBS += $(GIO_LIBS) + OTHER_INCLUDES += $(GIO_CFLAGS) -DUSE_SYSTEM_GIO +diff --git openjdk/jdk/make/com/sun/nio/sctp/Makefile openjdk/jdk/make/com/sun/nio/sctp/Makefile +index e71a92b..e94b1e1 100644 +--- openjdk/jdk/make/com/sun/nio/sctp/Makefile ++++ openjdk/jdk/make/com/sun/nio/sctp/Makefile +@@ -62,7 +62,7 @@ OTHER_INCLUDES += \ + ifeq ($(PLATFORM), linux) + COMPILER_WARNINGS_FATAL=true + #OTHER_LDLIBS += -L$(LIBDIR)/$(LIBARCH) -ljava -lnet -lpthread -ldl +-OTHER_LDLIBS += -L$(LIBDIR)/$(LIBARCH) -lnio -lnet -lpthread -ldl ++OTHER_LDLIBS += -L$(LIBDIR)/$(LIBARCH) -lnio -ljavanet -lpthread -ldl + endif + ifeq ($(PLATFORM), solaris) + #LIBSCTP = -lsctp diff --git a/recipes-core/openjdk/openjdk-7-03b21/icedtea-remove_sparc_compiler_option.patch b/recipes-core/openjdk/openjdk-7-03b21/icedtea-remove_sparc_compiler_option.patch new file mode 100644 index 0000000..be5ad85 --- /dev/null +++ b/recipes-core/openjdk/openjdk-7-03b21/icedtea-remove_sparc_compiler_option.patch @@ -0,0 +1,13 @@ +Index: openjdk/jdk/make/common/shared/Compiler-gcc.gmk +=================================================================== +--- openjdk/jdk/make/common/shared/Compiler-gcc.gmk 2012-05-26 14:43:49.342875981 +0200 ++++ openjdk/jdk/make/common/shared/Compiler-gcc.gmk 2012-05-26 15:21:25.514903711 +0200 +@@ -133,7 +133,7 @@ + REQUIRED_GCC_VER = 4.0.* + endif + # Option used to create a shared library +- SHARED_LIBRARY_FLAG = -shared -mimpure-text ++ SHARED_LIBRARY_FLAG = -shared + SUN_COMP_VER := $(shell $(CC) --verbose 2>&1 ) + + endif diff --git a/recipes-core/openjdk/openjdk-7-03b21/icedtea-remove_werror.patch b/recipes-core/openjdk/openjdk-7-03b21/icedtea-remove_werror.patch new file mode 100644 index 0000000..f2ad035 --- /dev/null +++ b/recipes-core/openjdk/openjdk-7-03b21/icedtea-remove_werror.patch @@ -0,0 +1,14 @@ +Index: openjdk/hotspot/make/linux/makefiles/gcc.make +=================================================================== +--- openjdk/hotspot/make/linux/makefiles/gcc.make 2010-02-02 16:11:35.758533706 +0100 ++++ openjdk/hotspot/make/linux/makefiles/gcc.make 2010-02-02 16:11:42.761456458 +0100 +@@ -98,9 +98,6 @@ + CFLAGS += -pipe + endif + +-# Compiler warnings are treated as errors +-WARNINGS_ARE_ERRORS = -Werror +- + # Except for a few acceptable ones + # Since GCC 4.3, -Wconversion has changed its meanings to warn these implicit + # conversions which might affect the values. To avoid that, we need to turn diff --git a/recipes-core/openjdk/openjdk-7-03b21/icedtea-shark-arm-linux-cpu-detection.patch b/recipes-core/openjdk/openjdk-7-03b21/icedtea-shark-arm-linux-cpu-detection.patch new file mode 100644 index 0000000..f40bc51 --- /dev/null +++ b/recipes-core/openjdk/openjdk-7-03b21/icedtea-shark-arm-linux-cpu-detection.patch @@ -0,0 +1,113 @@ +Index: openjdk/hotspot/src/share/vm/shark/sharkCompiler.cpp +=================================================================== +--- openjdk.orig/hotspot/src/share/vm/shark/sharkCompiler.cpp 2010-07-14 16:42:48.412103129 +0200 ++++ openjdk/hotspot/src/share/vm/shark/sharkCompiler.cpp 2010-07-14 16:50:51.680282178 +0200 +@@ -32,6 +32,96 @@ + + #if SHARK_LLVM_VERSION >= 27 + namespace { ++ ++#if defined(__arm__) && defined(__linux__) ++#include ++#include ++#include ++#define VECBUFF_SIZE 32 ++ ++bool TestARMLinuxHWCAP(int feature) { ++ int fd; ++ unsigned vecs[VECBUFF_SIZE]; ++ unsigned *p; ++ int i, n; ++ int rc; ++ ++ rc = 0; ++ fd = open("/proc/self/auxv", O_RDONLY); ++ if (fd < 0) return 0; ++ do { ++ n = read(fd, vecs, VECBUFF_SIZE * sizeof(unsigned)); ++ p = vecs; ++ i = n/8; ++ while (--i >=0) { ++ unsigned tag = *p++; ++ unsigned value = *p++; ++ if (tag == 0) goto fini; ++ if(tag == AT_HWCAP && (value & feature)) { ++ rc = 1; ++ goto fini; ++ } ++ } ++ } while (n == VECBUFF_SIZE * sizeof(unsigned)); ++fini: ++ close(fd); ++ return rc; ++} ++ ++char* TestARMLinuxAT(int auxvec) { ++ int fd; ++ unsigned vecs[VECBUFF_SIZE]; ++ unsigned *p; ++ int i, n; ++ char* rc; ++ ++ rc = 0; ++ fd = open("/proc/self/auxv", O_RDONLY); ++ if (fd < 0) return 0; ++ do { ++ n = read(fd, vecs, VECBUFF_SIZE * sizeof(unsigned)); ++ p = vecs; ++ i = n/8; ++ while (--i >=0) { ++ unsigned tag = *p++; ++ unsigned value = *p++; ++ if (tag == 0) goto fini; ++ if(tag == (unsigned) auxvec ) { ++ rc = (char*)value; ++ goto fini; ++ } ++ } ++ } while (n == VECBUFF_SIZE * sizeof(unsigned)); ++fini: ++ close(fd); ++ return rc; ++} ++ ++bool getARMHostCPUFeatures(StringMap &Features) { ++ // FIXME LLVM PR6561 // Features["neon"]=TestARMLinuxHWCAP(HWCAP_NEON); ++ Features["thumb2"]=TestARMLinuxHWCAP(HWCAP_THUMBEE); ++ Features["vfp2"]=TestARMLinuxHWCAP(HWCAP_VFP); ++ ++ std::string testArchKey(TestARMLinuxAT(AT_PLATFORM)); ++ ++ StringMap archLinuxToLLVMMap; ++ archLinuxToLLVMMap["v4l"]="v4t"; ++ archLinuxToLLVMMap["v5l"]="v5t"; ++ archLinuxToLLVMMap["v6l"]="v6"; ++ // FIXME change this from v6 to v7a when LLVM PR7048 have been fixed ++ archLinuxToLLVMMap["v7l"]="v6"; ++ ++ llvm::StringMapIterator resultIterator(archLinuxToLLVMMap.find( ++ testArchKey)); ++ if(resultIterator->first()) { ++ std::string arch(resultIterator->second); ++ Features[arch]=true; ++ } ++ ++ return true; ++} ++#endif ++ + cl::opt + MCPU("mcpu"); + +@@ -64,7 +154,11 @@ + #if SHARK_LLVM_VERSION >= 27 + // Finetune LLVM for the current host CPU. + StringMap Features; ++#if defined(__arm__) && defined(__linux__) ++ bool gotCpuFeatures = getARMHostCPUFeatures(Features); ++#else + bool gotCpuFeatures = llvm::sys::getHostCPUFeatures(Features); ++#endif + std::string cpu("-mcpu=" + llvm::sys::getHostCPUName()); + + std::vector args; diff --git a/recipes-core/openjdk/openjdk-7-03b21/icedtea-unbreak-float.patch b/recipes-core/openjdk/openjdk-7-03b21/icedtea-unbreak-float.patch new file mode 100644 index 0000000..b5219da --- /dev/null +++ b/recipes-core/openjdk/openjdk-7-03b21/icedtea-unbreak-float.patch @@ -0,0 +1,16 @@ +--- openjdk/jdk/src/share/native/java/lang/fdlibm/include/fdlibm.h ++++ openjdk/jdk/src/share/native/java/lang/fdlibm/include/fdlibm.h +@@ -26,13 +26,11 @@ + + #include "jfdlibm.h" + +-#ifdef __NEWVALID /* special setup for Sun test regime */ + #if defined(i386) || defined(i486) || \ + defined(intel) || defined(x86) || defined(arm) || \ + defined(i86pc) || defined(_M_IA64) || defined(ia64) + #define _LITTLE_ENDIAN + #endif +-#endif + + #ifdef _LITTLE_ENDIAN + #define __HI(x) *(1+(int*)&x) diff --git a/recipes-core/openjdk/openjdk-7-03b21/icedtea-zero-hotspotfix.patch b/recipes-core/openjdk/openjdk-7-03b21/icedtea-zero-hotspotfix.patch new file mode 100644 index 0000000..a63506b --- /dev/null +++ b/recipes-core/openjdk/openjdk-7-03b21/icedtea-zero-hotspotfix.patch @@ -0,0 +1,36 @@ +diff --git openjdk/hotspot/make/linux/makefiles/zeroshark.make b/hotspot/make/linux/makefiles/zeroshark.make +index 4cf1826..4c0105b 100644 +--- openjdk/hotspot/make/linux/makefiles/zeroshark.make ++++ openjdk/hotspot/make/linux/makefiles/zeroshark.make +@@ -32,26 +32,27 @@ Obj_Files += cppInterpreter_arm.o + Obj_Files += thumb2.o + + CFLAGS += -DHOTSPOT_ASM ++CCFLAGS += -DHOTSPOT_ASM + + cppInterpreter_arm.o: offsets_arm.s bytecodes_arm.s + thumb2.o: offsets_arm.s + + offsets_arm.s: mkoffsets + @echo Generating assembler offsets +- ./mkoffsets > $@ ++ $(QEMU) ./mkoffsets > $@ + + bytecodes_arm.s: bytecodes_arm.def mkbc + @echo Generatine ARM assembler bytecode sequences +- $(CC_COMPILE) -E -x c++ - < $< | ./mkbc - $@ $(COMPILE_DONE) ++ $(CC_COMPILE) -E -x c++ - < $< | $(QEMU) ./mkbc - $@ $(COMPILE_DONE) + + mkbc: $(GAMMADIR)/tools/mkbc.c + @echo Compiling mkbc tool +- $(CC_COMPILE) -o $@ $< $(COMPILE_DONE) ++ $(CC_COMPILE) -static -o $@ $< $(COMPILE_DONE) + + mkoffsets: asm_helper.cpp + @echo Compiling offset generator + $(QUIETLY) $(REMOVE_TARGET) +- $(CC_COMPILE) -DSTATIC_OFFSETS -o $@ $< $(COMPILE_DONE) ++ $(CC_COMPILE) -static -DSTATIC_OFFSETS -o $@ $< $(COMPILE_DONE) + + endif + diff --git a/recipes-core/openjdk/openjdk-7-03b21/jamvm-extract.patch b/recipes-core/openjdk/openjdk-7-03b21/jamvm-extract.patch new file mode 100644 index 0000000..9040304 --- /dev/null +++ b/recipes-core/openjdk/openjdk-7-03b21/jamvm-extract.patch @@ -0,0 +1,13 @@ +Index: icedtea-2.1/Makefile.am +=================================================================== +--- icedtea-2.1.orig/Makefile.am ++++ icedtea-2.1/Makefile.am +@@ -1210,7 +1210,7 @@ endif + clean-extract-cacao: clean-cacao + rm -f stamps/extract-cacao.stamp + +-stamps/extract-jamvm.stamp: ++stamps/extract-jamvm.stamp: stamps/download-jamvm.stamp + if BUILD_JAMVM + set -e ; \ + if ! test -d jamvm ; \ diff --git a/recipes-core/openjdk/openjdk-7-03b21/jvm.cfg b/recipes-core/openjdk/openjdk-7-03b21/jvm.cfg new file mode 100644 index 0000000..ea97cda --- /dev/null +++ b/recipes-core/openjdk/openjdk-7-03b21/jvm.cfg @@ -0,0 +1,43 @@ +# Copyright 2003 Sun Microsystems, Inc. All Rights Reserved. +# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +# +# This code is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License version 2 only, as +# published by the Free Software Foundation. Sun designates this +# particular file as subject to the "Classpath" exception as provided +# by Sun in the LICENSE file that accompanied this code. +# +# This code is distributed in the hope that it will be useful, but WITHOUT +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +# version 2 for more details (a copy is included in the LICENSE file that +# accompanied this code). +# +# You should have received a copy of the GNU General Public License version +# 2 along with this work; if not, write to the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. +# +# Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, +# CA 95054 USA or visit www.sun.com if you need additional information or +# have any questions. +# +# +# List of JVMs that can be used as an option to java, javac, etc. +# Order is important -- first in this list is the default JVM. +# NOTE that this both this file and its format are UNSUPPORTED and +# WILL GO AWAY in a future release. +# +# You may also select a JVM in an arbitrary location with the +# "-XXaltjvm=" option, but that too is unsupported +# and may not be available in a future release. +# +-server ERROR +-client IGNORE +-hotspot ERROR +-classic WARN +-native ERROR +-green ERROR +-zero ALIASED_TO -server +-shark ERROR +-cacao ERROR +-jamvm ERROR diff --git a/recipes-core/openjdk/openjdk-7-common.inc b/recipes-core/openjdk/openjdk-7-common.inc new file mode 100644 index 0000000..eb0a817 --- /dev/null +++ b/recipes-core/openjdk/openjdk-7-common.inc @@ -0,0 +1,496 @@ +DESCRIPTION = "Java runtime based upon the OpenJDK- and Icedtea Project" +HOMEPAGE = "http://icedtea.classpath.org" +LICENSE = "GPL-2.0-with-classpath-exception" +PRIORITY = "optional" +SECTION = "libs" + +# Name of the icedtea tarball and top-level directory. +ICEDTEA = "NEEDS TO BE SET" + +S = "${WORKDIR}/${ICEDTEA}" +B = "${S}/build" + +INC_PR = "r2" + +SRC_URI = " \ + ${ICEDTEA_URI} \ + ${OPENJDK_URI} \ + ${HOTSPOT_URI} \ + ${CORBA_URI} \ + ${JAXP_URI} \ + ${JAXWS_URI} \ + ${JDK_URI} \ + ${LANGTOOLS_URI} \ + ${CACAO_URI} \ + ${JAMVM_URI} \ + ${OEPATCHES} \ + ${ICEDTEAPATCHES} \ + file://jvm.cfg \ + " + +JDKPN = "openjdk-7" +JDK_DIR = "java-7-openjdk" + +PN = "${JDKPN}-jre" +PROVIDES += "${JDKPN}" + +DEPENDS = " \ + icedtea7-native zip-native ant-native \ + zlib \ + jpeg libpng giflib \ + gtk+ glib-2.0 \ + cups fontconfig \ + rhino \ + libxt libxp libxinerama libxrender libxtst libxi \ + freetype alsa-lib libffi llvm2.8 \ + " +DEPENDS_arm = " \ + icedtea7-native zip-native ant-native \ + zlib \ + jpeg libpng giflib \ + gtk+ glib-2.0 \ + cups fontconfig \ + rhino \ + libxt libxp libxinerama libxrender libxtst libxi \ + freetype alsa-lib libffi \ + " + +DEPENDS_append_libc-uclibc = " virtual/libiconv " + +# The OpenJDK build with interpreter optimizations for ARM depends on a binary +# that generates constants for an assembler source file. There is no other +# way than to generate this on a pseudo machine. Cross-compiling would not help +# because structure sizes and/or alignment may differ. +DEPENDS_append = " qemu-native " + + +# No package should directly depend on this (it should require +# java2-runtime instead). +PRIVATE_LIBS = "\ + libunpack.so libverify.so libjava.so libzip.so libnpt.so \ + libjava_crw_demo.so libhprof.so libnet.so libnio.so \ + libmanagement.so libinstrument.so libjsound.so libjsoundalsa.so \ + libj2pcsc.so libj2pkcs11.so libj2gss.so libmlib_image.so \ + libawt.so libsplashscreen.so libfreetype.so.6 libfontmanager.so \ + libjpeg.so liblcms.so librmi.so libjawt.so libjaas_unix.so \ + libattach.so libjdwp.so libdt_socket.so libhpi.so libjli.so \ + libmawt.so libjvm.so \ + libversionCheck.so libcompiledMethodLoad.so libgctest.so \ + libheapViewer.so libheapTracker.so libminst.so libmtrace.so \ + libwaiters.so libhprof.so \ + " +inherit java autotools gettext qemu + +export ALT_CUPS_HEADERS_PATH = "${STAGING_INCDIR}" +export ALT_FREETYPE_HEADERS_PATH = "${STAGING_INCDIR}/freetype2" +export ALT_FREETYPE_LIB_PATH = "${STAGING_LIBDIR}" +export CACAO_CONFIGURE_ARGS = " \ + ${@['','--enable-softfloat'][bb.data.getVar('TARGET_FPU',d,1) == 'soft']}" + +JAVA_HOME[unexport] = "1" + +WITH_ADDITIONAL_VMS ?= "--with-additional-vms=shark,cacao,jamvm" + +WITH_ADDITIONAL_VMS_arm = "--with-additional-vms=cacao,jamvm" + +# OpenJDK supports parallel compilation but uses a plain number for this. +# In OE we have PARALLEL_MAKE which is the actual option passed to make, +# e.g. "-j 4". + +OPENJDK_PARALLEL_MAKE := "${PARALLEL_MAKE}" +PARALLEL_MAKE = "" + +def get_jdk7_jobs(d): + import bb + + pm = bb.data.getVar('OPENJDK_PARALLEL_MAKE', d, 1); + if not pm: + return "1" + + pm = pm.split("j"); + if (len(pm) == 2): + return pm[1].strip() + + # Whatever found in PARALLEL_MAKE was not suitable. + return "1" + +JDK_JOBS = "${@get_jdk7_jobs(d)}" + +EXTRA_OECONF = " \ + --disable-tests \ + --disable-hotspot-tests \ + --disable-langtools-tests \ + --disable-jdk-tests \ + --disable-pulse-java \ + --disable-docs \ + --disable-nss \ + --disable-system-lcms \ + --disable-bootstrap \ + \ + --enable-zero \ + \ + --with-jdk-home=${STAGING_LIBDIR_JVM_NATIVE}/icedtea7-native \ + --with-rhino=${STAGING_DATADIR_JAVA}/rhino.jar \ + \ + --with-openjdk-src-zip=${WORKDIR}/${OPENJDK_FILE} \ + --with-hotspot-src-zip=${WORKDIR}/${HOTSPOT_FILE} \ + --with-corba-src-zip=${WORKDIR}/${CORBA_FILE} \ + --with-jaxp-src-zip=${WORKDIR}/${JAXP_FILE} \ + --with-jaxws-src-zip=${WORKDIR}/${JAXWS_FILE} \ + --with-jdk-src-zip=${WORKDIR}/${JDK_FILE} \ + --with-langtools-src-zip=${WORKDIR}/${LANGTOOLS_FILE} \ + --with-cacao-src-zip=${WORKDIR}/${CACAO_FILE} \ + --with-jamvm-src-zip=${WORKDIR}/${JAMVM_FILE} \ + \ + --with-parallel-jobs=${JDK_JOBS} \ + \ + --with-pkgversion=${PV} \ + --with-cc-for-build=${BUILD_CC} \ + " + +# OpenJDK uses slightly different names for certain arches. We need to know +# this to create some files which are expected by the build. +def get_jdk_arch(d): + import bb + + jdk_arch = bb.data.getVar('TRANSLATED_TARGET_ARCH', d, 1) + if jdk_arch == "x86-64": + jdk_arch = "amd64" + elif jdk_arch == "powerpc": + jdk_arch = "ppc" + elif jdk_arch == "powerpc64": + jdk_arch = "ppc64" + elif (jdk_arch == "i486" or jdk_arch == "i586" or jdk_arch == "i686"): + jdk_arch = "i386" + + return jdk_arch + +JDK_ARCH = "${@get_jdk_arch(d)}" +JDK_HOME = "${libdir_jvm}/${JDK_DIR}" +JDK_FAKE = "${WORKDIR}/fake-jdk" + +# A function that is needed in the Shark builds. +def get_llvm_configure_arch(d): + import bb; + + arch = bb.data.getVar('TRANSLATED_TARGET_ARCH', d, 1) + if arch == "x86-64" or arch == "i486" or arch == "i586" or arch == "i686": + arch = "x86" + elif arch == "arm": + arch = "arm" + elif arch == "mipsel" or arch == "mips": + arch = "mips" + elif arch == "powerpc" or arch == "powerpc64": + arch = "powerpc" + else: + bb.error("%s does not support %s yet" % (bb.data.getVar('PN', d, 1), arch) ); + + return arch + +do_configure_prepend() { + echo "Configure with parallel-jobs: ${JDK_JOBS}" + + # Automatically copy everything that starts with "icedtea" (or "cacao") and ends with + # ".patch" into the patches directory. + find ${WORKDIR} -maxdepth 1 -name "icedtea*.patch" -exec cp {} ${S}/patches \; + find ${WORKDIR} -maxdepth 1 -name "cacao*.patch" -exec cp {} ${S}/patches \; +} + +do_configure_append() { + oe_runmake patch +} + +# Work around broken variable quoting in oe-stable 2009 and provide the variable +# via the environment which then overrides the erroneous value that was written +# into '${ICETDEA}/Makefile'. +# Icedtea's makefile is not compatible to parallelization so we cannot allow +# passing a valid ${PARALLEL_MAKE} to it. OTOH OpenJDK's makefiles are +# parallelizable and we need ${PARALLEL_MAKE} to derive the proper value. +# The base for this quirk is that GNU Make only considers the last "-j" option. +EXTRA_OEMAKE = 'CC="${CC}" CCC="${CXX}" CPP="${CPP}" CXX="${CXX}" CC_FOR_BUILD="${BUILD_CC}"' + +EXTRA_OEMAKE += ' \ + OE_CFLAGS="${TARGET_CFLAGS}" \ + OE_CPPFLAGS="${TARGET_CPPFLAGS}" \ + OE_CXXFLAGS="${TARGET_CXXFLAGS}" \ + OE_LDFLAGS="${TARGET_LDFLAGS}" \ + ZIPEXE="${STAGING_BINDIR_NATIVE}/zip" \ + CROSS_COMPILE_ARCH="${JDK_ARCH}" \ + REQUIRED_ALSA_VERSION="" \ + ' + +# Puts an OE specific string into the binary making it possible for the user +# to know where it comes from (and blame the right people ...). +DIST_ID = "Built for ${DISTRO}" +DIST_NAME = "${DISTRO}" +EXTRA_OEMAKE += 'DIST_NAME="${DIST_NAME}" DIST_ID="${DIST_ID}"' + + +# llvm configure and compiles stuff + +export WANT_LLVM_RELEASE = "2.8" + +# Provides the target architecture to the configure script. +export LLVM_CONFIGURE_ARCH="${@get_llvm_configure_arch(d)}" + +OE_LAUNCHER_LDFLAGS = "-Wl,-rpath-link,${STAGING_LIBDIR}/llvm${WANT_LLVM_RELEASE} -Wl,-rpath,${libdir}/llvm${WANT_LLVM_RELEASE}" + +OE_LAUNCHER_LDFLAGS_arm = "" + +EXTRA_OEMAKE += 'OE_LAUNCHER_LDFLAGS="${OE_LAUNCHER_LDFLAGS}"' + +# Large stack is required at least on x86_64 host, otherwise random segfaults appear: +QEMU = "${@qemu_target_binary(d)} ${QEMU_OPTIONS} -s 2097152 -L ${STAGING_DIR_TARGET} -E LD_LIBRARY_PATH=${STAGING_BASELIBDIR}" + +EXTRA_OEMAKE += 'QEMU="${QEMU}"' + +do_compile() { + + bbnote "3/3 Building final JDK" + + # Build the final Hotspot + OpenJDK + oe_runmake icedtea +} + +do_install() { + install -d ${D}${libdir_jvm} + cp -R ${S}/build/${BUILD_DIR}/j2sdk-image ${D}${JDK_HOME} + + chmod u+rw -R ${D}${JDK_HOME} + + # Fix symlink which would point into staging in the binary package. + ln -sf ${datadir_java}/rhino.jar ${D}${JDK_HOME}/jre/lib/rhino.jar + + # JRE is a subset of JDK. So to save space and resemble what the BIG distros + # do we create symlinks from the JDK binaries to their counterparts in the + # JRE folder (which have to exist by that time b/c of dependencies). + for F in `find ${D}${JDK_HOME}/jre/bin -type f` + do + bf=`basename $F` + bbnote "replace:" $bf + rm ${D}${JDK_HOME}/bin/$bf + ln -s ${JDK_HOME}/jre/bin/$bf ${D}${JDK_HOME}/bin/$bf + done + + install -m644 ${WORKDIR}/jvm.cfg ${D}${JDK_HOME}/jre/lib/${JDK_ARCH}/ +} + +# Notes about the ideas behind packaging: +# 1) User should install openjdk-7-jre. This is a provider of 'java2-runtime'. +# 2) This lets package mgmt install: openjdk-7-java +# -> openjdk-7-vm-shark|openjdk-7-vm-zero|openjdk-7-vm-cacao -> openjdk-7-common +# +# With opkg the zero VM is chosen which is good b/c that is the best known (= compatible) +# runtime. Installing other runtimes side-by-side is possible. Through jvm.cfg the following +# order of precedence is enforced: zero, shark, cacao. User can chose a different runtime +# by adding '-shark' or '-cacao' to the Java command (or by deinstalling an otherwise preferred +# runtime) +# 3) All other packages, including -jdk, are optional and not needed for normal Java apps. +PACKAGES = " \ + ${JDKPN}-jre \ + ${JDKPN}-jre-dbg \ + ${JDKPN}-dbg \ + ${JDKPN}-demo-dbg \ + ${JDKPN}-demo \ + ${JDKPN}-source \ + ${JDKPN}-doc \ + ${JDKPN}-jdk \ + ${JDKPN}-java \ + ${JDKPN}-vm-shark \ + ${JDKPN}-vm-zero \ + ${JDKPN}-vm-cacao \ + ${JDKPN}-vm-jamvm \ + ${JDKPN}-common \ + " + +FILES_${JDKPN}-dbg = "\ + ${JDK_HOME}/bin/.debug \ + ${JDK_HOME}/lib/.debug \ + ${JDK_HOME}/jre/bin/.debug \ + ${JDK_HOME}/jre/lib/.debug \ + ${JDK_HOME}/jre/lib/${JDK_ARCH}/.debug \ + ${JDK_HOME}/jre/lib/${JDK_ARCH}/jli/.debug \ + ${JDK_HOME}/jre/lib/${JDK_ARCH}/native_threads/.debug \ + ${JDK_HOME}/jre/lib/${JDK_ARCH}/server/.debug \ + ${JDK_HOME}/jre/lib/${JDK_ARCH}/shark/.debug \ + ${JDK_HOME}/jre/lib/${JDK_ARCH}/headless/.debug \ + ${JDK_HOME}/jre/lib/${JDK_ARCH}/xawt/.debug \ + " + +FILES_${JDKPN}-demo = "${JDK_HOME}/demo ${JDK_HOME}/sample" +RDEPENDS_${JDKPN}-demo = "java2-runtime" +FILES_${JDKPN}-demo-dbg = "\ + ${JDK_HOME}/demo/jvmti/gctest/lib/.debug \ + ${JDK_HOME}/demo/jvmti/heapTracker/lib/.debug \ + ${JDK_HOME}/demo/jvmti/heapViewer/lib/.debug \ + ${JDK_HOME}/demo/jvmti/hprof/lib/.debug \ + ${JDK_HOME}/demo/jvmti/minst/lib/.debug \ + ${JDK_HOME}/demo/jvmti/mtrace/lib/.debug \ + ${JDK_HOME}/demo/jvmti/versionCheck/lib/.debug \ + ${JDK_HOME}/demo/jvmti/waiters/lib/.debug \ + ${JDK_HOME}/demo/jvmti/compiledMethodLoad/lib/.debug \ + " + +FILES_${JDKPN}-source = "${JDK_HOME}/src.zip" + +FILES_${JDKPN}-java = "${JDK_HOME}/jre/bin/java" + +FILES_${JDKPN}-vm-zero = "${JDK_HOME}/jre/lib/${JDK_ARCH}/server/" + +FILES_${JDKPN}-vm-shark = "${JDK_HOME}/jre/lib/${JDK_ARCH}/shark/" + +FILES_${JDKPN}-vm-cacao = "${JDK_HOME}/jre/lib/${JDK_ARCH}/cacao/" + +FILES_${JDKPN}-vm-jamvm = "${JDK_HOME}/jre/lib/${JDK_ARCH}/jamvm/" + +FILES_${JDKPN}-common = "${JDK_HOME}/jre/ASSEMBLY_EXCEPTION \ + ${JDK_HOME}/jre/THIRD_PARTY_README \ + ${JDK_HOME}/jre/LICENSE \ + ${JDK_HOME}/ASSEMBLY_EXCEPTION \ + ${JDK_HOME}/THIRD_PARTY_README \ + ${JDK_HOME}/LICENSE \ + ${JDK_HOME}/release \ + ${JDK_HOME}/jre/lib \ + " + +FILES_openjdk-7-jre_append = " \ + ${JDK_HOME}/jre/bin/keytool \ + ${JDK_HOME}/jre/bin/orbd \ + ${JDK_HOME}/jre/bin/pack200 \ + ${JDK_HOME}/jre/bin/rmid \ + ${JDK_HOME}/jre/bin/rmiregistry \ + ${JDK_HOME}/jre/bin/servertool \ + ${JDK_HOME}/jre/bin/tnameserv \ + ${JDK_HOME}/jre/bin/unpack200 \ + ${JDK_HOME}/jre/bin/policytool \ + ${JDK_HOME}/jre/bin/javaws \ + " + +RDEPENDS_${JDKPN}-common = "librhino-java" + +RPROVIDES_${JDKPN}-vm-shark = "java2-vm" +RPROVIDES_${JDKPN}-vm-zero = "java2-vm" +RPROVIDES_${JDKPN}-vm-cacao = "java2-vm" +RPROVIDES_${JDKPN}-vm-jamvm = "java2-vm" + +# Even though a vm is a hard dependency it is set as RRECOMMENDS so a single vm can get uninstalled: +# root@beaglebone:~/java# opkg remove openjdk-7-vm-shark +# No packages removed. +# Collected errors: +# * print_dependents_warning: Package openjdk-7-vm-shark is depended upon by packages: +# * print_dependents_warning: openjdk-7-java +# * print_dependents_warning: These might cease to work if package openjdk-7-vm-shark is removed. +RRECOMMENDS_${JDKPN}-java = "java2-vm" + +# For some reason shark and cacao do not automatically depends on -common. +# So we add that manually. +RDEPENDS_${JDKPN}-vm-shark = "${JDKPN}-common" +RDEPENDS_${JDKPN}-vm-cacao = "${JDKPN}-common" +RDEPENDS_${JDKPN}-vm-jamvm = "${JDKPN}-common" + +# There is a symlink to a .so but this one is valid. +INSANE_SKIP_${JDKPN}-vm-shark = "dev-so" +INSANE_SKIP_${JDKPN}-vm-zero = "dev-so" +INSANE_SKIP_${JDKPN}-vm-cacao = "dev-so" +INSANE_SKIP_${JDKPN}-vm-jamvm = "dev-so" +INSANE_SKIP_${JDKPN}-common = "dev-so" + +FILES_${JDKPN}-jdk = " \ + ${JDK_HOME}/bin \ + ${JDK_HOME}/lib \ + ${JDK_HOME}/include \ + " +RDEPENDS_${JDKPN}-jre = "${JDKPN}-java" +RPROVIDES_${JDKPN}-jre = "java2-runtime" + +RDEPENDS_${JDKPN}-jdk = "${JDKPN}-jre" + +FILES_${JDKPN}-doc = "${JDK_HOME}/man" + +pkg_postinst_${JDKPN}-vm-shark () { + if grep -q "\-server ERROR" ${JDK_HOME}/jre/lib/${JDK_ARCH}/jvm.cfg && ! grep -q "KNOWN" ${JDK_HOME}/jre/lib/${JDK_ARCH}/jvm.cfg; then + sed -i -e "/\-shark.*/d" -e "s|\(^\-server*\)|\-shark KNOWN\n\1|" -e "/^$/d" ${JDK_HOME}/jre/lib/${JDK_ARCH}/jvm.cfg + else + sed -i -e "s/\-shark.*/\-shark KNOWN/" ${JDK_HOME}/jre/lib/${JDK_ARCH}/jvm.cfg + fi +} + +pkg_prerm_${JDKPN}-vm-shark () { + sed -i -e "/^\-shark.*/d" -e "/^$/d" ${JDK_HOME}/jre/lib/${JDK_ARCH}/jvm.cfg + if grep -q "KNOWN" ${JDK_HOME}/jre/lib/${JDK_ARCH}/jvm.cfg && grep -q "\-server ERROR" ${JDK_HOME}/jre/lib/${JDK_ARCH}/jvm.cfg; then + FIRST_KNOWN=`grep "KNOWN" ${JDK_HOME}/jre/lib/${JDK_ARCH}/jvm.cfg | head -1` + sed -i -e "/${FIRST_KNOWN}/d" -e "s|\(^\-server*\)|${FIRST_KNOWN}\n\1|" ${JDK_HOME}/jre/lib/${JDK_ARCH}/jvm.cfg + fi + + echo "-shark ERROR" >> ${JDK_HOME}/jre/lib/${JDK_ARCH}/jvm.cfg +} + +pkg_postinst_${JDKPN}-vm-cacao () { + if grep -q "\-server ERROR" ${JDK_HOME}/jre/lib/${JDK_ARCH}/jvm.cfg && ! grep -q "KNOWN" ${JDK_HOME}/jre/lib/${JDK_ARCH}/jvm.cfg; then + sed -i -e "/\-cacao.*/d" -e "s|\(^\-server*\)|\-cacao KNOWN\n\1|" -e "/^$/d" ${JDK_HOME}/jre/lib/${JDK_ARCH}/jvm.cfg + else + sed -i -e "s/\-cacao.*/\-cacao KNOWN/" ${JDK_HOME}/jre/lib/${JDK_ARCH}/jvm.cfg + fi +} + +pkg_prerm_${JDKPN}-vm-cacao () { + sed -i -e "/^\-cacao.*/d" -e "/^$/d" ${JDK_HOME}/jre/lib/${JDK_ARCH}/jvm.cfg + if grep -q "KNOWN" ${JDK_HOME}/jre/lib/${JDK_ARCH}/jvm.cfg && grep -q "\-server ERROR" ${JDK_HOME}/jre/lib/${JDK_ARCH}/jvm.cfg; then + FIRST_KNOWN=`grep "KNOWN" ${JDK_HOME}/jre/lib/${JDK_ARCH}/jvm.cfg | head -1` + sed -i -e "/${FIRST_KNOWN}/d" -e "s|\(^\-server*\)|${FIRST_KNOWN}\n\1|" ${JDK_HOME}/jre/lib/${JDK_ARCH}/jvm.cfg + fi + + echo "-cacao ERROR" >> ${JDK_HOME}/jre/lib/${JDK_ARCH}/jvm.cfg +} + +pkg_postinst_${JDKPN}-vm-jamvm () { + if grep -q "\-server ERROR" ${JDK_HOME}/jre/lib/${JDK_ARCH}/jvm.cfg && ! grep -q "KNOWN" ${JDK_HOME}/jre/lib/${JDK_ARCH}/jvm.cfg; then + sed -i -e "/\-jamvm.*/d" -e "s|\(^\-server*\)|\-jamvm KNOWN\n\1|" -e "/^$/d" ${JDK_HOME}/jre/lib/${JDK_ARCH}/jvm.cfg + else + sed -i -e "s/\-jamvm.*/\-jamvm KNOWN/" ${JDK_HOME}/jre/lib/${JDK_ARCH}/jvm.cfg + fi +} + +pkg_prerm_${JDKPN}-vm-jamvm () { + sed -i -e "/^\-jamvm.*/d" -e "/^$/d" ${JDK_HOME}/jre/lib/${JDK_ARCH}/jvm.cfg + if grep -q "KNOWN" ${JDK_HOME}/jre/lib/${JDK_ARCH}/jvm.cfg && grep -q "\-server ERROR" ${JDK_HOME}/jre/lib/${JDK_ARCH}/jvm.cfg; then + FIRST_KNOWN=`grep "KNOWN" ${JDK_HOME}/jre/lib/${JDK_ARCH}/jvm.cfg | head -1` + sed -i -e "/${FIRST_KNOWN}/d" -e "s|\(^\-server*\)|${FIRST_KNOWN}\n\1|" ${JDK_HOME}/jre/lib/${JDK_ARCH}/jvm.cfg + fi + + echo "-jamvm ERROR" >> ${JDK_HOME}/jre/lib/${JDK_ARCH}/jvm.cfg +} + +pkg_postinst_${JDKPN}-vm-zero () { + if grep -q "KNOWN" ${JDK_HOME}/jre/lib/${JDK_ARCH}/jvm.cfg && grep -q "\-server ERROR" ${JDK_HOME}/jre/lib/${JDK_ARCH}/jvm.cfg; then + FIRST_KNOWN=`grep "KNOWN" ${JDK_HOME}/jre/lib/${JDK_ARCH}/jvm.cfg | head -1` + sed -i -e "/${FIRST_KNOWN}/d" -e "/^$/d" ${JDK_HOME}/jre/lib/${JDK_ARCH}/jvm.cfg + echo ${FIRST_KNOWN} >> ${JDK_HOME}/jre/lib/${JDK_ARCH}/jvm.cfg + fi + + sed -i -e "s|^\-server.*|\-server KNOWN|" -e "/^$/d" ${JDK_HOME}/jre/lib/${JDK_ARCH}/jvm.cfg +} + +pkg_prerm_${JDKPN}-vm-zero () { + sed -i -e "/^\-server.*/\-server ERROR" ${JDK_HOME}/jre/lib/${JDK_ARCH}/jvm.cfg + if grep -q "KNOWN" ${JDK_HOME}/jre/lib/${JDK_ARCH}/jvm.cfg; then + FIRST_KNOWN=`grep "KNOWN" ${JDK_HOME}/jre/lib/${JDK_ARCH}/jvm.cfg | head -1` + sed -i -e "/${FIRST_KNOWN}/d" -e "s|\(^\-server*\)|${FIRST_KNOWN}\n\1|" ${JDK_HOME}/jre/lib/${JDK_ARCH}/jvm.cfg + fi +} + +pkg_postinst_${JDKPN}-jre () { + update-alternatives --install ${bindir}/java java ${JDK_HOME}/jre/bin/java 15 +} + +pkg_prerm_${JDKPN}-jre () { + update-alternatives --remove java ${JDK_HOME}/jre/bin/java +} + +pkg_postinst_${JDKPN}-jdk () { + update-alternatives --install ${bindir}/javac javac ${JDK_HOME}/bin/javac 15 +} + +pkg_prerm_${JDKPN}-jdk () { + update-alternatives --remove javac ${JDK_HOME}/bin/javac +} diff --git a/recipes-core/openjdk/openjdk-7-release-03b21.inc b/recipes-core/openjdk/openjdk-7-release-03b21.inc new file mode 100644 index 0000000..40c1cf6 --- /dev/null +++ b/recipes-core/openjdk/openjdk-7-release-03b21.inc @@ -0,0 +1,147 @@ +require openjdk-7-common.inc + +LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552" + +FILESPATH =. "${FILE_DIRNAME}/openjdk-7-03b21:" + +# Name of the directory containing the compiled output +BUILD_DIR = "openjdk.build" +BUILD_DIR_ECJ = "openjdk.build-ecj" + +# Force arm mode for now +ARM_INSTRUCTION_SET_armv4t = "ARM" + +ICEDTEA_URI = "http://icedtea.classpath.org/download/source/${ICEDTEA}.tar.gz;name=iced" + +ICEDTEA_PREFIX = "icedtea7-forest-2.1" +ICEDTEA_HG_URL = "http://icedtea.classpath.org/hg/release/${ICEDTEA_PREFIX}" + +OPENJDK_CHANGESET = "22cc03983e20" +OPENJDK_FILE = "${OPENJDK_CHANGESET}.tar.bz2" +OPENJDK_URI = "${ICEDTEA_HG_URL}/archive/${OPENJDK_FILE};name=openjdk;unpack=false" +SRC_URI[openjdk.md5sum] = "f98b0f7a69f9427a5b3775dddddc89cb" +SRC_URI[openjdk.sha256sum] = "758227833982371e3a94def84226a947f8dbbd176517f313b8cb96840bdea41e" + +HOTSPOT_CHANGESET = "0e651e004747" +HOTSPOT_FILE = "${HOTSPOT_CHANGESET}.tar.gz" +HOTSPOT_URI = "${ICEDTEA_HG_URL}/hotspot/archive/${HOTSPOT_FILE};name=hotspot;unpack=false" +SRC_URI[hotspot.md5sum] = "edd627c8781161eb33006ed668d833e0" +SRC_URI[hotspot.sha256sum] = "d68455e5cdb14280cd61155a4e9d531e90b073607f4367e93ead0fcf34476ae1" + +CORBA_CHANGESET = "5617f6c5cc94" +CORBA_FILE = "${CORBA_CHANGESET}.tar.gz" +CORBA_URI = "${ICEDTEA_HG_URL}/corba/archive/${CORBA_FILE};name=corba;unpack=false" +SRC_URI[corba.md5sum] = "920f1a788a7fdef29a5cd70892331251" +SRC_URI[corba.sha256sum] = "963915483530f311ff313635f79ed11ea7ce5a1c0dbee5d1acb1994132857fa3" + +JAXP_CHANGESET = "1cf75c0e2c96" +JAXP_FILE = "${JAXP_CHANGESET}.tar.gz" +JAXP_URI = "${ICEDTEA_HG_URL}/jaxp/archive/${JAXP_FILE};name=jaxp;unpack=false" +SRC_URI[jaxp.md5sum] = "56e609548b322149cb84604f232a4602" +SRC_URI[jaxp.sha256sum] = "8ce48c704f38285207ee6dc56c45b2d214083b4d4d36be02901401b594ce701e" + +JAXWS_CHANGESET = "7edfbfe974f2" +JAXWS_FILE = "${JAXWS_CHANGESET}.tar.gz" +JAXWS_URI = "${ICEDTEA_HG_URL}/jaxws/archive/${JAXWS_FILE};name=jaxws;unpack=false" +SRC_URI[jaxws.md5sum] = "2deecec809ea8e38835678889c2bc3ac" +SRC_URI[jaxws.sha256sum] = "823ca6b8fd780bf1b1565a90cfc8ec6f0ee422a5d25ffb20b1ce0272dc4955aa" + +JDK_CHANGESET = "50f6f276a06c" +JDK_FILE = "${JDK_CHANGESET}.tar.gz" +JDK_URI = "${ICEDTEA_HG_URL}/jdk/archive/${JDK_FILE};name=jdk;unpack=false" +SRC_URI[jdk.md5sum] = "7ee77eeeff600c5a4763b4ac76fd62bc" +SRC_URI[jdk.sha256sum] = "5f8b5edbebb358730425e64a31eaa11c346467ba10ffe1848f2d2ad2ea53bc3d" + +LANGTOOLS_CHANGESET = "b534c4c6cd9b" +LANGTOOLS_FILE = "${LANGTOOLS_CHANGESET}.tar.gz" +LANGTOOLS_URI = "${ICEDTEA_HG_URL}/langtools/archive/${LANGTOOLS_FILE};name=langtools;unpack=false" +SRC_URI[langtools.md5sum] = "16b72f3fea8ac4e5b50de693e87f9c53" +SRC_URI[langtools.sha256sum] = "c77dd42d83f06d18fa8aa65c93d137608a2e02cf24b68fc10d7b1c0bcc12a93c" + +CACAO_VERSION = "a567bcb7f589" +CACAO_FILE = "${CACAO_VERSION}.tar.gz" +CACAO_URI = "http://icedtea.classpath.org/download/drops/cacao/${CACAO_FILE};name=cacao;unpack=false" +SRC_URI[cacao.md5sum] = "ec1def7f0d3d25e9e7da47c480f26a73" +SRC_URI[cacao.sha256sum] = "d49f79debc131a5694cae6ab3ba2864e7f3249ee8d9dc09aae8afdd4dc6b09f9" + +JAMVM_VERSION = "4617da717ecb05654ea5bb9572338061106a414d" +JAMVM_FILE = "jamvm-${JAMVM_VERSION}.tar.gz" +JAMVM_URI = "http://icedtea.classpath.org/download/drops/jamvm/${JAMVM_FILE};name=jamvm;unpack=false" +SRC_URI[jamvm.md5sum] = "740c2587502831cac6797d1233a7e27b" +SRC_URI[jamvm.sha256sum] = "47fce7bd556c1b1d29a93b8c45497e0d872b48b7f535066b303336f29d0f0d8d" + +# Allow overriding this separately +OEPATCHES = "\ + file://build-hacks.patch \ + file://cacao-libtoolize.patch \ + file://cacao-loadavg-makefile.patch \ + file://fix_hotspot_crosscompile.patch \ + file://fix-checksums.patch \ + file://jamvm-extract.patch \ + file://cacao-loadavg.patch;apply=no \ + " + +# Allow overriding this separately +ICEDTEAPATCHES = "\ + file://icedtea-crosscompile-fix.patch;apply=no \ + file://icedtea-hostbuildcc.patch;apply=no \ + file://icedtea-unbreak-float.patch;apply=no \ + file://icedtea-remove_werror.patch;apply=no \ + file://icedtea-libnet-renaming.patch;apply=no \ + file://icedtea-fix-xrender.patch;apply=no \ + file://icedtea-shark-arm-linux-cpu-detection.patch;apply=no \ + file://icedtea-corba-parallel-make.patch;apply=no \ + file://icedtea-zero-hotspotfix.patch;apply=no \ + " +ICEDTEAPATCHES_append_powerpc = " \ + file://icedtea-jdk-nio-use-host-cc.patch;apply=no \ + file://icedtea-jdk-ppc64-jvm-cfg.patch;apply=no \ + " +ICEDTEAPATCHES_append_powerpc64 = " \ + file://icedtea-jdk-nio-use-host-cc.patch;apply=no \ + file://icedtea-jdk-ppc64-jvm-cfg.patch;apply=no \ + " +ICEDTEAPATCHES_append_libc-uclibc = " \ + file://icedtea-hotspot-isfinte.patch;apply=no \ + file://icedtea-hotspot-glibc-version.patch;apply=no \ + file://icedtea-hotspot-loadavg.patch;apply=no \ + file://icedtea-hotspot-isnanf.patch;apply=no \ + file://icedtea-jdk-iconv-uclibc.patch;apply=no \ + file://icedtea-jdk-remove-unused-backtrace.patch;apply=no \ + file://icedtea-jdk-unpack-uclibc.patch;apply=no \ + file://icedtea-hotspot-dlvsym-uclibc.patch;apply=no \ + " + +# Allow overriding this separately +DISTRIBUTION_PATCHES = "\ + patches/icedtea-crosscompile-fix.patch \ + patches/icedtea-hostbuildcc.patch \ + patches/icedtea-unbreak-float.patch \ + patches/icedtea-remove_werror.patch \ + patches/icedtea-libnet-renaming.patch \ + patches/icedtea-fix-xrender.patch \ + patches/icedtea-shark-arm-linux-cpu-detection.patch \ + patches/icedtea-corba-parallel-make.patch \ + patches/icedtea-zero-hotspotfix.patch \ + " + +DISTRIBUTION_PATCHES_append_libc-uclibc = "\ + patches/icedtea-hotspot-isfinte.patch \ + patches/icedtea-hotspot-isnanf.patch \ + patches/icedtea-hotspot-glibc-version.patch \ + patches/icedtea-hotspot-loadavg.patch \ + patches/icedtea-jdk-iconv-uclibc.patch \ + patches/icedtea-jdk-remove-unused-backtrace.patch \ + patches/icedtea-jdk-unpack-uclibc.patch \ + patches/icedtea-hotspot-dlvsym-uclibc.patch \ + " + +DISTRIBUTION_PATCHES_append_powerpc = " \ + patches/icedtea-jdk-nio-use-host-cc.patch \ + patches/icedtea-jdk-ppc64-jvm-cfg.patch \ + " +DISTRIBUTION_PATCHES_append_powerpc64 = " \ + patches/icedtea-jdk-nio-use-host-cc.patch \ + patches/icedtea-jdk-ppc64-jvm-cfg.patch \ + " +export DISTRIBUTION_PATCHES diff --git a/recipes-core/openjdk/openjdk-7_03b21-2.1.1.bb b/recipes-core/openjdk/openjdk-7_03b21-2.1.1.bb new file mode 100644 index 0000000..42577d6 --- /dev/null +++ b/recipes-core/openjdk/openjdk-7_03b21-2.1.1.bb @@ -0,0 +1,24 @@ +require openjdk-7-release-03b21.inc + +PR = "${INC_PR}.0" + +ICEDTEA = "icedtea-2.1.1" + +SRC_URI[iced.md5sum] = "32859fa5f7337d58ae848311e2a94761" +SRC_URI[iced.sha256sum] = "4a015cf3fb8fb9aa6b3ce4a41fd9bc5dcb417a1885a10a01e92d0cc7a5ffdc65" + +HOTSPOT_CHANGESET = "8b7c4c5f6ba9" +SRC_URI[hotspot.md5sum] = "cb45a8f19d77acc1f4f48e75e36a27fe" +SRC_URI[hotspot.sha256sum] = "22866990d143e76ced94b76defa3051e5e5d9a51fd272d63daa0df272d6406a2" + +CORBA_CHANGESET = "338c21646c76" +SRC_URI[corba.md5sum] = "32d4851fca9c205fe1710a453c32a8fe" +SRC_URI[corba.sha256sum] = "10425cbbb439551293a7a96a128f25ce408c38826bef8562f4c2d65d3134a1d3" + +JAXP_CHANGESET = "7a8825b15df6" +SRC_URI[jaxp.md5sum] = "a0982b6df79739127871e355a40ca5a6" +SRC_URI[jaxp.sha256sum] = "297c8dbeed5afa5395b6be06b17282d53f8a888c2909074dfc1605afc0daf1c2" + +JDK_CHANGESET = "d5ddeffc4651" +SRC_URI[jdk.md5sum] = "27c28d6be213df818490e69f12efe475" +SRC_URI[jdk.sha256sum] = "e83e6234842376147a4c32451f23d629ba107e908ebdb0f367657f9cc6c1be98" -- cgit v1.2.3-54-g00ecf