Mercurial > hg > release > icedtea7-2.5
changeset 2729:f327af93706b
PR1843: Fail early if there is no native HotSpot JIT & all other options are disabled
2014-06-12 Andrew John Hughes <gnu.andrew@member.fsf.org>
PR1843: Fail early if there is no native HotSpot JIT
& all other options are disabled
* acinclude.m4:
(IT_ENABLE_ZERO_BUILD): Depend on
IT_HAS_NATIVE_HOTSPOT_PORT. Split out arch-dependent
code into that macro. Make ENABLE_CACAO test more
readable.
(IT_ENABLE_CACAO): Handle enableval same as other macros
so possible values are only ever yes or no.
(IT_ENABLE_JAMVM): Likewise.
(IT_HAS_NATIVE_HOTSPOT_PORT): Architecture detection
split out from IT_ENABLE_ZERO_BUILD. Now sets
has_native_hotspot_port for later reference.
* configure.ac:
Error out if there is no native HotSpot port and
Zero (which implies Shark & ARM32 JIT), CACAO and
JamVM are all disabled.
author | Andrew John Hughes <gnu_andrew@member.fsf.org> |
---|---|
date | Fri, 13 Jun 2014 02:04:10 +0100 |
parents | 2311a87279e8 |
children | 86ec9bccfca9 |
files | ChangeLog NEWS acinclude.m4 configure.ac |
diffstat | 4 files changed, 72 insertions(+), 21 deletions(-) [+] |
line wrap: on
line diff
--- a/ChangeLog Fri Jun 13 01:56:52 2014 +0100 +++ b/ChangeLog Fri Jun 13 02:04:10 2014 +0100 @@ -1,3 +1,23 @@ +2014-06-12 Andrew John Hughes <gnu.andrew@member.fsf.org> + + PR1843: Fail early if there is no native HotSpot JIT + & all other options are disabled + * acinclude.m4: + (IT_ENABLE_ZERO_BUILD): Depend on + IT_HAS_NATIVE_HOTSPOT_PORT. Split out arch-dependent + code into that macro. Make ENABLE_CACAO test more + readable. + (IT_ENABLE_CACAO): Handle enableval same as other macros + so possible values are only ever yes or no. + (IT_ENABLE_JAMVM): Likewise. + (IT_HAS_NATIVE_HOTSPOT_PORT): Architecture detection + split out from IT_ENABLE_ZERO_BUILD. Now sets + has_native_hotspot_port for later reference. + * configure.ac: + Error out if there is no native HotSpot port and + Zero (which implies Shark & ARM32 JIT), CACAO and + JamVM are all disabled. + 2014-06-13 Andrew John Hughes <gnu.andrew@member.fsf.org> * javaws.desktop,
--- a/NEWS Fri Jun 13 01:56:52 2014 +0100 +++ b/NEWS Fri Jun 13 02:04:10 2014 +0100 @@ -289,6 +289,7 @@ - PR1835: Missing file in backport of ppc64le JIT support - PR1839, G478960: Provide Infinality Support via fontconfig - PR729: GTKLookAndFeel should be the system look&feel on all GNU/Linux desktops + - PR1843: Fail early if there is no native HotSpot JIT & all other options are disabled * PPC & AIX port - Add AIX-specific build instructions to README-ppc.html - Added AIX as testing platform for more jtreg tests written in shell-script
--- a/acinclude.m4 Fri Jun 13 01:56:52 2014 +0100 +++ b/acinclude.m4 Fri Jun 13 02:04:10 2014 +0100 @@ -686,6 +686,7 @@ AC_REQUIRE([IT_ENABLE_CACAO]) AC_REQUIRE([IT_ENABLE_JAMVM]) AC_REQUIRE([IT_ENABLE_SHARK]) + AC_REQUIRE([IT_HAS_NATIVE_HOTSPOT_PORT]) AC_MSG_CHECKING([whether to use the zero-assembler port]) use_zero=no AC_ARG_ENABLE([zero], @@ -704,25 +705,14 @@ [ if test "x${use_shark}" = "xyes"; then use_zero=yes; - else - case "${host_cpu}" in - aarch64) ;; - arm64) ;; - i?86) ;; - sparc) ;; - x86_64) ;; - powerpc64) ;; - powerpc64le) ;; - *) - if test "x${ENABLE_CACAO}" != xno || \ - test "x${ENABLE_JAMVM}" = xyes; then - use_zero=no - else - use_zero=yes - fi - ;; - esac - fi + else if test "x$has_native_hotspot_port" = "xno"; then + if test "x${ENABLE_CACAO}" = xyes || \ + test "x${ENABLE_JAMVM}" = xyes; then + use_zero=no + else + use_zero=yes + fi + fi; fi ]) AC_MSG_RESULT($use_zero) AM_CONDITIONAL(ZERO_BUILD, test "x${use_zero}" = xyes) @@ -785,7 +775,14 @@ AC_ARG_ENABLE([cacao], [AS_HELP_STRING(--enable-cacao,use CACAO as VM [[default=no]])], [ - ENABLE_CACAO="${enableval}" + case "${enableval}" in + yes) + ENABLE_CACAO=yes + ;; + *) + ENABLE_CACAO=no + ;; + esac ], [ ENABLE_CACAO=no @@ -2240,7 +2237,14 @@ AC_ARG_ENABLE([jamvm], [AS_HELP_STRING(--enable-jamvm,use JamVM as VM [[default=no]])], [ - ENABLE_JAMVM="${enableval}" + case "${enableval}" in + yes) + ENABLE_JAMVM=yes + ;; + *) + ENABLE_JAMVM=no + ;; + esac ], [ ENABLE_JAMVM=no @@ -2787,6 +2791,23 @@ AM_CONDITIONAL([ENABLE_JAVA_DEBUGINFO], test x"${enable_java_debuginfo}" = "xyes") ]) +AC_DEFUN_ONCE([IT_HAS_NATIVE_HOTSPOT_PORT], +[ + AC_MSG_CHECKING([if a native HotSpot port is available for this architecture]) + has_native_hotspot_port=yes; + case "${host_cpu}" in + aarch64) ;; + arm64) ;; + i?86) ;; + sparc) ;; + x86_64) ;; + powerpc64) ;; + powerpc64le) ;; + *) has_native_hotspot_port=no; + esac + AC_MSG_RESULT([$has_native_hotspot_port]) +]) + AC_DEFUN_ONCE([IT_ENABLE_INFINALITY], [ AC_REQUIRE([IT_CHECK_FOR_FONTCONFIG])
--- a/configure.ac Fri Jun 13 01:56:52 2014 +0100 +++ b/configure.ac Fri Jun 13 02:04:10 2014 +0100 @@ -434,4 +434,13 @@ AC_SUBST(CONFIGURE_ARGS) CONFIGURE_ARGS="$ac_configure_args" +# Sanity check; make sure we have a JVM +if test "x$has_native_hotspot_port" = "xno" ; then + if test "x${use_zero}" = "xno" ; then + if test "x${ENABLE_CACAO}" = "xno" -a "x${ENABLE_JAMVM}" = "xno"; then + AC_MSG_ERROR([No native HotSpot port available for ${host_cpu} and all alternatives disabled.]) + fi + fi +fi + AC_OUTPUT