diff --git a/dont-use-gstabs.patch b/dont-use-gstabs.patch deleted file mode 100644 index 922c76e..0000000 --- a/dont-use-gstabs.patch +++ /dev/null @@ -1,27 +0,0 @@ -diff --git jdk8/hotspot/make/linux/makefiles/gcc.make jdk8/hotspot/make/linux/makefiles/gcc.make ---- jdk8/hotspot/make/linux/makefiles/gcc.make -+++ jdk8/hotspot/make/linux/makefiles/gcc.make -@@ -234,6 +234,7 @@ - # (warning: that could easily inflate libjvm.so to 150M!) - # Note: The Itanium gcc compiler crashes when using -gstabs. - DEBUG_CFLAGS/ia64 = -g -+ DEBUG_CFLAGS/i486 = -g - DEBUG_CFLAGS/amd64 = -g - DEBUG_CFLAGS/arm = -g - DEBUG_CFLAGS/ppc = -g -@@ -244,6 +245,7 @@ - - ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) - FASTDEBUG_CFLAGS/ia64 = -g -+ FASTDEBUG_CFLAGS/i486 = -g - FASTDEBUG_CFLAGS/amd64 = -g - FASTDEBUG_CFLAGS/arm = -g - FASTDEBUG_CFLAGS/ppc = -g -@@ -253,6 +255,7 @@ - endif - - OPT_CFLAGS/ia64 = -g -+ OPT_CFLAGS/i486 = -g - OPT_CFLAGS/amd64 = -g - OPT_CFLAGS/arm = -g - OPT_CFLAGS/ppc = -g diff --git a/fix-zero-build.patch b/fix-zero-build.patch new file mode 100644 index 0000000..a2defd5 --- /dev/null +++ b/fix-zero-build.patch @@ -0,0 +1,158 @@ +--- jdk8/jdk/makefiles/Profiles.gmk 2013-03-28 16:57:56.137703554 -0400 ++++ jdk8/jdk/makefiles/Profiles.gmk 2013-03-28 16:57:55.674699054 -0400 +@@ -94,8 +94,11 @@ + $(IMAGES_OUTPUTDIR)/lib/tools.jar \ + $(IMAGES_OUTPUTDIR)/lib/ct.sym \ + $(IMAGES_OUTPUTDIR)/src.zip \ +- $(IMAGES_OUTPUTDIR)/lib/ext/cldrdata.jar \ +- $(IMAGES_OUTPUTDIR)/lib/sa-jdi.jar ++ $(IMAGES_OUTPUTDIR)/lib/ext/cldrdata.jar ++ ++ifeq ($(INCLUDE_SA),true) ++ ALL_JARS += $(IMAGES_OUTPUTDIR)/lib/sa-jdi.jar ++endif + + ifeq ($(OPENJDK_TARGET_OS),solaris) + ifndef OPENJDK +--- jdk8/common/autoconf/hotspot-spec.gmk.in 2013-03-28 17:00:44.110332528 -0400 ++++ jdk8/common/autoconf/hotspot-spec.gmk.in 2013-03-28 17:00:43.915330640 -0400 +@@ -75,6 +75,19 @@ + # If yes then this expands to _LP64:=1 + @LP64@ + ++# Legacy settings for zero ++ZERO_ENDIANNESS=$(OPENJDK_TARGET_CPU_ENDIAN) ++ZERO_LIBARCH=$(OPENJDK_TARGET_CPU_LEGACY_LIB) ++ZERO_ARCHDEF=@ZERO_ARCHDEF@ ++ZERO_ARCHFLAG=@ZERO_ARCHFLAG@ ++LIBFFI_CFLAGS=@LIBFFI_CFLAGS@ ++LIBFFI_LIBS=@LIBFFI_LIBS@ ++ ++# Legacy settings for zeroshark ++LLVM_CFLAGS=@LLVM_CFLAGS@ ++LLVM_LIBS=@LLVM_LIBS@ ++LLVM_LDFLAGS=@LLVM_LDFLAGS@ ++ + ALT_OUTPUTDIR=$(HOTSPOT_OUTPUTDIR) + ALT_EXPORT_PATH=$(HOTSPOT_DIST) + +--- jdk8/common/autoconf/libraries.m4 2013-03-28 17:00:45.905349901 -0400 ++++ jdk8/common/autoconf/libraries.m4 2013-03-28 17:00:45.632347258 -0400 +@@ -662,7 +662,7 @@ + AC_MSG_CHECKING([how to link with libstdc++]) + # If dynamic was requested, it's available since it would fail above otherwise. + # If dynamic wasn't requested, go with static unless it isn't available. +- if test "x$with_stdc__lib" = xdynamic || test "x$has_static_libstdcxx" = xno; then ++ if test "x$with_stdc__lib" = xdynamic || test "x$has_static_libstdcxx" = xno || test "x$JVM_VARIANT_ZEROSHARK" = xtrue; then + LIBCXX="$LIBCXX -lstdc++" + LDCXX="$CXX" + STATIC_CXX_SETTING="STATIC_CXX=false" +@@ -676,6 +676,59 @@ + fi + AC_SUBST(STATIC_CXX_SETTING) + ++if test "x$JVM_VARIANT_ZERO" = xtrue || test "x$JVM_VARIANT_ZEROSHARK" = xtrue; then ++ # Figure out LIBFFI_CFLAGS and LIBFFI_LIBS ++ PKG_CHECK_MODULES([LIBFFI], [libffi]) ++ ++fi ++ ++if test "x$JVM_VARIANT_ZEROSHARK" = xtrue; then ++ AC_CHECK_PROG([LLVM_CONFIG], [llvm-config], [llvm-config]) ++ ++ if test "x$LLVM_CONFIG" != xllvm-config; then ++ AC_MSG_ERROR([llvm-config not found in $PATH.]) ++ fi ++ ++ llvm_components="jit mcjit engine nativecodegen native" ++ unset LLVM_CFLAGS ++ for flag in $("$LLVM_CONFIG" --cxxflags); do ++ if echo "${flag}" | grep -q '^-@<:@ID@:>@'; then ++ if test "${flag}" != "-D_DEBUG" ; then ++ if test "${LLVM_CFLAGS}" != "" ; then ++ LLVM_CFLAGS="${LLVM_CFLAGS} " ++ fi ++ LLVM_CFLAGS="${LLVM_CFLAGS}${flag}" ++ fi ++ fi ++ done ++ llvm_version=$("${LLVM_CONFIG}" --version | sed 's/\.//; s/svn.*//') ++ LLVM_CFLAGS="${LLVM_CFLAGS} -DSHARK_LLVM_VERSION=${llvm_version}" ++ ++ unset LLVM_LDFLAGS ++ for flag in $("${LLVM_CONFIG}" --ldflags); do ++ if echo "${flag}" | grep -q '^-L'; then ++ if test "${LLVM_LDFLAGS}" != ""; then ++ LLVM_LDFLAGS="${LLVM_LDFLAGS} " ++ fi ++ LLVM_LDFLAGS="${LLVM_LDFLAGS}${flag}" ++ fi ++ done ++ ++ unset LLVM_LIBS ++ for flag in $("${LLVM_CONFIG}" --libs ${llvm_components}); do ++ if echo "${flag}" | grep -q '^-l'; then ++ if test "${LLVM_LIBS}" != ""; then ++ LLVM_LIBS="${LLVM_LIBS} " ++ fi ++ LLVM_LIBS="${LLVM_LIBS}${flag}" ++ fi ++ done ++ ++ AC_SUBST(LLVM_CFLAGS) ++ AC_SUBST(LLVM_LDFLAGS) ++ AC_SUBST(LLVM_LIBS) ++fi ++ + # libCrun is the c++ runtime-library with SunStudio (roughly the equivalent of gcc's libstdc++.so) + if test "x$OPENJDK_TARGET_OS" = xsolaris && test "x$LIBCXX" = x; then + LIBCXX="/usr/lib${OPENJDK_TARGET_CPU_ISADIR}/libCrun.so.1" +--- jdk8/common/autoconf/platform.m4 2013-03-28 17:00:47.585366160 -0400 ++++ jdk8/common/autoconf/platform.m4 2013-03-28 17:00:47.389364263 -0400 +@@ -332,6 +332,29 @@ + DEFINE_CROSS_COMPILE_ARCH="" + fi + AC_SUBST(DEFINE_CROSS_COMPILE_ARCH) ++ ++ # Some Zero and Shark settings. ++ # ZERO_ARCHFLAG tells the compiler which mode to build for ++ case "${OPENJDK_TARGET_CPU}" in ++ s390) ++ ZERO_ARCHFLAG="-m31" ++ ;; ++ *) ++ ZERO_ARCHFLAG="-m${OPENJDK_TARGET_CPU_BITS}" ++ esac ++ AC_SUBST(ZERO_ARCHFLAG) ++ ++ # ZERO_ARCHDEF is used to enable architecture-specific code ++ case "${OPENJDK_TARGET_CPU}" in ++ ppc*) ZERO_ARCHDEF=PPC ;; ++ s390*) ZERO_ARCHDEF=S390 ;; ++ sparc*) ZERO_ARCHDEF=SPARC ;; ++ x86_64*) ZERO_ARCHDEF=AMD64 ;; ++ x86) ZERO_ARCHDEF=IA32 ;; ++ *) ZERO_ARCHDEF=$(echo "${OPENJDK_TARGET_CPU_LEGACY_LIB}" | tr a-z A-Z) ++ esac ++ AC_SUBST(ZERO_ARCHDEF) ++ + ]) + + AC_DEFUN([PLATFORM_SET_RELEASE_FILE_OS_VALUES], +--- jdk8/common/autoconf/spec.gmk.in 2013-03-28 17:00:49.065380483 -0400 ++++ jdk8/common/autoconf/spec.gmk.in 2013-03-28 17:00:48.870378596 -0400 +@@ -634,6 +634,14 @@ + # Name of Service Agent library + SALIB_NAME=@SALIB_NAME@ + ++INCLUDE_SA:=true ++ifeq ($(JVM_VARIANT_ZERO),true) ++ INCLUDE_SA:=false ++endif ++ifeq ($(JVM_VARIANT_ZEROSHARK),true) ++ INCLUDE_SA:=false ++endif ++ + OS_VERSION_MAJOR:=@OS_VERSION_MAJOR@ + OS_VERSION_MINOR:=@OS_VERSION_MINOR@ + OS_VERSION_MICRO:=@OS_VERSION_MICRO@ diff --git a/java-1.8.0-openjdk.spec b/java-1.8.0-openjdk.spec index 21809e4..3279ecb 100644 --- a/java-1.8.0-openjdk.spec +++ b/java-1.8.0-openjdk.spec @@ -136,7 +136,7 @@ Name: java-%{javaver}-%{origin} Version: %{javaver}.%{buildver} -Release: 0.1.%{jdk8_version}%{?dist} +Release: 0.3.%{jdk8_version}%{?dist} # java-1.5.0-ibm from jpackage.org set Epoch to 1 for unknown reasons, # and this change was brought into RHEL-4. java-1.5.0-ibm packages # also included the epoch in their virtual provides. This created a @@ -205,13 +205,13 @@ Patch105: %{name}-ppc-zero-hotspot.patch Patch106: %{name}-ppc-zero-corba.patch Patch107: %{name}-freetype-check-fix.patch -Patch108: dont-use-gstabs.patch Patch109: disable-werror.patch Patch200: system-giflib.patch Patch201: system-libjpeg.patch Patch202: system-libpng.patch Patch203: system-lcms.patch +Patch204: fix-zero-build.patch BuildRequires: autoconf BuildRequires: automake @@ -358,7 +358,6 @@ The OpenJDK API documentation. cp %{SOURCE2} . # OpenJDK patches -%patch108 %patch109 # Rhino patch @@ -372,6 +371,7 @@ sh %{SOURCE12} %patch201 %patch202 %patch203 +%patch204 %patch4 @@ -475,6 +475,9 @@ mkdir -p %{buildoutputdir} pushd %{buildoutputdir} bash ../../configure \ +%ifnarch %{jit_arches} + --with-jvm-variants=zero \ +%endif --with-build-number=%{buildver} \ --with-boot-jdk=/usr/lib/jvm/java-openjdk \ --with-debug-level=%{debugbuild} \ @@ -486,7 +489,7 @@ bash ../../configure \ --with-stdc++lib=dynamic \ --with-num-cores="$NUM_PROC" -make DISABLE_INTREE_EC=true LOG=trace all +make DEBUG_BINARIES=true DISABLE_INTREE_EC=true LOG=trace all popd >& /dev/null @@ -921,9 +924,7 @@ exit 0 %{_mandir}/man1/javah-%{name}.1* %{_mandir}/man1/javap-%{name}.1* %{_mandir}/man1/jconsole-%{name}.1* -%ifarch %{jit_arches} # Only in u4+ %{_mandir}/man1/jcmd-%{name}.1* -%endif %{_mandir}/man1/jdb-%{name}.1* %{_mandir}/man1/jhat-%{name}.1* %{_mandir}/man1/jinfo-%{name}.1* @@ -961,6 +962,10 @@ exit 0 %doc %{buildoutputdir}/images/j2sdk-image/jre/LICENSE %changelog +* Thu Mar 28 2013 Omair Majid 1:1.8.0.0-0.3.b79 +- Add build fix for zero +- Drop gstabs fixes; enable full debug info instead + * Wed Mar 13 2013 Omair Majid 1:1.8.0.0-0.2.b79 - Fix alternatives priority