Mercurial > hg > release > icedtea7-2.6
changeset 2962:86bc30befad5
PR3629: Install symlinks to tapsets in SystemTap directory
2018-09-23 Andrew John Hughes <gnu_andrew@member.fsf.org>
PR3629: Install symlinks to tapsets in SystemTap directory
* INSTALL: Updated and synced with IcedTea 3.x.
* Makefile.am:
(install-exec-local):
Add symlinks to tapsets in system tapset directory.
* NEWS: Updated.
* acinclude.m4:
(IT_SET_ARCH_SETTINGS): Set SYSTEMTAP_ARCH_DIR
appropriately for each architecture. Move aarch64/arm64
before arm* as in IcedTea 3.x.
(IT_WITH_TAPSET_DIR): Add option --with-tapset-dir
to allow SystemTap tapset directory to be
specified (defaults to ${datadir}/systemtap/tapset)
* configure.ac:
Invoke IT_WITH_TAPSET_DIR.
author | Andrew John Hughes <gnu_andrew@member.fsf.org> |
---|---|
date | Wed, 05 Dec 2018 07:16:39 +0000 |
parents | c1b0859ec2eb |
children | b0e507383a9c |
files | ChangeLog INSTALL Makefile.am NEWS acinclude.m4 configure.ac |
diffstat | 6 files changed, 95 insertions(+), 20 deletions(-) [+] |
line wrap: on
line diff
--- a/ChangeLog Wed Dec 05 02:54:49 2018 +0000 +++ b/ChangeLog Wed Dec 05 07:16:39 2018 +0000 @@ -1,3 +1,21 @@ +2018-09-23 Andrew John Hughes <gnu_andrew@member.fsf.org> + + PR3629: Install symlinks to tapsets in SystemTap directory + * INSTALL: Updated and synced with IcedTea 3.x. + * Makefile.am: + (install-exec-local): + Add symlinks to tapsets in system tapset directory. + * NEWS: Updated. + * acinclude.m4: + (IT_SET_ARCH_SETTINGS): Set SYSTEMTAP_ARCH_DIR + appropriately for each architecture. Move aarch64/arm64 + before arm* as in IcedTea 3.x. + (IT_WITH_TAPSET_DIR): Add option --with-tapset-dir + to allow SystemTap tapset directory to be + specified (defaults to ${datadir}/systemtap/tapset) + * configure.ac: + Invoke IT_WITH_TAPSET_DIR. + 2017-01-25 Andrew John Hughes <gnu_andrew@member.fsf.org> PR3659: Support RHEL multilib installations which
--- a/INSTALL Wed Dec 05 02:54:49 2018 +0000 +++ b/INSTALL Wed Dec 05 07:16:39 2018 +0000 @@ -29,7 +29,7 @@ libjpeg-devel >= 6b (for --enable-system-jpeg) zlib-devel (for --enable-system-zlib) lcms2-devel (for --enable-system-lcms) -fontconfig (for --enable-system-fontconfig) +fontconfig (for --enable-system-fontconfig & --enable-improved-font-rendering) libc6-dev & libattr-devel/libattr1-dev (for --enable-compile-against-syscalls) libpcsclite (for --enable-system-pcsc) lksctp-tools (for --enable-system-sctp) @@ -218,9 +218,10 @@ tarball to be used instead of the standard versions. * --with-hg-revision: Specify a hg revision to use (as opposed to tip) with the --enable-hg option. * --with-tzdata-dir: Specify the location of Java timezone data, defaulting to /usr/share/javazi. +* --with-tapset-dir: Specify the location of system SystemTap tapsets, defaulting to ${datarootdir}/systemtap/tapset. * --with-llvm-config: Specify the location of the llvm-config binary. * --with-version-suffix: Appends the given text to the JDK version output. -* --with-hotspot-build: The HotSpot to use, defaulting to 'original' i.e. hs14 as bundled with OpenJDK. +* --with-hotspot-build: The HotSpot to use, as listed in hotspot.map.in. * --with-pax: The command used to PaX-mark built binaries. * --enable-Werror: Turn gcc & javac warnings into errors. * --disable-jar-compression: Don't compress the OpenJDK JAR files. @@ -285,7 +286,7 @@ SystemTap ========= -IcedTea7 includes work to allow the existing DTrace probes included in +IcedTea includes work to allow the existing DTrace probes included in 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 --prefix option @@ -293,8 +294,8 @@ 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 ---prefix=/usr/lib/jvm/java-1.6.0-openjdk. +/usr/lib/jvm/java-1.7.0-openjdk, then you should specify +--prefix=/usr/lib/jvm/java-1.7.0-openjdk. The NSS PKCS11 Security Provider and Elliptic Curve Cryptography ================================================================ @@ -319,7 +320,7 @@ CACAO ===== -IcedTea7 can use CACAO as the virtual machine, as opposed to HotSpot. +IcedTea can use CACAO as the virtual machine, as opposed to HotSpot. One advantage of this is that CACAO has a JIT implementation for more platforms than HotSpot, including ppc, arm and mips. When --enable-cacao is specified, CACAO will be downloaded and built, @@ -332,7 +333,7 @@ JamVM ===== -IcedTea6 can use JamVM as the virtual machine, as opposed to HotSpot. +IcedTea can use JamVM as the virtual machine, as opposed to HotSpot. When --enable-jamvm is specified, JamVM will be downloaded and built, followed by the JDK portion of OpenJDK resulting in a JamVM+OpenJDK image in openjdk.build/j2sdk-image. The --with-jamvm-src-zip option @@ -341,19 +342,19 @@ Zero & Shark ============ -IcedTea7 includes a zero assembler port of HotSpot, which avoids +IcedTea includes a zero assembler port of HotSpot, which avoids architecture-specific code as much as possible, allowing an interpreter to be built and run on most platforms (albeit very -slowly). As HotSpot only includes JITs for x86, x86_64, AArch64, -ppc64, ppc64le and SPARC, the zero assembler port is automatically -enabled on all other architectures. On HotSpot architectures, it may +slowly). As HotSpot only includes JITs for aarch64, ppc64, ppc64le, +x86, x86_64 and SPARC, the zero assembler port is automatically enabled +on all other architectures. On HotSpot-supported architectures, it may be built using --enable-zero. To overcome the performance issues inherent in zero, a LLVM-based JIT called Shark has been developed. This performs Just-In-Time compilation on any architecture supported by LLVM. To enable it, pass the option ---enable-shark to configure. Please note that Shark is still in -development and builds are still likely to fail at present. +--enable-shark to configure. Please note that work on Shark is now +abandoned and builds may fail. On ARM32, there is also a native JIT port built on top of Zero, which is built on this platform by default.
--- a/Makefile.am Wed Dec 05 02:54:49 2018 +0000 +++ b/Makefile.am Wed Dec 05 07:16:39 2018 +0000 @@ -3261,9 +3261,18 @@ for files in $(BUILD_SDK_DIR)/jre/lib/ext/*.jar; do \ $(call install_file,$${files},$(DESTDIR)${prefix}/jre/lib/ext,$(INSTALL_DATA));\ done +if ENABLE_SYSTEMTAP +if WITH_TAPSET_DIR + stapdest="$(DESTDIR)$(TAPSET_DIR)/$(SYSTEMTAP_ARCH_DIR)" ; \ for files in $(BUILD_SDK_DIR)/tapset/*.stp; do \ $(call install_file,$${files},$(DESTDIR)${prefix}/tapset,$(INSTALL_DATA));\ + ${mkinstalldirs} $${stapdest} ; \ + tapname=$$(basename $${files}); \ + destname=$${tapname/./-@JAVA_VER@.} ; \ + ln -s ${prefix}/tapset/${tapname} $${stapdest}/$${destname} ; \ done +endif +endif $(abs_top_builddir)/pax-mark-vm $(DESTDIR)${prefix} false install-data-local:
--- a/NEWS Wed Dec 05 02:54:49 2018 +0000 +++ b/NEWS Wed Dec 05 07:16:39 2018 +0000 @@ -2033,6 +2033,8 @@ New in release 2.5.2 (2014-08-29): +* New features + - PR3629: Install symlinks to tapsets in SystemTap directory * Backports - S8049480: Current versions of Java can't verify jars signed and timestamped with Java 9 - S8051012, LP1360392: Regression in verifier for <init> method call from inside of a branch
--- a/acinclude.m4 Wed Dec 05 02:54:49 2018 +0000 +++ b/acinclude.m4 Wed Dec 05 07:16:39 2018 +0000 @@ -6,6 +6,7 @@ INSTALL_ARCH_DIR=amd64 JRE_ARCH_DIR=amd64 RPM_ARCH=x86_64 + SYSTEMTAP_ARCH_DIR=x86_64 ARCHFLAG="-m64" ;; i?86) @@ -13,6 +14,7 @@ INSTALL_ARCH_DIR=i386 JRE_ARCH_DIR=i386 RPM_ARCH=i686 + SYSTEMTAP_ARCH_DIR=i386 ARCH_PREFIX=${LINUX32} ARCHFLAG="-m32" ;; @@ -20,36 +22,42 @@ BUILD_ARCH_DIR=alpha INSTALL_ARCH_DIR=alpha JRE_ARCH_DIR=alpha - ;; - arm*) - BUILD_ARCH_DIR=arm - INSTALL_ARCH_DIR=arm - JRE_ARCH_DIR=arm - RPM_ARCH=armv7hl - ARCHFLAG="-D_LITTLE_ENDIAN" + SYSTEMTAP_ARCH_DIR=alpha ;; arm64|aarch64) BUILD_ARCH_DIR=aarch64 INSTALL_ARCH_DIR=aarch64 JRE_ARCH_DIR=aarch64 RPM_ARCH=aarch64 + SYSTEMTAP_ARCH_DIR=arm64 + ARCHFLAG="-D_LITTLE_ENDIAN" + ;; + arm*) + BUILD_ARCH_DIR=arm + INSTALL_ARCH_DIR=arm + JRE_ARCH_DIR=arm + RPM_ARCH=armv7hl + SYSTEMTAP_ARCH_DIR=arm ARCHFLAG="-D_LITTLE_ENDIAN" ;; mips) BUILD_ARCH_DIR=mips INSTALL_ARCH_DIR=mips JRE_ARCH_DIR=mips + SYSTEMTAP_ARCH_DIR=mips ;; mipsel) BUILD_ARCH_DIR=mipsel INSTALL_ARCH_DIR=mipsel JRE_ARCH_DIR=mipsel + SYSTEMTAP_ARCH_DIR=mips ;; powerpc) BUILD_ARCH_DIR=ppc INSTALL_ARCH_DIR=ppc JRE_ARCH_DIR=ppc RPM_ARCH=ppc + SYSTEMTAP_ARCH_DIR=powerpc ARCH_PREFIX=${LINUX32} ARCHFLAG="-m32" ;; @@ -58,6 +66,7 @@ INSTALL_ARCH_DIR=ppc64 JRE_ARCH_DIR=ppc64 RPM_ARCH=ppc64 + SYSTEMTAP_ARCH_DIR=powerpc ARCHFLAG="-m64" ;; powerpc64le) @@ -65,12 +74,14 @@ INSTALL_ARCH_DIR=ppc64le JRE_ARCH_DIR=ppc64le RPM_ARCH=ppc64le + SYSTEMTAP_ARCH_DIR=powerpc ARCHFLAG="-m64" ;; sparc) BUILD_ARCH_DIR=sparc INSTALL_ARCH_DIR=sparc JRE_ARCH_DIR=sparc + SYSTEMTAP_ARCH_DIR=sparc ARCH_PREFIX=${LINUX32} ARCHFLAG="-m32" ;; @@ -78,6 +89,7 @@ BUILD_ARCH_DIR=sparcv9 INSTALL_ARCH_DIR=sparcv9 JRE_ARCH_DIR=sparc64 + SYSTEMTAP_ARCH_DIR=sparc ARCHFLAG="-m64" ;; s390) @@ -85,6 +97,7 @@ INSTALL_ARCH_DIR=s390 JRE_ARCH_DIR=s390 RPM_ARCH=s390 + SYSTEMTAP_ARCH_DIR=s390 ARCH_PREFIX=${LINUX32} ARCHFLAG="-m31" ;; @@ -93,22 +106,26 @@ INSTALL_ARCH_DIR=s390x JRE_ARCH_DIR=s390x RPM_ARCH=s390x + SYSTEMTAP_ARCH_DIR=s390 ARCHFLAG="-m64" ;; sh*) BUILD_ARCH_DIR=sh INSTALL_ARCH_DIR=sh JRE_ARCH_DIR=sh + SYSTEMTAP_ARCH_DIR=sh ;; *) BUILD_ARCH_DIR=`uname -m` INSTALL_ARCH_DIR=$BUILD_ARCH_DIR JRE_ARCH_DIR=$INSTALL_ARCH_DIR + SYSTEMTAP_ARCH_DIR=$INSTALL_ARCH_DIR ;; esac AC_SUBST(BUILD_ARCH_DIR) AC_SUBST(INSTALL_ARCH_DIR) AC_SUBST(JRE_ARCH_DIR) + AC_SUBST(SYSTEMTAP_ARCH_DIR) AC_SUBST(ARCH_PREFIX) AC_SUBST(ARCHFLAG) ]) @@ -2886,6 +2903,33 @@ fi ]) +AC_DEFUN([IT_WITH_TAPSET_DIR], +[ + TAPSET_DEFAULT="${datadir}/systemtap/tapset" + AC_MSG_CHECKING([which SystemTap tapset directory to use]) + AC_ARG_WITH([tapset-dir], + [AS_HELP_STRING(--with-tapset-dir,set the SystemTap tapset directory [[default=DATAROOTDIR/systemtap/tapset]])], + [ + if test "x${withval}" = x || test "x${withval}" = xyes; then + TAPSET_DIR="${TAPSET_DEFAULT}" + else + TAPSET_DIR="${withval}" + fi + ], + [ + TAPSET_DIR="${TAPSET_DEFAULT}" + ]) + if test "x${TAPSET_DIR}" = "xno"; then + TAPSET_DIR=none + TAPSET_DIR_SET=no + else + TAPSET_DIR_SET=yes + fi + AC_MSG_RESULT([${TAPSET_DIR}]) + AC_SUBST([TAPSET_DIR]) + AM_CONDITIONAL(WITH_TAPSET_DIR, test "x${TAPSET_DIR_SET}" = "xyes") +]) + AC_DEFUN_ONCE([IT_HAS_NATIVE_HOTSPOT_PORT], [ AC_MSG_CHECKING([if a native HotSpot port is available for this architecture])