changeset 2581:39645ba422d1

PR2434: SystemTap support is no longer optional 2015-06-16 Andrew John Hughes <gnu_andrew@member.fsf.org> PR2434: SystemTap support is no longer optional * Makefile.am: (install-exec-local): Make tapset installation conditional on ENABLE_SYSTEMTAP to match creation in icedtea target. * NEWS: Updated. 2012-11-07 Andrew John Hughes <gnu_andrew@member.fsf.org> * INSTALL: Update SystemTap documentation. * README: Update SystemTap documentation. * configure.ac: Remove --enable-systemtap option. Only issue a warning and not set ENABLE_SYSTEMTAP if sdt.h is not found or is outdated.
author Andrew John Hughes <gnu_andrew@member.fsf.org>
date Wed, 17 Jun 2015 17:18:02 +0100
parents 8e7d421dd92e
children 5273230094d3
files ChangeLog INSTALL Makefile.am NEWS README configure.ac
diffstat 6 files changed, 49 insertions(+), 39 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Tue Jun 16 22:18:59 2015 +0100
+++ b/ChangeLog	Wed Jun 17 17:18:02 2015 +0100
@@ -1,3 +1,22 @@
+2015-06-16  Andrew John Hughes  <gnu_andrew@member.fsf.org>
+
+	PR2434: SystemTap support is no longer optional
+	* Makefile.am:
+	(install-exec-local): Make tapset installation
+	conditional on ENABLE_SYSTEMTAP to match
+	creation in icedtea target.
+	* NEWS: Updated.
+
+2012-11-07  Andrew John Hughes  <gnu_andrew@member.fsf.org>
+
+	* INSTALL: Update SystemTap documentation.
+	* README: Update SystemTap documentation.
+	* configure.ac:
+	Remove --enable-systemtap option.  Only
+	issue a warning and not set
+	ENABLE_SYSTEMTAP if sdt.h is not found
+	or is outdated.
+
 2015-06-03  Andrew John Hughes  <gnu.andrew@member.fsf.org>
 
 	PR2433: ppc64le does not support -Xshare:dump
--- a/INSTALL	Tue Jun 16 22:18:59 2015 +0100
+++ b/INSTALL	Wed Jun 17 17:18:02 2015 +0100
@@ -29,7 +29,7 @@
 libffi (for --enable-zero or on archs other than x86/x86_64/sparc)
 pulseaudio-libs-devel >= 0.9.11 (for --enable-pulse-java)
 LLVM 2.5 or later (for --enable-shark)
-systemtap-sdl-devel >= 0.9.5 (for --enable-systemtap, Java method tracing requires systemtap >= 0.9.9)
+systemtap-sdl-devel >= 0.9.5 (Java method tracing requires systemtap >= 0.9.9)
 
 See ./configure --help if you need to override the defaults.
 
@@ -195,16 +195,14 @@
 =========
 
 IcedTea7 includes work to allow the existing DTrace probes included in
-OpenJDK to be used with SystemTap.  This is enabled using the
---enable-systemtap option, and requires version 0.9.5 or later (0.9.9
+OpenJDK to be used with SystemTap.  This requires version 0.9.5 or later (0.9.9
 or later if you want Java method tracing).  The tapset needs to know
-the final install location of the JDK, so the --with-abs-install-dir
+the final install location of the JDK, so the --with-abs-install-dir option
 should also be used to specify this.  If not set, it defaults to the
 in-tree location of openjdk.build/j2sdk-image and requires
 manual changes to tapset/hotspot.stp to work from elsewhere. For
 example, if you plan to install the resulting build in
 /usr/lib/jvm/java-1.6.0-openjdk, then you should specify
---enable-systemtap
 --with-abs-install-dir=/usr/lib/jvm/java-1.6.0-openjdk.
 
 NSS Security Provider
--- a/Makefile.am	Tue Jun 16 22:18:59 2015 +0100
+++ b/Makefile.am	Wed Jun 17 17:18:02 2015 +0100
@@ -2381,9 +2381,11 @@
 	for files in $(BUILD_SDK_DIR)/jre/lib/ext/*.jar; do \
 	  $(INSTALL_DATA) $${files} $(DESTDIR)${prefix}/jre/lib/ext; \
 	done
+if ENABLE_SYSTEMTAP
 	for files in $(BUILD_SDK_DIR)/tapset/*.stp; do \
 	  $(INSTALL_DATA) $${files} $(DESTDIR)${prefix}/tapset; \
 	done
+endif
 	$(abs_top_builddir)/pax-mark-vm $(DESTDIR)${prefix}
 
 install-data-local:
--- a/NEWS	Tue Jun 16 22:18:59 2015 +0100
+++ b/NEWS	Wed Jun 17 17:18:02 2015 +0100
@@ -106,6 +106,7 @@
   - PR2429: OpenJDK build does not copy a symlinked cacerts file
   - PR2432: ppc64 JIT doesn't support class data sharing
   - PR2433: ppc64le does not support -Xshare:dump
+  - PR2434: SystemTap support is no longer optional
   - Don't substitute 'j' for '-j' inside -I directives
   - Extend 8041658 to all files in the HotSpot build.
   - Remove jcheck
--- a/README	Tue Jun 16 22:18:59 2015 +0100
+++ b/README	Wed Jun 17 17:18:02 2015 +0100
@@ -85,15 +85,14 @@
 SystemTap Support
 =================
 
-The --enable-systemtap configure option will try to find the systemtap
-runtime development files (sdt.h and the dtrace python script wrapper),
-enable compilation of static markers in the hotspot code and install a
-systemtap hotspot.stp tapset for easy tracing with systemtap's stap
-utility. The probes are documented in tapset/hotspot.stp.
+configure will try to find the systemtap runtime development files (sdt.h and
+the dtrace python script wrapper), enable compilation of static markers in the
+hotspot code and install a systemtap hotspot.stp tapset for easy tracing with
+systemtap's stap utility. The probes are documented in tapset/hotspot.stp.
 
-This requires the systemtap-sdt-devel package as build dependency and
+This requires the systemtap-sdt-devel package as a build dependency and
 optionally the systemtap package at run time when the user want to use
-the tapset to trace java programs. The probes have zero overhead when
+the tapset to trace Java programs. The probes have zero overhead when
 not used and can safely be compiled in even when not used at runtime.
 
 Support for Additional VMs
--- a/configure.ac	Tue Jun 16 22:18:59 2015 +0100
+++ b/configure.ac	Wed Jun 17 17:18:02 2015 +0100
@@ -79,14 +79,6 @@
 AM_CONDITIONAL([ENABLE_DOCS], [test x$ENABLE_DOCS = xyes])
 AC_MSG_RESULT(${ENABLE_DOCS})
 
-AC_MSG_CHECKING([whether to include SystemTap tracing support])
-AC_ARG_ENABLE([systemtap],
-	      [AS_HELP_STRING([--enable-systemtap],
-	      		      [Enable inclusion of SystemTap trace support])],
-	      [ENABLE_SYSTEMTAP="${enableval}"], [ENABLE_SYSTEMTAP='no'])
-AM_CONDITIONAL([ENABLE_SYSTEMTAP], [test x$ENABLE_SYSTEMTAP = xyes])
-AC_MSG_RESULT(${ENABLE_SYSTEMTAP})
-
 IT_LOCATE_NSS
 IT_GET_PKGVERSION
 IT_GET_LSB_DATA
@@ -220,14 +212,13 @@
 Try installing libXrender-devel.])
 fi
 
-if test "x${ENABLE_SYSTEMTAP}" = xyes; then
 AC_CHECK_HEADER([sys/sdt.h], [SDT_H_FOUND='yes'],
                 [SDT_H_FOUND='no';
-                   AC_MSG_ERROR([systemtap support needs sys/sdt.h header])])
+                   AC_MSG_WARN([systemtap support needs sys/sdt.h header])])
 
- AC_MSG_CHECKING([working sys/sdt.h and g++ support])
- AC_LANG_PUSH([C++])
- AC_LINK_IFELSE([AC_LANG_PROGRAM([[
+AC_MSG_CHECKING([working sys/sdt.h and g++ support])
+AC_LANG_PUSH([C++])
+AC_LINK_IFELSE([AC_LANG_PROGRAM([[
 #include <sys/sdt.h>
 class ProbeClass
 {
@@ -258,11 +249,12 @@
   DTRACE_PROBE1(_test_, call, i);
   ProbeClass inst = ProbeClass(i, "call");
   inst.method(24);
-]])], [AC_MSG_RESULT([yes])], [AC_MSG_ERROR([systemtap sdt.h or g++ too old])])
-  AC_LANG_POP([C++])
+]])], [AC_MSG_RESULT([yes])], [SDT_H_FOUND='no'; AC_MSG_WARN([systemtap sdt.h or g++ too old])])
+AC_LANG_POP([C++])
+AM_CONDITIONAL([ENABLE_SYSTEMTAP], [test x$SDT_H_FOUND = xyes])
 
-  AC_MSG_CHECKING([for absolute java home install dir])
-  AC_ARG_WITH([abs-install-dir],
+AC_MSG_CHECKING([for absolute java home install dir])
+AC_ARG_WITH([abs-install-dir],
 	      [AS_HELP_STRING([--with-abs-install-dir], 
 			      [The absolute path where the j2sdk-image dir will be installed])],
 	      [if test "x${withval}" = x; then
@@ -270,16 +262,15 @@
 	       else
 		 ABS_JAVA_HOME_DIR="${withval}"
 	       fi], [ABS_JAVA_HOME_DIR="${abs_top_builddir}/${OPENJDK_BUILD_DIR}/j2sdk-image"])
-  AC_MSG_RESULT([${ABS_JAVA_HOME_DIR}])
-  ABS_CLIENT_LIBJVM_SO="${ABS_JAVA_HOME_DIR}/jre/lib/${INSTALL_ARCH_DIR}/client/libjvm.so"
-  ABS_SERVER_LIBJVM_SO="${ABS_JAVA_HOME_DIR}/jre/lib/${INSTALL_ARCH_DIR}/server/libjvm.so"
-  AC_SUBST(ABS_JAVA_HOME_DIR)
-  AC_SUBST(ABS_CLIENT_LIBJVM_SO)
-  AC_SUBST(ABS_SERVER_LIBJVM_SO)
-  AC_CONFIG_FILES([tapset/hotspot.stp])
-  AC_CONFIG_FILES([tapset/hotspot_jni.stp])
-  AC_CONFIG_FILES([tapset/jstack.stp])
-fi
+AC_MSG_RESULT([${ABS_JAVA_HOME_DIR}])
+ABS_CLIENT_LIBJVM_SO="${ABS_JAVA_HOME_DIR}/jre/lib/${INSTALL_ARCH_DIR}/client/libjvm.so"
+ABS_SERVER_LIBJVM_SO="${ABS_JAVA_HOME_DIR}/jre/lib/${INSTALL_ARCH_DIR}/server/libjvm.so"
+AC_SUBST(ABS_JAVA_HOME_DIR)
+AC_SUBST(ABS_CLIENT_LIBJVM_SO)
+AC_SUBST(ABS_SERVER_LIBJVM_SO)
+AC_CONFIG_FILES([tapset/hotspot.stp])
+AC_CONFIG_FILES([tapset/hotspot_jni.stp])
+AC_CONFIG_FILES([tapset/jstack.stp])
 
 dnl Check for libXtst headers and libraries.
 PKG_CHECK_MODULES(XTST, xtst,[XTST_FOUND=yes],[XTST_FOUND=no])