changeset 3275:4034994bef71

PR3181: Support building without pre-compiled headers PR3205: Builds fails with pch disabled 2016-12-23 Andrew John Hughes <gnu.andrew@member.fsf.org> PR3205: Builds fails with pch disabled * Makefile.am: (ICEDTEA_PATCHES): Add new patch. * NEWS: Updated. * patches/openjdk/8169448-pr3205-pch_failure.patch: Backport patch from b41 to fix build failure when building without pre-compiled headers. 2016-10-26 Andrew John Hughes <gnu.andrew@member.fsf.org> PR3181: Support building without pre-compiled headers * INSTALL: Updated. * Makefile.am: (ICEDTEA_ENV): Set USE_PRECOMPILED_HEADER appropriately, according to whether DISABLE_PRECOMPILED_HEADERS is defined or not. * NEWS: Updated. * acinclude.m4: (IT_DISABLE_PRECOMPILED_HEADERS): New macro to provide the --disable-precompiled-headers option. * configure.ac: Invoke IT_DISABLE_PRECOMPILED_HEADERS.
author Andrew John Hughes <gnu.andrew@redhat.com>
date Fri, 23 Dec 2016 18:52:53 +0000
parents bc8e0b5d4bc2
children 31cd20a94f67
files ChangeLog INSTALL Makefile.am NEWS acinclude.m4 configure.ac patches/openjdk/8169448-pr3205-pch_failure.patch
diffstat 7 files changed, 81 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Thu Aug 25 03:58:16 2016 +0100
+++ b/ChangeLog	Fri Dec 23 18:52:53 2016 +0000
@@ -1,3 +1,27 @@
+2016-12-23  Andrew John Hughes  <gnu.andrew@member.fsf.org>
+
+	PR3205: Builds fails with pch disabled
+	* Makefile.am:
+	(ICEDTEA_PATCHES): Add new patch.
+	* NEWS: Updated.
+	* patches/openjdk/8169448-pr3205-pch_failure.patch:
+	Backport patch from b41 to fix build failure when
+	building without pre-compiled headers.
+
+2016-10-26  Andrew John Hughes  <gnu.andrew@member.fsf.org>
+
+	PR3181: Support building without pre-compiled headers
+	* INSTALL: Updated.
+	* Makefile.am:
+	(ICEDTEA_ENV): Set USE_PRECOMPILED_HEADER
+	appropriately, according to whether
+	DISABLE_PRECOMPILED_HEADERS is defined or not.
+	* NEWS: Updated.
+	* acinclude.m4:
+	(IT_DISABLE_PRECOMPILED_HEADERS): New macro to
+	provide the --disable-precompiled-headers option.
+	* configure.ac: Invoke IT_DISABLE_PRECOMPILED_HEADERS.
+
 2016-08-24  Andrew John Hughes  <gnu.andrew@redhat.com>
 
 	* NEWS: Add 1.13.12 release notes.
--- a/INSTALL	Thu Aug 25 03:58:16 2016 +0100
+++ b/INSTALL	Fri Dec 23 18:52:53 2016 +0000
@@ -175,6 +175,7 @@
 * --enable-system-kerberos: Link against the system Kerberos library and
   query it at runtime to obtain the cache location, rather than using a
   hardcoded value.
+* --disable-precompiled-headers: Don't use pre-compiled headers.
 
 Testing
 =======
--- a/Makefile.am	Thu Aug 25 03:58:16 2016 +0100
+++ b/Makefile.am	Fri Dec 23 18:52:53 2016 +0000
@@ -641,7 +641,8 @@
 	patches/pr3137-alt_button_order.patch \
 	patches/openjdk/6260348-pr3068.patch \
 	patches/openjdk/6961123-pr2975.patch \
-	patches/pr2800-missing_resources.patch
+	patches/pr2800-missing_resources.patch \
+	patches/openjdk/8169448-pr3205-pch_failure.patch
 
 if WITH_RHINO
 ICEDTEA_PATCHES += \
@@ -949,6 +950,14 @@
 	DEBUG_CLASSFILES="true"
 endif
 
+if DISABLE_PRECOMPILED_HEADERS
+ICEDTEA_ENV += \
+	USE_PRECOMPILED_HEADER=0
+else
+ICEDTEA_ENV += \
+	USE_PRECOMPILED_HEADER=1
+endif
+
 # OpenJDK ecj build environment.
 ICEDTEA_ENV_ECJ = $(ICEDTEA_ENV) \
 	ALT_OUTPUTDIR="$(ECJ_BUILD_OUTPUT_DIR)" \
--- a/NEWS	Thu Aug 25 03:58:16 2016 +0100
+++ b/NEWS	Fri Dec 23 18:52:53 2016 +0000
@@ -18,6 +18,7 @@
   - PR1372: Provide option to build without debugging
   - PR2083: Add support for building Zero on AArch64
   - PR3112: Provide option to disable SystemTap tests
+  - PR3181: Support building without pre-compiled headers
 * Backports
   - S6611637: NullPointerException in sun.font.GlyphLayout$EngineRecord.init
   - S6727719: Performance of TextLayout.getBounds()
@@ -33,6 +34,7 @@
   - PR2957: Build bootstrap code (rt-class-files.stamp) using bootstrap flags (source/target 1.5)
   - PR3139: Update documentation
   - PR3143: Fix typo in --with-openjdk-src-dir introduced by PR3139
+  - PR3205: Builds fails with pch disabled
 
 New in release 1.13.12 (2016-08-24):
 
--- a/acinclude.m4	Thu Aug 25 03:58:16 2016 +0100
+++ b/acinclude.m4	Fri Dec 23 18:52:53 2016 +0000
@@ -2479,6 +2479,28 @@
   AM_CONDITIONAL([DISABLE_SYSTEMTAP_TESTS], test x"${disable_systemtap_tests}" = "xyes")
 ])
 
+AC_DEFUN_ONCE([IT_DISABLE_PRECOMPILED_HEADERS],
+[
+  AC_MSG_CHECKING([whether to disable the use of pre-compiled headers])
+  AC_ARG_ENABLE([precompiled-headers],
+                [AS_HELP_STRING(--disable-precompiled-headers,do not use pre-compiled headers [[default=no]])],
+  [
+    case "${enableval}" in
+      no)
+        disable_precompiled_headers=yes
+        ;;
+      *)
+        disable_precompiled_headers=no
+        ;;
+    esac
+  ],
+  [
+    disable_precompiled_headers=no
+  ])
+  AC_MSG_RESULT([$disable_precompiled_headers])
+  AM_CONDITIONAL([DISABLE_PRECOMPILED_HEADERS], test x"${disable_precompiled_headers}" = "xyes")
+])
+
 AC_DEFUN_ONCE([IT_CHECK_FOR_MIME_TYPES],
 [
   MIME_TYPES_FILE="/etc/mime.types"
--- a/configure.ac	Thu Aug 25 03:58:16 2016 +0100
+++ b/configure.ac	Fri Dec 23 18:52:53 2016 +0000
@@ -66,6 +66,7 @@
 IT_DISABLE_SYSTEMTAP_TESTS
 IT_ENABLE_NATIVE_DEBUGINFO
 IT_ENABLE_JAVA_DEBUGINFO
+IT_DISABLE_PRECOMPILED_HEADERS
 
 IT_WITH_FONTS_DIR
 AC_CONFIG_FILES([linux.fontconfig.Gentoo.properties])
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/openjdk/8169448-pr3205-pch_failure.patch	Fri Dec 23 18:52:53 2016 +0000
@@ -0,0 +1,21 @@
+# HG changeset patch
+# User andrew
+# Date 1478656400 0
+#      Wed Nov 09 01:53:20 2016 +0000
+# Node ID bbe3dc5410163bc7fb2dfbe5eb6969bbf71edc6d
+# Parent  1943edc6f06aa1f026b4e6fa9ccc8b2d60243ca7
+8169448: OpenJDK 6 fails to build without pre-compiled headers
+Summary: psPromotionManager.hpp is missing an import for psOldGen
+Reviewed-by: omajid
+
+diff --git a/src/share/vm/gc_implementation/parallelScavenge/psPromotionManager.hpp b/src/share/vm/gc_implementation/parallelScavenge/psPromotionManager.hpp
+--- openjdk/hotspot/src/share/vm/gc_implementation/parallelScavenge/psPromotionManager.hpp
++++ openjdk/hotspot/src/share/vm/gc_implementation/parallelScavenge/psPromotionManager.hpp
+@@ -25,6 +25,7 @@
+ #ifndef SHARE_VM_GC_IMPLEMENTATION_PARALLELSCAVENGE_PSPROMOTIONMANAGER_HPP
+ #define SHARE_VM_GC_IMPLEMENTATION_PARALLELSCAVENGE_PSPROMOTIONMANAGER_HPP
+ 
++#include "gc_implementation/parallelScavenge/psOldGen.hpp"
+ #include "gc_implementation/parallelScavenge/psPromotionLAB.hpp"
+ #include "memory/allocation.hpp"
+ #include "utilities/taskqueue.hpp"