diff -Nur icedtea-2.6.3.orig/Makefile.in icedtea-2.6.3/Makefile.in --- icedtea-2.6.3.orig/Makefile.in 2015-11-13 07:59:43.238447031 +0100 +++ icedtea-2.6.3/Makefile.in 2015-12-30 23:44:40.378409714 +0100 @@ -635,7 +635,6 @@ STAGE1_BOOT_DIR = $(abs_top_builddir)/bootstrap/boot STAGE2_BOOT_DIR = $(abs_top_builddir)/bootstrap/icedtea JAMVM_IMPORT_PATH = $(abs_top_builddir)/jamvm/install/hotspot -CRYPTO_CHECK_BUILD_DIR = $(abs_top_builddir)/cryptocheck.build STAGE1_BOOT_RUNTIME = $(STAGE1_BOOT_DIR)/jre/lib/rt.jar STAGE2_BOOT_RUNTIME = $(STAGE2_BOOT_DIR)/jre/lib/rt.jar FONTCONFIG_PATH = openjdk/jdk/src/solaris/classes/sun/awt/fontconfigs @@ -776,7 +775,7 @@ $(am__append_14) $(DISTRIBUTION_PATCHES) # Bootstrapping patches -ICEDTEA_BOOT_PATCHES = patches/boot/javafiles.patch \ +ICEDTEA_BOOT_PATCHES = patches/openadk.patch patches/boot/javafiles.patch \ patches/boot/corba-idlj.patch patches/boot/corba-no-gen.patch \ patches/boot/corba-orb.patch patches/boot/demos.patch \ patches/boot/fphexconstants.patch \ @@ -1489,7 +1488,7 @@ clean-icedtea-debug-stage2 clean-icedtea-stage1 clean-add-zero clean-add-zero-debug \ clean-add-cacao clean-add-cacao-debug clean-rt clean-rewrite-rhino clean-rewriter \ clean-add-systemtap clean-add-systemtap-debug clean-add-nss clean-add-tzdata-support \ - clean-add-tzdata-support-debug clean-cryptocheck clean-policytool-@JAVA_VER@.desktop \ + clean-add-tzdata-support-debug clean-policytool-@JAVA_VER@.desktop \ clean-jconsole-@JAVA_VER@.desktop if [ -e bootstrap ]; then \ rmdir bootstrap ; \ @@ -1522,8 +1521,7 @@ clean-add-systemtap-debug clean-add-systemtap-boot \ clean-add-nss clean-add-tzdata-support clean-add-tzdata-support-debug \ clean-add-tzdata-support-boot \ - clean-check-crypto clean-check-crypto-debug clean-check-crypto-boot \ - clean-add-archive clean-add-archive-debug clean-add-archive-boot clean-cryptocheck \ + clean-add-archive clean-add-archive-debug clean-add-archive-boot \ clean-download-hotspot clean-download-corba clean-download-jaxp \ clean-download-jaxws clean-download-langtools clean-download-jdk clean-download-openjdk \ clean-extract-corba clean-extract-jaxp clean-extract-jaxws clean-extract-jdk \ @@ -2499,16 +2497,6 @@ fi rm -f stamps/add-tzdata-support.stamp -stamps/check-crypto.stamp: stamps/cryptocheck.stamp stamps/icedtea.stamp - if [ -e $(BUILD_SDK_DIR)/bin/java ] ; then \ - $(BUILD_SDK_DIR)/bin/java -cp $(CRYPTO_CHECK_BUILD_DIR) TestCryptoLevel ; \ - fi - mkdir -p stamps - touch $@ - -clean-check-crypto: - rm -f stamps/check-crypto.stamp - stamps/add-archive.stamp: stamps/icedtea.stamp @ENABLE_CACAO_FALSE@@ENABLE_JAMVM_FALSE@@ZERO_BUILD_FALSE@ if [ -e $(BUILD_SDK_DIR)/bin/java ] ; then \ @ENABLE_CACAO_FALSE@@ENABLE_JAMVM_FALSE@@ZERO_BUILD_FALSE@ if test "x$(INSTALL_ARCH_DIR)" != "xppc64" -a "x$(INSTALL_ARCH_DIR)" != "xppc64le" ; then \ @@ -2605,16 +2593,6 @@ fi rm -f stamps/add-tzdata-support-debug.stamp -stamps/check-crypto-debug.stamp: stamps/cryptocheck.stamp stamps/icedtea-debug.stamp - if [ -e $(BUILD_DEBUG_SDK_DIR)/bin/java ] ; then \ - $(BUILD_DEBUG_SDK_DIR)/bin/java -cp $(CRYPTO_CHECK_BUILD_DIR) TestCryptoLevel ; \ - fi - mkdir -p stamps - touch $@ - -clean-check-crypto-debug: - rm -f stamps/check-crypto-debug.stamp - stamps/add-archive-debug.stamp: stamps/icedtea-debug.stamp @ENABLE_CACAO_FALSE@@ENABLE_JAMVM_FALSE@@ZERO_BUILD_FALSE@ if [ -e $(BUILD_DEBUG_SDK_DIR)/bin/java ] ; then \ @ENABLE_CACAO_FALSE@@ENABLE_JAMVM_FALSE@@ZERO_BUILD_FALSE@ if test "x$(INSTALL_ARCH_DIR)" != "xppc64" -a "x$(INSTALL_ARCH_DIR)" != "xppc64le" ; then \ @@ -2647,22 +2625,22 @@ stamps/icedtea-stage2.stamp: stamps/icedtea.stamp stamps/add-cacao.stamp \ stamps/add-zero.stamp stamps/add-jamvm.stamp stamps/add-systemtap.stamp \ - stamps/add-tzdata-support.stamp stamps/check-crypto.stamp stamps/add-archive.stamp \ + stamps/add-tzdata-support.stamp stamps/add-archive.stamp \ stamps/split-debuginfo.stamp mkdir -p stamps touch $@ -clean-icedtea-stage2: clean-add-jamvm clean-check-crypto clean-add-archive clean-split-debuginfo +clean-icedtea-stage2: clean-add-jamvm clean-add-archive clean-split-debuginfo rm -f stamps/icedtea-stage2.stamp stamps/icedtea-debug-stage2.stamp: stamps/icedtea-debug.stamp \ stamps/add-cacao-debug.stamp stamps/add-zero-debug.stamp stamps/add-jamvm-debug.stamp \ stamps/add-systemtap-debug.stamp stamps/add/tzdata-support-debug.stamp \ - stamps/check-crypto-debug.stamp stamps/add-archive-debug.stamp stamps/split-debuginfo-debug.stamp + stamps/add-archive-debug.stamp stamps/split-debuginfo-debug.stamp mkdir -p stamps touch $@ -clean-icedtea-debug-stage2: clean-add-jamvm-debug clean-check-crypto-debug \ +clean-icedtea-debug-stage2: clean-add-jamvm-debug \ clean-add-archive-debug clean-split-debuginfo-debug rm -f stamps/icedtea-debug-stage2.stamp @@ -2727,16 +2705,6 @@ fi rm -f stamps/add-tzdata-support-boot.stamp -stamps/check-crypto-boot.stamp: stamps/cryptocheck.stamp stamps/icedtea-boot.stamp - if [ -e $(BUILD_BOOT_SDK_DIR)/bin/java ] ; then \ - $(BUILD_BOOT_SDK_DIR)/bin/java -cp $(CRYPTO_CHECK_BUILD_DIR) TestCryptoLevel ; \ - fi - mkdir -p stamps - touch $@ - -clean-check-crypto-boot: - rm -f stamps/check-crypto-boot.stamp - stamps/add-archive-boot.stamp: stamps/icedtea-boot.stamp @ENABLE_CACAO_FALSE@@ENABLE_JAMVM_FALSE@@ZERO_BUILD_FALSE@ if [ -e $(BUILD_BOOT_SDK_DIR)/bin/java ] ; then \ @ENABLE_CACAO_FALSE@@ENABLE_JAMVM_FALSE@@ZERO_BUILD_FALSE@ if test "x$(INSTALL_ARCH_DIR)" != "xppc64" -a "x$(INSTALL_ARCH_DIR)" != "xppc64le" ; then \ @@ -2769,13 +2737,13 @@ stamps/icedtea-stage1.stamp: stamps/icedtea-boot.stamp \ stamps/add-systemtap-boot.stamp stamps/add-tzdata-support-boot.stamp \ - stamps/check-crypto-boot.stamp stamps/add-archive-boot.stamp \ + stamps/add-archive-boot.stamp \ stamps/split-debuginfo-boot.stamp mkdir -p stamps touch $@ clean-icedtea-stage1: clean-add-systemtap-boot clean-add-tzdata-support-boot \ - clean-check-crypto-boot clean-add-archive-boot clean-split-debuginfo-boot + clean-add-archive-boot clean-split-debuginfo-boot rm -f stamps/icedtea-stage1.stamp # Rebuild targets @@ -2855,7 +2823,7 @@ stamps/jamvm.stamp: $(OPENJDK_TREE) stamps/rt.stamp @BUILD_JAMVM_TRUE@ cd jamvm/jamvm && \ @BUILD_JAMVM_TRUE@ ./autogen.sh --with-java-runtime-library=openjdk7 \ -@BUILD_JAMVM_TRUE@ --prefix=$(abs_top_builddir)/jamvm/install ; \ +@BUILD_JAMVM_TRUE@ --prefix=$(abs_top_builddir)/jamvm/install $(CONFIGURE_ARGS); \ @BUILD_JAMVM_TRUE@ $(MAKE) ; \ @BUILD_JAMVM_TRUE@ $(MAKE) install @BUILD_JAMVM_TRUE@ mkdir -p $(abs_top_builddir)/jamvm/install/hotspot/jre/lib/$(INSTALL_ARCH_DIR)/server @@ -3196,19 +3164,6 @@ chmod u+w $(STAGE1_BOOT_RUNTIME) ; \ fi -# Crypto Level Check - -stamps/cryptocheck.stamp: $(INITIAL_BOOTSTRAP_LINK_STAMP) - mkdir -p $(CRYPTO_CHECK_BUILD_DIR) - $(BOOT_DIR)/bin/javac $(IT_JAVACFLAGS) \ - -d $(CRYPTO_CHECK_BUILD_DIR) $(CRYPTO_CHECK_SRCS) - mkdir -p stamps - touch $@ - -clean-cryptocheck: - rm -rf $(CRYPTO_CHECK_BUILD_DIR) - rm -f stamps/cryptocheck.stamp - # File substitution policytool-@JAVA_VER@.desktop: policytool.desktop @@ -3230,7 +3185,6 @@ ${mkinstalldirs} $(DESTDIR)${prefix}/jre/bin $(DESTDIR)${prefix}/jre/lib ${mkinstalldirs} $(DESTDIR)${prefix}/jre/lib/$(INSTALL_ARCH_DIR)/{.,headless,jli,xawt} ${mkinstalldirs} $(DESTDIR)${prefix}/jre/lib/ext - ${mkinstalldirs} $(DESTDIR)${prefix}/tapset @SPLIT_DEBUGINFO_TRUE@ ${mkinstalldirs} $(DESTDIR)$(DEBUG_PREFIX)/$(bindir) $(DESTDIR)$(DEBUG_PREFIX)/${exec_prefix}/lib @SPLIT_DEBUGINFO_TRUE@ ${mkinstalldirs} $(DESTDIR)$(DEBUG_PREFIX)/${exec_prefix}/lib/$(INSTALL_ARCH_DIR) @SPLIT_DEBUGINFO_TRUE@ ${mkinstalldirs} $(DESTDIR)$(DEBUG_PREFIX)/${exec_prefix}/lib/$(INSTALL_ARCH_DIR)/jli @@ -3328,9 +3282,6 @@ for files in $(BUILD_SDK_DIR)/jre/lib/ext/*.jar; do \ $(call install_file,$${files},$(DESTDIR)${prefix}/jre/lib/ext,$(INSTALL_DATA));\ done - for files in $(BUILD_SDK_DIR)/tapset/*.stp; do \ - $(call install_file,$${files},$(DESTDIR)${prefix}/tapset,$(INSTALL_DATA));\ - done $(abs_top_builddir)/pax-mark-vm $(DESTDIR)${prefix} install-data-local: @@ -3486,16 +3437,8 @@ cacao: stamps/cacao.stamp -check-crypto: stamps/check-crypto.stamp - -check-crypto-boot: stamps/check-crypto-boot.stamp - -check-crypto-debug: stamps/check-crypto-debug.stamp - clone-boot: stamps/clone-boot.stamp -cryptocheck: stamps/cryptocheck.stamp - download: stamps/download.stamp download-cacao: stamps/download-cacao.stamp diff -Nur icedtea-2.6.3.orig/patches/openadk.patch icedtea-2.6.3/patches/openadk.patch --- icedtea-2.6.3.orig/patches/openadk.patch 1970-01-01 01:00:00.000000000 +0100 +++ icedtea-2.6.3/patches/openadk.patch 2015-12-30 23:39:55.373247806 +0100 @@ -0,0 +1,1424 @@ +diff -Nur openjdk.orig/corba/make/common/shared/Defs-utils.gmk openjdk/corba/make/common/shared/Defs-utils.gmk +--- openjdk.orig/corba/make/common/shared/Defs-utils.gmk 2015-11-13 05:54:57.000000000 +0100 ++++ openjdk/corba/make/common/shared/Defs-utils.gmk 2015-12-20 12:14:00.000000000 +0100 +@@ -136,12 +136,12 @@ + TRUE = $(UTILS_COMMAND_PATH)true + UNAME = $(UTILS_COMMAND_PATH)uname + UNIQ = $(UTILS_USR_BIN_PATH)uniq +-UNZIP = $(UTILS_USR_BIN_PATH)unzip +-UNZIPSFX = $(UTILS_DEVTOOL_PATH)unzipsfx ++UNZIP = unzip ++UNZIPSFX = unzipsfx + WC = $(UTILS_USR_BIN_PATH)wc + WHICH = $(UTILS_USR_BIN_PATH)which + YACC = $(UTILS_CCS_BIN_PATH)yacc +-ZIPEXE = $(UTILS_DEVTOOL_PATH)zip ++ZIPEXE = zip + + # Special cases + #RM is defined by GNU Make as 'rm -f' +diff -Nur openjdk.orig/hotspot/make/linux/makefiles/gcc.make openjdk/hotspot/make/linux/makefiles/gcc.make +--- openjdk.orig/hotspot/make/linux/makefiles/gcc.make 2015-11-13 05:57:20.000000000 +0100 ++++ openjdk/hotspot/make/linux/makefiles/gcc.make 2015-12-20 19:41:28.000000000 +0100 +@@ -77,7 +77,7 @@ + VM_PICFLAG = $(VM_PICFLAG/$(LINK_INTO)) + + ifeq ($(TYPE),ZERO) +-CFLAGS += $(LIBFFI_CFLAGS) ++CFLAGS += $(LIBFFI_CFLAGS) -Wl,-Bstatic $(LIBFFI_LIBS) -Wl,-Bdynamic + endif + ifeq ($(TYPE),SHARK) + CFLAGS += $(LIBFFI_CFLAGS) +diff -Nur openjdk.orig/hotspot/make/linux/makefiles/vm.make openjdk/hotspot/make/linux/makefiles/vm.make +--- openjdk.orig/hotspot/make/linux/makefiles/vm.make 2015-11-13 05:57:20.000000000 +0100 ++++ openjdk/hotspot/make/linux/makefiles/vm.make 2015-12-20 21:10:02.000000000 +0100 +@@ -301,27 +301,9 @@ + LIBJVM_MAPFILE$(LDNOMAP) = mapfile_reorder + LFLAGS_VM$(LDNOMAP) += $(MAPFLAG:FILENAME=$(LIBJVM_MAPFILE)) + LFLAGS_VM += $(SONAMEFLAG:SONAME=$(LIBJVM)) +- +- # JVM is statically linked with libgcc[_s] and libstdc++; this is needed to +- # get around library dependency and compatibility issues. Must use gcc not +- # g++ to link. +- ifeq ($(STATIC_CXX), true) +- LFLAGS_VM += $(STATIC_LIBGCC) +- LIBS_VM += $(STATIC_STDCXX) +- else +- LIBS_VM += -lstdc++ +- endif +- +- LIBS_VM += $(LIBS) +-endif +-ifeq ($(TYPE),ZERO) +- LIBS_VM += $(LIBFFI_LIBS) +-endif +-ifeq ($(TYPE),SHARK) +- LIBS_VM += $(LIBFFI_LIBS) $(LLVM_LIBS) +- LFLAGS_VM += $(LLVM_LDFLAGS) + endif + ++LIBS_VM = $(LIBS) -lstdc++ $(LIBFFI_CFLAGS) -Wl,-Bstatic $(LIBFFI_LIBS) -Wl,-Bdynamic + LINK_VM = $(LINK_LIB.CC) + + # rule for building precompiled header +@@ -358,6 +340,7 @@ + $(LIBJVM): $(LIBJVM.o) $(LIBJVM_MAPFILE) $(LD_SCRIPT) + $(QUIETLY) { \ + echo Linking vm...; \ ++ echo DEBUG: $(LIBS_VM); \ + $(LINK_LIB.CXX/PRE_HOOK) \ + $(LINK_VM) $(LD_SCRIPT_FLAG) \ + $(LFLAGS_VM) -o $@ $(LIBJVM.o) $(LIBS_VM); \ +diff -Nur openjdk.orig/hotspot/make/linux/makefiles/zeroshark.make openjdk/hotspot/make/linux/makefiles/zeroshark.make +--- openjdk.orig/hotspot/make/linux/makefiles/zeroshark.make 2015-11-13 05:57:20.000000000 +0100 ++++ openjdk/hotspot/make/linux/makefiles/zeroshark.make 2015-12-24 00:11:09.000000000 +0100 +@@ -39,20 +39,20 @@ + + offsets_arm.s: mkoffsets + @echo Generating assembler offsets +- ./mkoffsets > $@ ++ $(QEMU) ./mkoffsets > $@ + + bytecodes_arm.s: bytecodes_arm.def mkbc + @echo Generating ARM assembler bytecode sequences +- $(CXX_COMPILE) -E -x c++ - < $< | ./mkbc - $@ $(COMPILE_DONE) ++ $(CXX_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) +- $(CXX_COMPILE) -DSTATIC_OFFSETS -o $@ $< $(COMPILE_DONE) ++ $(CXX_COMPILE) -Wl,-static -static -static-libstdc++ -DSTATIC_OFFSETS -o $@ $< $(COMPILE_DONE) + + endif + endif +diff -Nur openjdk.orig/hotspot/src/os/linux/vm/os_linux.cpp openjdk/hotspot/src/os/linux/vm/os_linux.cpp +--- openjdk.orig/hotspot/src/os/linux/vm/os_linux.cpp 2015-11-13 05:57:20.000000000 +0100 ++++ openjdk/hotspot/src/os/linux/vm/os_linux.cpp 2015-12-20 12:14:00.000000000 +0100 +@@ -116,7 +116,6 @@ + # include + # include + # include +-# include + # include + # include + # include +@@ -674,9 +673,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); + } + +@@ -2977,10 +2974,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; + } + +@@ -5665,7 +5659,21 @@ + // 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 -Nur openjdk.orig/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.hpp openjdk/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.hpp +--- openjdk.orig/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.hpp 2015-11-13 05:57:20.000000000 +0100 ++++ openjdk/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.hpp 2015-12-20 12:14:00.000000000 +0100 +@@ -36,7 +36,7 @@ + + // Atomically copy 64 bits of data + static void atomic_copy64(volatile void *src, volatile void *dst) { +-#if defined(PPC32) ++#if defined(PPC32) && !defined(__NO_FPRS__) + double tmp; + asm volatile ("lfd %0, 0(%1)\n" + "stfd %0, 0(%2)\n" +diff -Nur openjdk.orig/hotspot/src/share/vm/utilities/globalDefinitions_gcc.hpp openjdk/hotspot/src/share/vm/utilities/globalDefinitions_gcc.hpp +--- openjdk.orig/hotspot/src/share/vm/utilities/globalDefinitions_gcc.hpp 2015-11-13 05:57:20.000000000 +0100 ++++ openjdk/hotspot/src/share/vm/utilities/globalDefinitions_gcc.hpp 2015-12-20 12:14:00.000000000 +0100 +@@ -245,7 +245,7 @@ + #elif defined(__APPLE__) + inline int g_isnan(double f) { return isnan(f); } + #elif defined(LINUX) || defined(_ALLBSD_SOURCE) +-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" +@@ -259,8 +259,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 -Nur openjdk.orig/jdk/make/com/sun/java/pack/Makefile openjdk/jdk/make/com/sun/java/pack/Makefile +--- openjdk.orig/jdk/make/com/sun/java/pack/Makefile 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk/jdk/make/com/sun/java/pack/Makefile 2015-12-20 12:14:00.000000000 +0100 +@@ -79,7 +79,7 @@ + OTHER_CXXFLAGS += $(ZLIB_CFLAGS) -DSYSTEM_ZLIB + endif + else +- OTHER_CXXFLAGS += -DNO_ZLIB -DUNPACK_JNI ++ CXXFLAGS_COMMON += -DNO_ZLIB -DUNPACK_JNI + OTHER_LDLIBS += $(JVMLIB) + endif + +diff -Nur openjdk.orig/jdk/make/com/sun/nio/sctp/Makefile openjdk/jdk/make/com/sun/nio/sctp/Makefile +--- openjdk.orig/jdk/make/com/sun/nio/sctp/Makefile 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk/jdk/make/com/sun/nio/sctp/Makefile 2015-12-21 11:18:13.000000000 +0100 +@@ -75,8 +75,8 @@ + ifneq ($(COMPILER_WARNINGS_FATAL),false) + COMPILER_WARNINGS_FATAL=true + endif +-#OTHER_LDLIBS += -L$(LIBDIR)/$(LIBARCH) -ljava -lnet -lpthread -ldl +-OTHER_LDLIBS += -L$(LIBDIR)/$(LIBARCH) -lnio -lnet -lpthread ++#OTHER_LDLIBS += -L$(LIBDIR)/$(LIBARCH) -ljava -ljavanet -lpthread -ldl ++OTHER_LDLIBS += -L$(LIBDIR)/$(LIBARCH) -lnio -ljavanet -lpthread + endif + ifeq ($(PLATFORM), solaris) + #LIBSCTP = -lsctp +diff -Nur openjdk.orig/jdk/make/common/Defs.gmk openjdk/jdk/make/common/Defs.gmk +--- openjdk.orig/jdk/make/common/Defs.gmk 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk/jdk/make/common/Defs.gmk 2015-12-20 12:14:00.000000000 +0100 +@@ -207,7 +207,7 @@ + ifeq ($(PLATFORM), macosx) + FREETYPE_HEADERS_PATH = /usr/X11R6/include + else +- FREETYPE_HEADERS_PATH = /usr/include ++ FREETYPE_HEADERS_PATH = /usr/include/disabled + endif + endif + endif +diff -Nur openjdk.orig/jdk/make/common/Sanity.gmk openjdk/jdk/make/common/Sanity.gmk +--- openjdk.orig/jdk/make/common/Sanity.gmk 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk/jdk/make/common/Sanity.gmk 2015-12-20 12:14:00.000000000 +0100 +@@ -91,8 +91,7 @@ + sane-ld_run_path \ + sane-alt_bootdir \ + sane-bootdir \ +- sane-local-bootdir \ +- sane-alsa-headers ++ sane-local-bootdir + + ifdef OPENJDK + sanity-all:: sane-freetype +diff -Nur openjdk.orig/jdk/make/common/shared/Defs-utils.gmk openjdk/jdk/make/common/shared/Defs-utils.gmk +--- openjdk.orig/jdk/make/common/shared/Defs-utils.gmk 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk/jdk/make/common/shared/Defs-utils.gmk 2015-12-20 12:15:04.000000000 +0100 +@@ -157,13 +157,13 @@ + TRUE = $(UTILS_COMMAND_PATH)true + UNAME = $(UTILS_COMMAND_PATH)uname + UNIQ = $(UTILS_USR_BIN_PATH)uniq +-UNZIP = $(UTILS_USR_BIN_PATH)unzip +-UNZIPSFX = $(UTILS_DEVTOOL_PATH)unzipsfx ++UNZIP = unzip ++UNZIPSFX = unzipsfx + XARGS = $(UTILS_USR_BIN_PATH)xargs + WC = $(UTILS_USR_BIN_PATH)wc + WHICH = $(UTILS_USR_BIN_PATH)which + YACC = $(UTILS_CCS_BIN_PATH)yacc +-ZIPEXE = $(UTILS_DEVTOOL_PATH)zip ++ZIPEXE = zip + + # Special cases + #RM is defined by GNU Make as 'rm -f' +diff -Nur openjdk.orig/jdk/make/common/shared/Platform.gmk openjdk/jdk/make/common/shared/Platform.gmk +--- openjdk.orig/jdk/make/common/shared/Platform.gmk 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk/jdk/make/common/shared/Platform.gmk 2015-12-20 12:14:00.000000000 +0100 +@@ -170,9 +170,6 @@ + else + mach := $(shell uname -m) + endif +- ifneq (,$(wildcard /usr/bin/dpkg-architecture)) +- mach := $(shell (dpkg-architecture -qDEB_HOST_ARCH_CPU 2>/dev/null || echo $(mach)) | sed 's/arm64/aarch64/;s/powerpc$$/ppc/;s/hppa/parisc/;s/ppc64el/ppc64le/') +- endif + archExpr = case "$(mach)" in \ + i[3-9]86) \ + echo i586 \ +diff -Nur openjdk.orig/jdk/make/common/shared/Sanity.gmk openjdk/jdk/make/common/shared/Sanity.gmk +--- openjdk.orig/jdk/make/common/shared/Sanity.gmk 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk/jdk/make/common/shared/Sanity.gmk 2015-12-20 12:14:00.000000000 +0100 +@@ -114,11 +114,6 @@ + elif [ -f /etc/lsb-release ] ; then \ + $(EGREP) DISTRIB_RELEASE /etc/lsb-release | $(SED) -e 's@.*DISTRIB_RELEASE=\(.*\)@\1@'; \ + fi) +- ALSA_INCLUDE=/usr/include/alsa/version.h +- ALSA_LIBRARY=/usr/lib/libasound.so +- _ALSA_VERSION := $(shell $(EGREP) SND_LIB_VERSION_STR $(ALSA_INCLUDE) | \ +- $(SED) -e 's@.*"\(.*\)".*@\1@' ) +- ALSA_VERSION := $(call GetVersion,$(_ALSA_VERSION)) + endif + + ifeq ($(PLATFORM), macosx) +@@ -225,7 +220,6 @@ + sane-compiler \ + sane-link \ + sane-cacerts \ +- sane-alsa-headers \ + sane-ant_version \ + sane-zip_version \ + sane-unzip_version \ +@@ -1381,34 +1375,6 @@ + endif + endif + +-###################################################### +-# Check that ALSA headers and libs are installed and +-# that the header has the right version. We only +-# need /usr/include/alsa/version.h and /usr/lib/libasound.so +-###################################################### +- +-ifdef REQUIRED_ALSA_VERSION +- ALSA_CHECK := $(call CheckVersions,$(ALSA_VERSION),$(REQUIRED_ALSA_VERSION)) +-endif +-sane-alsa-headers: +-ifdef REQUIRED_ALSA_VERSION +- @if [ "$(ALSA_CHECK)" != "missing" ] ; then \ +- if [ "$(ALSA_CHECK)" != "same" -a "$(ALSA_CHECK)" != "newer" ] ; then \ +- $(ECHO) "ERROR: The ALSA version must be $(REQUIRED_ALSA_VERSION) or higher. \n" \ +- " You have the following ALSA version installed: $${alsa_version} \n" \ +- " Please reinstall ALSA (drivers and lib). You can download \n" \ +- " the source distribution from http://www.alsa-project.org \n" \ +- " or go to http://www.freshrpms.net/docs/alsa/ for precompiled RPM packages. \n" \ +- "" >> $(ERROR_FILE) ; \ +- fi ; \ +- else \ +- $(ECHO) "ERROR: You seem to not have installed ALSA $(REQUIRED_ALSA_VERSION) or higher. \n" \ +- " Please install ALSA (drivers and lib). You can download the \n" \ +- " source distribution from http://www.alsa-project.org or go to \n" \ +- " http://www.freshrpms.net/docs/alsa/ for precompiled RPM packages. \n" \ +- "" >> $(ERROR_FILE) ; \ +- fi +-endif + + # If a sanity file doesn't exist, just make sure it's dir exists + $(SANITY_FILES): +diff -Nur openjdk.orig/jdk/make/java/fdlibm/Makefile openjdk/jdk/make/java/fdlibm/Makefile +--- openjdk.orig/jdk/make/java/fdlibm/Makefile 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk/jdk/make/java/fdlibm/Makefile 2015-12-20 12:14:00.000000000 +0100 +@@ -81,7 +81,7 @@ + # + # Things that must be linked in. + # +-OTHER_LDLIBS = ++OTHER_LDLIBS = -lm + + # + # Files to compile. +diff -Nur openjdk.orig/jdk/make/java/net/Makefile openjdk/jdk/make/java/net/Makefile +--- openjdk.orig/jdk/make/java/net/Makefile 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk/jdk/make/java/net/Makefile 2015-12-20 12:14:00.000000000 +0100 +@@ -25,7 +25,7 @@ + + BUILDDIR = ../.. + PACKAGE = java.net +-LIBRARY = net ++LIBRARY = javanet + PRODUCT = sun + include $(BUILDDIR)/common/Defs.gmk + +diff -Nur openjdk.orig/jdk/make/java/nio/Makefile openjdk/jdk/make/java/nio/Makefile +--- openjdk.orig/jdk/make/java/nio/Makefile 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk/jdk/make/java/nio/Makefile 2015-12-20 12:14:00.000000000 +0100 +@@ -409,7 +409,7 @@ + endif + + ifeq ($(PLATFORM), linux) +- OTHER_LDLIBS += -L$(LIBDIR)/$(LIBARCH) -ljava -lnet -lpthread $(LIBDL) ++ OTHER_LDLIBS += -L$(LIBDIR)/$(LIBARCH) -ljava -ljavanet -lpthread $(LIBDL) + ifeq ($(SYSTEM_GIO), true) + OTHER_LDLIBS += $(GIO_LIBS) + OTHER_INCLUDES += $(GIO_CFLAGS) -DUSE_SYSTEM_GIO +@@ -966,7 +966,7 @@ + + $(GENSOR_EXE) : $(TEMPDIR)/$(GENSOR_SRC) + $(prep-target) +- ($(CD) $(TEMPDIR); $(NIO_CC) $(CPPFLAGS) $(LDDFLAGS) \ ++ ($(CD) $(TEMPDIR); $(HOST_CC) $(CPPFLAGS_FOR_BUILD) $(LDDFLAGS) \ + -o genSocketOptionRegistry$(EXE_SUFFIX) $(GENSOR_SRC)) + + ifdef NIO_PLATFORM_CLASSES_ROOT_DIR +@@ -1002,7 +1002,7 @@ + + $(GENUC_EXE) : $(GENUC_SRC) + $(prep-target) +- $(NIO_CC) $(CPPFLAGS) -o $@ $(GENUC_SRC) ++ $(HOST_CC) $(CPPFLAGS_FOR_BUILD) -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 +diff -Nur openjdk.orig/jdk/make/javax/sound/jsoundalsa/Makefile openjdk/jdk/make/javax/sound/jsoundalsa/Makefile +--- openjdk.orig/jdk/make/javax/sound/jsoundalsa/Makefile 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk/jdk/make/javax/sound/jsoundalsa/Makefile 2015-12-20 12:14:00.000000000 +0100 +@@ -72,6 +72,7 @@ + -DUSE_PORTS=TRUE \ + -DUSE_PLATFORM_MIDI_OUT=TRUE \ + -DUSE_PLATFORM_MIDI_IN=TRUE \ ++ $(ALSA_CPPFLAGS) \ + -I$(SHARE_SRC)/native/com/sun/media/sound + + # +diff -Nur openjdk.orig/jdk/make/sun/awt/mawt.gmk openjdk/jdk/make/sun/awt/mawt.gmk +--- openjdk.orig/jdk/make/sun/awt/mawt.gmk 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk/jdk/make/sun/awt/mawt.gmk 2015-12-20 12:14:00.000000000 +0100 +@@ -151,22 +151,6 @@ + #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 @@ + 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 -lX11 -lXi + endif + + endif +@@ -231,11 +215,6 @@ + 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 \ +@@ -270,11 +249,6 @@ + endif # !HEADLESS + endif # PLATFORM + +-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), macosx) + CPPFLAGS += -I$(OPENWIN_HOME)/include/X11/extensions \ +diff -Nur openjdk.orig/jdk/make/sun/xawt/Makefile openjdk/jdk/make/sun/xawt/Makefile +--- openjdk.orig/jdk/make/sun/xawt/Makefile 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk/jdk/make/sun/xawt/Makefile 2015-12-20 12:14:00.000000000 +0100 +@@ -299,16 +299,10 @@ + SIZERS = $(SIZER).32 + SIZERS_C = $(SIZER_32_C) + SIZES = $(WRAPPER_GENERATOR_DIR)/sizes.32 +-ifdef CROSS_COMPILE_ARCH +-CFLAGS_32 = -m32 +-endif + else # !32 + SIZERS = $(SIZER).64 + SIZERS_C = $(SIZER_64_C) + SIZES = $(WRAPPER_GENERATOR_DIR)/sizes.64 +-ifdef CROSS_COMPILE_ARCH +-CFLAGS_64 = -m64 +-endif + endif # 32 + endif # !macosx + endif # solaris +@@ -344,11 +338,7 @@ + WRAPPER_GENERATOR_CLASS=$(WRAPPER_GENERATOR_TEMPDIR)/WrapperGenerator.class + XLIBTYPES=$(PLATFORM_SRC)/classes/sun/awt/X11/generator/xlibtypes.txt + +-ifndef CROSS_COMPILE_ARCH +-SIZERS_CC = $(CC) +-else +-SIZERS_CC = $(HOST_CC) +-endif ++SIZERS_CC = $(CC) -static + + $(SIZERS): $(SIZERS_C) + $(prep-target) +@@ -371,7 +361,7 @@ + $(CHMOD) +w $@;\ + else \ + $(ECHO) GENERATING $@; \ +- $(WRAPPER_GENERATOR_DIR)/sizer$(suffix $@) > $@; \ ++ $(QEMU) $(WRAPPER_GENERATOR_DIR)/sizer$(suffix $@) > $@; \ + fi + @if [ "$(DOCOMPARE)$(suffix $@)" = "true.64" ]; then \ + $(ECHO) COMPARING $@ and $(STORED_SIZES_TMPL_$(PLATFORM)_$(LIBARCH)); \ +diff -Nur openjdk.orig/jdk/src/share/classes/java/net/AbstractPlainDatagramSocketImpl.java openjdk/jdk/src/share/classes/java/net/AbstractPlainDatagramSocketImpl.java +--- openjdk.orig/jdk/src/share/classes/java/net/AbstractPlainDatagramSocketImpl.java 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk/jdk/src/share/classes/java/net/AbstractPlainDatagramSocketImpl.java 2015-12-20 12:14:00.000000000 +0100 +@@ -69,7 +69,7 @@ + */ + static { + java.security.AccessController.doPrivileged( +- new sun.security.action.LoadLibraryAction("net")); ++ new sun.security.action.LoadLibraryAction("javanet")); + init(); + } + +diff -Nur openjdk.orig/jdk/src/share/classes/java/net/AbstractPlainSocketImpl.java openjdk/jdk/src/share/classes/java/net/AbstractPlainSocketImpl.java +--- openjdk.orig/jdk/src/share/classes/java/net/AbstractPlainSocketImpl.java 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk/jdk/src/share/classes/java/net/AbstractPlainSocketImpl.java 2015-12-20 12:14:00.000000000 +0100 +@@ -78,7 +78,7 @@ + */ + static { + java.security.AccessController.doPrivileged( +- new sun.security.action.LoadLibraryAction("net")); ++ new sun.security.action.LoadLibraryAction("javanet")); + } + + /** +diff -Nur openjdk.orig/jdk/src/share/classes/java/net/DatagramPacket.java openjdk/jdk/src/share/classes/java/net/DatagramPacket.java +--- openjdk.orig/jdk/src/share/classes/java/net/DatagramPacket.java 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk/jdk/src/share/classes/java/net/DatagramPacket.java 2015-12-20 12:14:00.000000000 +0100 +@@ -47,7 +47,7 @@ + */ + static { + java.security.AccessController.doPrivileged( +- new sun.security.action.LoadLibraryAction("net")); ++ new sun.security.action.LoadLibraryAction("javanet")); + init(); + } + +diff -Nur openjdk.orig/jdk/src/share/classes/java/net/InetAddress.java openjdk/jdk/src/share/classes/java/net/InetAddress.java +--- openjdk.orig/jdk/src/share/classes/java/net/InetAddress.java 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk/jdk/src/share/classes/java/net/InetAddress.java 2015-12-20 12:14:00.000000000 +0100 +@@ -288,7 +288,7 @@ + static { + preferIPv6Address = java.security.AccessController.doPrivileged( + new GetBooleanAction("java.net.preferIPv6Addresses")).booleanValue(); +- AccessController.doPrivileged(new LoadLibraryAction("net")); ++ AccessController.doPrivileged(new LoadLibraryAction("javanet")); + init(); + } + +diff -Nur openjdk.orig/jdk/src/share/classes/java/net/NetworkInterface.java openjdk/jdk/src/share/classes/java/net/NetworkInterface.java +--- openjdk.orig/jdk/src/share/classes/java/net/NetworkInterface.java 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk/jdk/src/share/classes/java/net/NetworkInterface.java 2015-12-20 12:14:00.000000000 +0100 +@@ -53,7 +53,7 @@ + private static final int defaultIndex; /* index of defaultInterface */ + + static { +- AccessController.doPrivileged(new LoadLibraryAction("net")); ++ AccessController.doPrivileged(new LoadLibraryAction("javanet")); + init(); + defaultInterface = DefaultInterface.getDefault(); + if (defaultInterface != null) { +diff -Nur openjdk.orig/jdk/src/share/classes/sun/net/sdp/SdpSupport.java openjdk/jdk/src/share/classes/sun/net/sdp/SdpSupport.java +--- openjdk.orig/jdk/src/share/classes/sun/net/sdp/SdpSupport.java 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk/jdk/src/share/classes/sun/net/sdp/SdpSupport.java 2015-12-20 12:14:00.000000000 +0100 +@@ -76,6 +76,6 @@ + + static { + AccessController.doPrivileged( +- new sun.security.action.LoadLibraryAction("net")); ++ new sun.security.action.LoadLibraryAction("javanet")); + } + } +diff -Nur openjdk.orig/jdk/src/share/classes/sun/net/spi/DefaultProxySelector.java openjdk/jdk/src/share/classes/sun/net/spi/DefaultProxySelector.java +--- openjdk.orig/jdk/src/share/classes/sun/net/spi/DefaultProxySelector.java 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk/jdk/src/share/classes/sun/net/spi/DefaultProxySelector.java 2015-12-20 12:14:00.000000000 +0100 +@@ -95,7 +95,7 @@ + }}); + if (b != null && b.booleanValue()) { + java.security.AccessController.doPrivileged( +- new sun.security.action.LoadLibraryAction("net")); ++ new sun.security.action.LoadLibraryAction("javanet")); + hasSystemProxies = init(); + } + } +diff -Nur openjdk.orig/jdk/src/share/classes/sun/nio/ch/Util.java openjdk/jdk/src/share/classes/sun/nio/ch/Util.java +--- openjdk.orig/jdk/src/share/classes/sun/nio/ch/Util.java 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk/jdk/src/share/classes/sun/nio/ch/Util.java 2015-12-20 12:14:00.000000000 +0100 +@@ -483,7 +483,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 +diff -Nur openjdk.orig/jdk/src/solaris/bin/mipsel/jvm.cfg openjdk/jdk/src/solaris/bin/mipsel/jvm.cfg +--- openjdk.orig/jdk/src/solaris/bin/mipsel/jvm.cfg 1970-01-01 01:00:00.000000000 +0100 ++++ openjdk/jdk/src/solaris/bin/mipsel/jvm.cfg 2015-12-20 12:14:00.000000000 +0100 +@@ -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 -Nur openjdk.orig/jdk/src/solaris/classes/sun/net/dns/ResolverConfigurationImpl.java openjdk/jdk/src/solaris/classes/sun/net/dns/ResolverConfigurationImpl.java +--- openjdk.orig/jdk/src/solaris/classes/sun/net/dns/ResolverConfigurationImpl.java 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk/jdk/src/solaris/classes/sun/net/dns/ResolverConfigurationImpl.java 2015-12-20 12:14:00.000000000 +0100 +@@ -256,7 +256,7 @@ + + static { + java.security.AccessController.doPrivileged( +- new sun.security.action.LoadLibraryAction("net")); ++ new sun.security.action.LoadLibraryAction("javanet")); + } + + } +diff -Nur openjdk.orig/jdk/src/solaris/native/sun/awt/awt_InputMethod.c openjdk/jdk/src/solaris/native/sun/awt/awt_InputMethod.c +--- openjdk.orig/jdk/src/solaris/native/sun/awt/awt_InputMethod.c 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk/jdk/src/solaris/native/sun/awt/awt_InputMethod.c 2015-12-20 12:14:00.000000000 +0100 +@@ -246,7 +246,8 @@ + if (wcs == NULL) + return NULL; + +- n = len*MB_CUR_MAX + 1; ++ //evil hack for uclibc ++ n = len*1 + 1; + + mbs = (char *) malloc(n * sizeof(char)); + if (mbs == NULL) { +diff -Nur openjdk.orig/jdk/src/solaris/native/sun/xawt/XToolkit.c openjdk/jdk/src/solaris/native/sun/xawt/XToolkit.c +--- openjdk.orig/jdk/src/solaris/native/sun/xawt/XToolkit.c 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk/jdk/src/solaris/native/sun/xawt/XToolkit.c 2015-12-20 12:14:00.000000000 +0100 +@@ -27,9 +27,6 @@ + #include + #include + #include +-#ifdef __linux__ +-#include +-#endif + + #include + #include +@@ -785,25 +782,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; +diff -Nur openjdk.orig/jdk/src/windows/classes/sun/net/dns/ResolverConfigurationImpl.java openjdk/jdk/src/windows/classes/sun/net/dns/ResolverConfigurationImpl.java +--- openjdk.orig/jdk/src/windows/classes/sun/net/dns/ResolverConfigurationImpl.java 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk/jdk/src/windows/classes/sun/net/dns/ResolverConfigurationImpl.java 2015-12-20 12:14:00.000000000 +0100 +@@ -159,7 +159,7 @@ + + static { + java.security.AccessController.doPrivileged( +- new sun.security.action.LoadLibraryAction("net")); ++ new sun.security.action.LoadLibraryAction("javanet")); + init0(); + + // start the address listener thread +diff -Nur openjdk-boot.orig/corba/make/common/shared/Defs-utils.gmk openjdk-boot/corba/make/common/shared/Defs-utils.gmk +--- openjdk-boot.orig/corba/make/common/shared/Defs-utils.gmk 2015-11-13 05:54:57.000000000 +0100 ++++ openjdk-boot/corba/make/common/shared/Defs-utils.gmk 2015-12-20 21:54:16.000000000 +0100 +@@ -136,12 +136,12 @@ + TRUE = $(UTILS_COMMAND_PATH)true + UNAME = $(UTILS_COMMAND_PATH)uname + UNIQ = $(UTILS_USR_BIN_PATH)uniq +-UNZIP = $(UTILS_USR_BIN_PATH)unzip +-UNZIPSFX = $(UTILS_DEVTOOL_PATH)unzipsfx ++UNZIP = unzip ++UNZIPSFX = unzipsfx + WC = $(UTILS_USR_BIN_PATH)wc + WHICH = $(UTILS_USR_BIN_PATH)which + YACC = $(UTILS_CCS_BIN_PATH)yacc +-ZIPEXE = $(UTILS_DEVTOOL_PATH)zip ++ZIPEXE = zip + + # Special cases + #RM is defined by GNU Make as 'rm -f' +diff -Nur openjdk-boot.orig/hotspot/make/linux/makefiles/gcc.make openjdk-boot/hotspot/make/linux/makefiles/gcc.make +--- openjdk-boot.orig/hotspot/make/linux/makefiles/gcc.make 2015-11-13 05:57:20.000000000 +0100 ++++ openjdk-boot/hotspot/make/linux/makefiles/gcc.make 2015-12-20 21:54:16.000000000 +0100 +@@ -77,7 +77,7 @@ + VM_PICFLAG = $(VM_PICFLAG/$(LINK_INTO)) + + ifeq ($(TYPE),ZERO) +-CFLAGS += $(LIBFFI_CFLAGS) ++CFLAGS += $(LIBFFI_CFLAGS) -Wl,-Bstatic $(LIBFFI_LIBS) -Wl,-Bdynamic + endif + ifeq ($(TYPE),SHARK) + CFLAGS += $(LIBFFI_CFLAGS) +diff -Nur openjdk-boot.orig/hotspot/make/linux/makefiles/vm.make openjdk-boot/hotspot/make/linux/makefiles/vm.make +--- openjdk-boot.orig/hotspot/make/linux/makefiles/vm.make 2015-11-13 05:57:20.000000000 +0100 ++++ openjdk-boot/hotspot/make/linux/makefiles/vm.make 2015-12-20 21:54:16.000000000 +0100 +@@ -301,27 +301,9 @@ + LIBJVM_MAPFILE$(LDNOMAP) = mapfile_reorder + LFLAGS_VM$(LDNOMAP) += $(MAPFLAG:FILENAME=$(LIBJVM_MAPFILE)) + LFLAGS_VM += $(SONAMEFLAG:SONAME=$(LIBJVM)) +- +- # JVM is statically linked with libgcc[_s] and libstdc++; this is needed to +- # get around library dependency and compatibility issues. Must use gcc not +- # g++ to link. +- ifeq ($(STATIC_CXX), true) +- LFLAGS_VM += $(STATIC_LIBGCC) +- LIBS_VM += $(STATIC_STDCXX) +- else +- LIBS_VM += -lstdc++ +- endif +- +- LIBS_VM += $(LIBS) +-endif +-ifeq ($(TYPE),ZERO) +- LIBS_VM += $(LIBFFI_LIBS) +-endif +-ifeq ($(TYPE),SHARK) +- LIBS_VM += $(LIBFFI_LIBS) $(LLVM_LIBS) +- LFLAGS_VM += $(LLVM_LDFLAGS) + endif + ++LIBS_VM = $(LIBS) -lstdc++ $(LIBFFI_CFLAGS) -Wl,-Bstatic $(LIBFFI_LIBS) -Wl,-Bdynamic + LINK_VM = $(LINK_LIB.CC) + + # rule for building precompiled header +@@ -358,6 +340,7 @@ + $(LIBJVM): $(LIBJVM.o) $(LIBJVM_MAPFILE) $(LD_SCRIPT) + $(QUIETLY) { \ + echo Linking vm...; \ ++ echo DEBUG: $(LIBS_VM); \ + $(LINK_LIB.CXX/PRE_HOOK) \ + $(LINK_VM) $(LD_SCRIPT_FLAG) \ + $(LFLAGS_VM) -o $@ $(LIBJVM.o) $(LIBS_VM); \ +diff -Nur openjdk-boot.orig/hotspot/make/linux/makefiles/zeroshark.make openjdk-boot/hotspot/make/linux/makefiles/zeroshark.make +--- openjdk-boot.orig/hotspot/make/linux/makefiles/zeroshark.make 2015-11-13 05:57:20.000000000 +0100 ++++ openjdk-boot/hotspot/make/linux/makefiles/zeroshark.make 2015-12-20 21:54:16.000000000 +0100 +@@ -39,20 +39,20 @@ + + offsets_arm.s: mkoffsets + @echo Generating assembler offsets +- ./mkoffsets > $@ ++ $(QEMU) ./mkoffsets > $@ + + bytecodes_arm.s: bytecodes_arm.def mkbc + @echo Generating ARM assembler bytecode sequences +- $(CXX_COMPILE) -E -x c++ - < $< | ./mkbc - $@ $(COMPILE_DONE) ++ $(CXX_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) +- $(CXX_COMPILE) -DSTATIC_OFFSETS -o $@ $< $(COMPILE_DONE) ++ $(CXX_COMPILE) -static -DSTATIC_OFFSETS -o $@ $< $(COMPILE_DONE) + + endif + endif +diff -Nur openjdk-boot.orig/hotspot/src/os/linux/vm/os_linux.cpp openjdk-boot/hotspot/src/os/linux/vm/os_linux.cpp +--- openjdk-boot.orig/hotspot/src/os/linux/vm/os_linux.cpp 2015-11-13 05:57:20.000000000 +0100 ++++ openjdk-boot/hotspot/src/os/linux/vm/os_linux.cpp 2015-12-20 21:54:16.000000000 +0100 +@@ -116,7 +116,6 @@ + # include + # include + # include +-# include + # include + # include + # include +@@ -674,9 +673,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); + } + +@@ -2977,10 +2974,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; + } + +@@ -5665,7 +5659,21 @@ + // 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 -Nur openjdk-boot.orig/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.hpp openjdk-boot/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.hpp +--- openjdk-boot.orig/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.hpp 2015-11-13 05:57:20.000000000 +0100 ++++ openjdk-boot/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.hpp 2015-12-20 21:54:16.000000000 +0100 +@@ -36,7 +36,7 @@ + + // Atomically copy 64 bits of data + static void atomic_copy64(volatile void *src, volatile void *dst) { +-#if defined(PPC32) ++#if defined(PPC32) && !defined(__NO_FPRS__) + double tmp; + asm volatile ("lfd %0, 0(%1)\n" + "stfd %0, 0(%2)\n" +diff -Nur openjdk-boot.orig/hotspot/src/share/vm/utilities/globalDefinitions_gcc.hpp openjdk-boot/hotspot/src/share/vm/utilities/globalDefinitions_gcc.hpp +--- openjdk-boot.orig/hotspot/src/share/vm/utilities/globalDefinitions_gcc.hpp 2015-11-13 05:57:20.000000000 +0100 ++++ openjdk-boot/hotspot/src/share/vm/utilities/globalDefinitions_gcc.hpp 2015-12-20 21:54:16.000000000 +0100 +@@ -245,7 +245,7 @@ + #elif defined(__APPLE__) + inline int g_isnan(double f) { return isnan(f); } + #elif defined(LINUX) || defined(_ALLBSD_SOURCE) +-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" +@@ -259,8 +259,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 -Nur openjdk-boot.orig/jdk/make/com/sun/java/pack/Makefile openjdk-boot/jdk/make/com/sun/java/pack/Makefile +--- openjdk-boot.orig/jdk/make/com/sun/java/pack/Makefile 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk-boot/jdk/make/com/sun/java/pack/Makefile 2015-12-20 21:54:16.000000000 +0100 +@@ -79,7 +79,7 @@ + OTHER_CXXFLAGS += $(ZLIB_CFLAGS) -DSYSTEM_ZLIB + endif + else +- OTHER_CXXFLAGS += -DNO_ZLIB -DUNPACK_JNI ++ CXXFLAGS_COMMON += -DNO_ZLIB -DUNPACK_JNI + OTHER_LDLIBS += $(JVMLIB) + endif + +diff -Nur openjdk-boot.orig/jdk/make/com/sun/nio/sctp/Makefile openjdk-boot/jdk/make/com/sun/nio/sctp/Makefile +--- openjdk-boot.orig/jdk/make/com/sun/nio/sctp/Makefile 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk-boot/jdk/make/com/sun/nio/sctp/Makefile 2015-12-21 11:17:04.000000000 +0100 +@@ -75,8 +75,8 @@ + ifneq ($(COMPILER_WARNINGS_FATAL),false) + COMPILER_WARNINGS_FATAL=true + endif +-#OTHER_LDLIBS += -L$(LIBDIR)/$(LIBARCH) -ljava -lnet -lpthread -ldl +-OTHER_LDLIBS += -L$(LIBDIR)/$(LIBARCH) -lnio -lnet -lpthread ++#OTHER_LDLIBS += -L$(LIBDIR)/$(LIBARCH) -ljava -ljavanet -lpthread -ldl ++OTHER_LDLIBS += -L$(LIBDIR)/$(LIBARCH) -lnio -ljavanet -lpthread + endif + ifeq ($(PLATFORM), solaris) + #LIBSCTP = -lsctp +diff -Nur openjdk-boot.orig/jdk/make/common/Defs.gmk openjdk-boot/jdk/make/common/Defs.gmk +--- openjdk-boot.orig/jdk/make/common/Defs.gmk 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk-boot/jdk/make/common/Defs.gmk 2015-12-20 21:54:16.000000000 +0100 +@@ -207,7 +207,7 @@ + ifeq ($(PLATFORM), macosx) + FREETYPE_HEADERS_PATH = /usr/X11R6/include + else +- FREETYPE_HEADERS_PATH = /usr/include ++ FREETYPE_HEADERS_PATH = /usr/include/disabled + endif + endif + endif +diff -Nur openjdk-boot.orig/jdk/make/common/Sanity.gmk openjdk-boot/jdk/make/common/Sanity.gmk +--- openjdk-boot.orig/jdk/make/common/Sanity.gmk 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk-boot/jdk/make/common/Sanity.gmk 2015-12-20 21:54:16.000000000 +0100 +@@ -91,8 +91,7 @@ + sane-ld_run_path \ + sane-alt_bootdir \ + sane-bootdir \ +- sane-local-bootdir \ +- sane-alsa-headers ++ sane-local-bootdir + + ifdef OPENJDK + sanity-all:: sane-freetype +diff -Nur openjdk-boot.orig/jdk/make/common/shared/Defs-utils.gmk openjdk-boot/jdk/make/common/shared/Defs-utils.gmk +--- openjdk-boot.orig/jdk/make/common/shared/Defs-utils.gmk 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk-boot/jdk/make/common/shared/Defs-utils.gmk 2015-12-20 21:54:16.000000000 +0100 +@@ -157,13 +157,13 @@ + TRUE = $(UTILS_COMMAND_PATH)true + UNAME = $(UTILS_COMMAND_PATH)uname + UNIQ = $(UTILS_USR_BIN_PATH)uniq +-UNZIP = $(UTILS_USR_BIN_PATH)unzip +-UNZIPSFX = $(UTILS_DEVTOOL_PATH)unzipsfx ++UNZIP = unzip ++UNZIPSFX = unzipsfx + XARGS = $(UTILS_USR_BIN_PATH)xargs + WC = $(UTILS_USR_BIN_PATH)wc + WHICH = $(UTILS_USR_BIN_PATH)which + YACC = $(UTILS_CCS_BIN_PATH)yacc +-ZIPEXE = $(UTILS_DEVTOOL_PATH)zip ++ZIPEXE = zip + + # Special cases + #RM is defined by GNU Make as 'rm -f' +diff -Nur openjdk-boot.orig/jdk/make/common/shared/Platform.gmk openjdk-boot/jdk/make/common/shared/Platform.gmk +--- openjdk-boot.orig/jdk/make/common/shared/Platform.gmk 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk-boot/jdk/make/common/shared/Platform.gmk 2015-12-20 21:54:16.000000000 +0100 +@@ -170,9 +170,6 @@ + else + mach := $(shell uname -m) + endif +- ifneq (,$(wildcard /usr/bin/dpkg-architecture)) +- mach := $(shell (dpkg-architecture -qDEB_HOST_ARCH_CPU 2>/dev/null || echo $(mach)) | sed 's/arm64/aarch64/;s/powerpc$$/ppc/;s/hppa/parisc/;s/ppc64el/ppc64le/') +- endif + archExpr = case "$(mach)" in \ + i[3-9]86) \ + echo i586 \ +diff -Nur openjdk-boot.orig/jdk/make/common/shared/Sanity.gmk openjdk-boot/jdk/make/common/shared/Sanity.gmk +--- openjdk-boot.orig/jdk/make/common/shared/Sanity.gmk 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk-boot/jdk/make/common/shared/Sanity.gmk 2015-12-20 21:54:16.000000000 +0100 +@@ -114,11 +114,6 @@ + elif [ -f /etc/lsb-release ] ; then \ + $(EGREP) DISTRIB_RELEASE /etc/lsb-release | $(SED) -e 's@.*DISTRIB_RELEASE=\(.*\)@\1@'; \ + fi) +- ALSA_INCLUDE=/usr/include/alsa/version.h +- ALSA_LIBRARY=/usr/lib/libasound.so +- _ALSA_VERSION := $(shell $(EGREP) SND_LIB_VERSION_STR $(ALSA_INCLUDE) | \ +- $(SED) -e 's@.*"\(.*\)".*@\1@' ) +- ALSA_VERSION := $(call GetVersion,$(_ALSA_VERSION)) + endif + + ifeq ($(PLATFORM), macosx) +@@ -225,7 +220,6 @@ + sane-compiler \ + sane-link \ + sane-cacerts \ +- sane-alsa-headers \ + sane-ant_version \ + sane-zip_version \ + sane-unzip_version \ +@@ -1381,34 +1375,6 @@ + endif + endif + +-###################################################### +-# Check that ALSA headers and libs are installed and +-# that the header has the right version. We only +-# need /usr/include/alsa/version.h and /usr/lib/libasound.so +-###################################################### +- +-ifdef REQUIRED_ALSA_VERSION +- ALSA_CHECK := $(call CheckVersions,$(ALSA_VERSION),$(REQUIRED_ALSA_VERSION)) +-endif +-sane-alsa-headers: +-ifdef REQUIRED_ALSA_VERSION +- @if [ "$(ALSA_CHECK)" != "missing" ] ; then \ +- if [ "$(ALSA_CHECK)" != "same" -a "$(ALSA_CHECK)" != "newer" ] ; then \ +- $(ECHO) "ERROR: The ALSA version must be $(REQUIRED_ALSA_VERSION) or higher. \n" \ +- " You have the following ALSA version installed: $${alsa_version} \n" \ +- " Please reinstall ALSA (drivers and lib). You can download \n" \ +- " the source distribution from http://www.alsa-project.org \n" \ +- " or go to http://www.freshrpms.net/docs/alsa/ for precompiled RPM packages. \n" \ +- "" >> $(ERROR_FILE) ; \ +- fi ; \ +- else \ +- $(ECHO) "ERROR: You seem to not have installed ALSA $(REQUIRED_ALSA_VERSION) or higher. \n" \ +- " Please install ALSA (drivers and lib). You can download the \n" \ +- " source distribution from http://www.alsa-project.org or go to \n" \ +- " http://www.freshrpms.net/docs/alsa/ for precompiled RPM packages. \n" \ +- "" >> $(ERROR_FILE) ; \ +- fi +-endif + + # If a sanity file doesn't exist, just make sure it's dir exists + $(SANITY_FILES): +diff -Nur openjdk-boot.orig/jdk/make/java/fdlibm/Makefile openjdk-boot/jdk/make/java/fdlibm/Makefile +--- openjdk-boot.orig/jdk/make/java/fdlibm/Makefile 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk-boot/jdk/make/java/fdlibm/Makefile 2015-12-20 21:54:16.000000000 +0100 +@@ -81,7 +81,7 @@ + # + # Things that must be linked in. + # +-OTHER_LDLIBS = ++OTHER_LDLIBS = -lm + + # + # Files to compile. +diff -Nur openjdk-boot.orig/jdk/make/java/net/Makefile openjdk-boot/jdk/make/java/net/Makefile +--- openjdk-boot.orig/jdk/make/java/net/Makefile 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk-boot/jdk/make/java/net/Makefile 2015-12-20 21:54:16.000000000 +0100 +@@ -25,7 +25,7 @@ + + BUILDDIR = ../.. + PACKAGE = java.net +-LIBRARY = net ++LIBRARY = javanet + PRODUCT = sun + include $(BUILDDIR)/common/Defs.gmk + +diff -Nur openjdk-boot.orig/jdk/make/java/nio/Makefile openjdk-boot/jdk/make/java/nio/Makefile +--- openjdk-boot.orig/jdk/make/java/nio/Makefile 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk-boot/jdk/make/java/nio/Makefile 2015-12-20 21:54:16.000000000 +0100 +@@ -409,7 +409,7 @@ + endif + + ifeq ($(PLATFORM), linux) +- OTHER_LDLIBS += -L$(LIBDIR)/$(LIBARCH) -ljava -lnet -lpthread $(LIBDL) ++ OTHER_LDLIBS += -L$(LIBDIR)/$(LIBARCH) -ljava -ljavanet -lpthread $(LIBDL) + ifeq ($(SYSTEM_GIO), true) + OTHER_LDLIBS += $(GIO_LIBS) + OTHER_INCLUDES += $(GIO_CFLAGS) -DUSE_SYSTEM_GIO +@@ -966,7 +966,7 @@ + + $(GENSOR_EXE) : $(TEMPDIR)/$(GENSOR_SRC) + $(prep-target) +- ($(CD) $(TEMPDIR); $(NIO_CC) $(CPPFLAGS) $(LDDFLAGS) \ ++ ($(CD) $(TEMPDIR); $(HOST_CC) $(CPPFLAGS_FOR_BUILD) $(LDDFLAGS) \ + -o genSocketOptionRegistry$(EXE_SUFFIX) $(GENSOR_SRC)) + + ifdef NIO_PLATFORM_CLASSES_ROOT_DIR +@@ -1002,7 +1002,7 @@ + + $(GENUC_EXE) : $(GENUC_SRC) + $(prep-target) +- $(NIO_CC) $(CPPFLAGS) -o $@ $(GENUC_SRC) ++ $(HOST_CC) $(CPPFLAGS_FOR_BUILD) -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 +diff -Nur openjdk-boot.orig/jdk/make/javax/sound/jsoundalsa/Makefile openjdk-boot/jdk/make/javax/sound/jsoundalsa/Makefile +--- openjdk-boot.orig/jdk/make/javax/sound/jsoundalsa/Makefile 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk-boot/jdk/make/javax/sound/jsoundalsa/Makefile 2015-12-20 21:54:16.000000000 +0100 +@@ -72,6 +72,7 @@ + -DUSE_PORTS=TRUE \ + -DUSE_PLATFORM_MIDI_OUT=TRUE \ + -DUSE_PLATFORM_MIDI_IN=TRUE \ ++ $(ALSA_CPPFLAGS) \ + -I$(SHARE_SRC)/native/com/sun/media/sound + + # +diff -Nur openjdk-boot.orig/jdk/make/sun/awt/mawt.gmk openjdk-boot/jdk/make/sun/awt/mawt.gmk +--- openjdk-boot.orig/jdk/make/sun/awt/mawt.gmk 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk-boot/jdk/make/sun/awt/mawt.gmk 2015-12-20 21:54:16.000000000 +0100 +@@ -151,22 +151,6 @@ + #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 @@ + 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 -lX11 -lXi + endif + + endif +@@ -231,11 +215,6 @@ + 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 \ +@@ -270,11 +249,6 @@ + endif # !HEADLESS + endif # PLATFORM + +-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), macosx) + CPPFLAGS += -I$(OPENWIN_HOME)/include/X11/extensions \ +diff -Nur openjdk-boot.orig/jdk/make/sun/xawt/Makefile openjdk-boot/jdk/make/sun/xawt/Makefile +--- openjdk-boot.orig/jdk/make/sun/xawt/Makefile 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk-boot/jdk/make/sun/xawt/Makefile 2015-12-20 21:54:16.000000000 +0100 +@@ -299,16 +299,10 @@ + SIZERS = $(SIZER).32 + SIZERS_C = $(SIZER_32_C) + SIZES = $(WRAPPER_GENERATOR_DIR)/sizes.32 +-ifdef CROSS_COMPILE_ARCH +-CFLAGS_32 = -m32 +-endif + else # !32 + SIZERS = $(SIZER).64 + SIZERS_C = $(SIZER_64_C) + SIZES = $(WRAPPER_GENERATOR_DIR)/sizes.64 +-ifdef CROSS_COMPILE_ARCH +-CFLAGS_64 = -m64 +-endif + endif # 32 + endif # !macosx + endif # solaris +@@ -344,11 +338,7 @@ + WRAPPER_GENERATOR_CLASS=$(WRAPPER_GENERATOR_TEMPDIR)/WrapperGenerator.class + XLIBTYPES=$(PLATFORM_SRC)/classes/sun/awt/X11/generator/xlibtypes.txt + +-ifndef CROSS_COMPILE_ARCH +-SIZERS_CC = $(CC) +-else +-SIZERS_CC = $(HOST_CC) +-endif ++SIZERS_CC = $(CC) -static + + $(SIZERS): $(SIZERS_C) + $(prep-target) +@@ -371,7 +361,7 @@ + $(CHMOD) +w $@;\ + else \ + $(ECHO) GENERATING $@; \ +- $(WRAPPER_GENERATOR_DIR)/sizer$(suffix $@) > $@; \ ++ $(QEMU) $(WRAPPER_GENERATOR_DIR)/sizer$(suffix $@) > $@; \ + fi + @if [ "$(DOCOMPARE)$(suffix $@)" = "true.64" ]; then \ + $(ECHO) COMPARING $@ and $(STORED_SIZES_TMPL_$(PLATFORM)_$(LIBARCH)); \ +diff -Nur openjdk-boot.orig/jdk/src/share/classes/java/net/AbstractPlainDatagramSocketImpl.java openjdk-boot/jdk/src/share/classes/java/net/AbstractPlainDatagramSocketImpl.java +--- openjdk-boot.orig/jdk/src/share/classes/java/net/AbstractPlainDatagramSocketImpl.java 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk-boot/jdk/src/share/classes/java/net/AbstractPlainDatagramSocketImpl.java 2015-12-20 21:54:16.000000000 +0100 +@@ -69,7 +69,7 @@ + */ + static { + java.security.AccessController.doPrivileged( +- new sun.security.action.LoadLibraryAction("net")); ++ new sun.security.action.LoadLibraryAction("javanet")); + init(); + } + +diff -Nur openjdk-boot.orig/jdk/src/share/classes/java/net/AbstractPlainSocketImpl.java openjdk-boot/jdk/src/share/classes/java/net/AbstractPlainSocketImpl.java +--- openjdk-boot.orig/jdk/src/share/classes/java/net/AbstractPlainSocketImpl.java 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk-boot/jdk/src/share/classes/java/net/AbstractPlainSocketImpl.java 2015-12-20 21:54:16.000000000 +0100 +@@ -78,7 +78,7 @@ + */ + static { + java.security.AccessController.doPrivileged( +- new sun.security.action.LoadLibraryAction("net")); ++ new sun.security.action.LoadLibraryAction("javanet")); + } + + /** +diff -Nur openjdk-boot.orig/jdk/src/share/classes/java/net/DatagramPacket.java openjdk-boot/jdk/src/share/classes/java/net/DatagramPacket.java +--- openjdk-boot.orig/jdk/src/share/classes/java/net/DatagramPacket.java 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk-boot/jdk/src/share/classes/java/net/DatagramPacket.java 2015-12-20 21:54:16.000000000 +0100 +@@ -47,7 +47,7 @@ + */ + static { + java.security.AccessController.doPrivileged( +- new sun.security.action.LoadLibraryAction("net")); ++ new sun.security.action.LoadLibraryAction("javanet")); + init(); + } + +diff -Nur openjdk-boot.orig/jdk/src/share/classes/java/net/InetAddress.java openjdk-boot/jdk/src/share/classes/java/net/InetAddress.java +--- openjdk-boot.orig/jdk/src/share/classes/java/net/InetAddress.java 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk-boot/jdk/src/share/classes/java/net/InetAddress.java 2015-12-20 21:54:16.000000000 +0100 +@@ -288,7 +288,7 @@ + static { + preferIPv6Address = java.security.AccessController.doPrivileged( + new GetBooleanAction("java.net.preferIPv6Addresses")).booleanValue(); +- AccessController.doPrivileged(new LoadLibraryAction("net")); ++ AccessController.doPrivileged(new LoadLibraryAction("javanet")); + init(); + } + +diff -Nur openjdk-boot.orig/jdk/src/share/classes/java/net/NetworkInterface.java openjdk-boot/jdk/src/share/classes/java/net/NetworkInterface.java +--- openjdk-boot.orig/jdk/src/share/classes/java/net/NetworkInterface.java 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk-boot/jdk/src/share/classes/java/net/NetworkInterface.java 2015-12-20 21:54:16.000000000 +0100 +@@ -53,7 +53,7 @@ + private static final int defaultIndex; /* index of defaultInterface */ + + static { +- AccessController.doPrivileged(new LoadLibraryAction("net")); ++ AccessController.doPrivileged(new LoadLibraryAction("javanet")); + init(); + defaultInterface = DefaultInterface.getDefault(); + if (defaultInterface != null) { +diff -Nur openjdk-boot.orig/jdk/src/share/classes/sun/net/sdp/SdpSupport.java openjdk-boot/jdk/src/share/classes/sun/net/sdp/SdpSupport.java +--- openjdk-boot.orig/jdk/src/share/classes/sun/net/sdp/SdpSupport.java 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk-boot/jdk/src/share/classes/sun/net/sdp/SdpSupport.java 2015-12-20 21:54:16.000000000 +0100 +@@ -76,6 +76,6 @@ + + static { + AccessController.doPrivileged( +- new sun.security.action.LoadLibraryAction("net")); ++ new sun.security.action.LoadLibraryAction("javanet")); + } + } +diff -Nur openjdk-boot.orig/jdk/src/share/classes/sun/net/spi/DefaultProxySelector.java openjdk-boot/jdk/src/share/classes/sun/net/spi/DefaultProxySelector.java +--- openjdk-boot.orig/jdk/src/share/classes/sun/net/spi/DefaultProxySelector.java 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk-boot/jdk/src/share/classes/sun/net/spi/DefaultProxySelector.java 2015-12-20 21:54:16.000000000 +0100 +@@ -95,7 +95,7 @@ + }}); + if (b != null && b.booleanValue()) { + java.security.AccessController.doPrivileged( +- new sun.security.action.LoadLibraryAction("net")); ++ new sun.security.action.LoadLibraryAction("javanet")); + hasSystemProxies = init(); + } + } +diff -Nur openjdk-boot.orig/jdk/src/share/classes/sun/nio/ch/Util.java openjdk-boot/jdk/src/share/classes/sun/nio/ch/Util.java +--- openjdk-boot.orig/jdk/src/share/classes/sun/nio/ch/Util.java 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk-boot/jdk/src/share/classes/sun/nio/ch/Util.java 2015-12-20 21:54:16.000000000 +0100 +@@ -483,7 +483,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 +diff -Nur openjdk-boot.orig/jdk/src/solaris/bin/mipsel/jvm.cfg openjdk-boot/jdk/src/solaris/bin/mipsel/jvm.cfg +--- openjdk-boot.orig/jdk/src/solaris/bin/mipsel/jvm.cfg 1970-01-01 01:00:00.000000000 +0100 ++++ openjdk-boot/jdk/src/solaris/bin/mipsel/jvm.cfg 2015-12-20 21:54:16.000000000 +0100 +@@ -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 -Nur openjdk-boot.orig/jdk/src/solaris/classes/sun/net/dns/ResolverConfigurationImpl.java openjdk-boot/jdk/src/solaris/classes/sun/net/dns/ResolverConfigurationImpl.java +--- openjdk-boot.orig/jdk/src/solaris/classes/sun/net/dns/ResolverConfigurationImpl.java 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk-boot/jdk/src/solaris/classes/sun/net/dns/ResolverConfigurationImpl.java 2015-12-20 21:54:16.000000000 +0100 +@@ -256,7 +256,7 @@ + + static { + java.security.AccessController.doPrivileged( +- new sun.security.action.LoadLibraryAction("net")); ++ new sun.security.action.LoadLibraryAction("javanet")); + } + + } +diff -Nur openjdk-boot.orig/jdk/src/solaris/native/sun/awt/awt_InputMethod.c openjdk-boot/jdk/src/solaris/native/sun/awt/awt_InputMethod.c +--- openjdk-boot.orig/jdk/src/solaris/native/sun/awt/awt_InputMethod.c 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk-boot/jdk/src/solaris/native/sun/awt/awt_InputMethod.c 2015-12-20 21:54:16.000000000 +0100 +@@ -246,7 +246,8 @@ + if (wcs == NULL) + return NULL; + +- n = len*MB_CUR_MAX + 1; ++ //evil hack for uclibc ++ n = len*1 + 1; + + mbs = (char *) malloc(n * sizeof(char)); + if (mbs == NULL) { +diff -Nur openjdk-boot.orig/jdk/src/solaris/native/sun/xawt/XToolkit.c openjdk-boot/jdk/src/solaris/native/sun/xawt/XToolkit.c +--- openjdk-boot.orig/jdk/src/solaris/native/sun/xawt/XToolkit.c 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk-boot/jdk/src/solaris/native/sun/xawt/XToolkit.c 2015-12-20 21:54:16.000000000 +0100 +@@ -27,9 +27,6 @@ + #include + #include + #include +-#ifdef __linux__ +-#include +-#endif + + #include + #include +@@ -785,25 +782,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; +diff -Nur openjdk-boot.orig/jdk/src/windows/classes/sun/net/dns/ResolverConfigurationImpl.java openjdk-boot/jdk/src/windows/classes/sun/net/dns/ResolverConfigurationImpl.java +--- openjdk-boot.orig/jdk/src/windows/classes/sun/net/dns/ResolverConfigurationImpl.java 2015-11-13 06:17:45.000000000 +0100 ++++ openjdk-boot/jdk/src/windows/classes/sun/net/dns/ResolverConfigurationImpl.java 2015-12-20 21:54:16.000000000 +0100 +@@ -159,7 +159,7 @@ + + static { + java.security.AccessController.doPrivileged( +- new sun.security.action.LoadLibraryAction("net")); ++ new sun.security.action.LoadLibraryAction("javanet")); + init0(); + + // start the address listener thread