Mercurial > hg > icedtea9
view README @ 2676:fef0a957b4af default tip
PR3679: Use the internal copy of the SunEC library rather than statically linking against NSS
2019-01-08 Andrew John Hughes <gnu_andrew@member.fsf.org>
PR3679: Use the internal copy of the SunEC library
rather than statically linking against NSS
* patches/disable-intree-ec.patch: Removed.
* patches/nss-config.patch: Removed.
* patches/nss-not-enabled-config.patch: Removed.
* patches/nss-not-enabled-config-with-sunec.patch:
Renamed to patches/pkcs11-nss-not-enabled-config.patch.
* patches/nss-config-with-sunec.patch:
Renamed to patches/pkcs11-nss-config.patch.
* INSTALL:
Remove --enable-sunec option. Update documentation
to match current situation with SunEC.
* Makefile.am:
(ICEDTEA_PATCHES): Remove disable-intree-ec.patch.
Remove PKCS11 config patches without the SunEC provider.
Rename remaining two to make it clear they are for
the PKCS11 provider.
(ICEDTEA_CONFIGURE): Remove use of system-nss
option which no longer exists, following PR3679.
(ICEDTEA_ENV): Remove NSS_LIBS and NSS_CFLAGS.
(check-ecc): Argument passed to the test should
now be "yes".
* NEWS: Updated.
* acinclude.m4:
(IT_ENABLE_SUNEC): Removed.
* configure.ac: Replace IT_ENABLE_SUNEC call with
IT_LOCATE_NSS.
* fsg.sh.in: Remove unused source code and use
new PR3679 patch instead of old PR2126 patch which
only alters Java code.
* patches/pr3679.patch: Renamed from patches/pr2126.patch,
updated to OpenJDK 9 paths and extended to patch native code.
* patches/rh1022017.patch: Updated to OpenJDK 9 paths.
* remove-intree-libraries.sh.in: Drop conditional removal
of SunEC code.
author | Andrew John Hughes <gnu_andrew@member.fsf.org> |
---|---|
date | Fri, 11 Jan 2019 03:04:42 +0000 |
parents | a84cfe9142fd |
children |
line wrap: on
line source
IcedTea ======= The IcedTea project provides a harness to build the source code from openjdk.java.net using Free Software tools and dependencies. IcedTea addresses two problems: it eliminates the build requirement on proprietary build tools and provides additional patches and features not available in OpenJDK. IcedTea also provides build scripts and patches that fix a number of issues which are as yet unresolved upstream. See INSTALL for build instructions. Homepage (wiki): http://icedtea.classpath.org/ Bugs (bugzilla): http://icedtea.classpath.org/bugzilla Mailing List: distro-pkg-dev@openjdk.java.net http://mail.openjdk.java.net/mailman/listinfo/distro-pkg-dev FAQ: http://icedtea.classpath.org/wiki/FrequentlyAskedQuestions Anonymous Mercurial checkout: hg clone http://icedtea.classpath.org/hg/icedtea Java compatibility ------------------ IcedTea is derived from OpenJDK, an open-source implementation of the Java SE platform. See http://openjdk.java.net/groups/conformance/ for information on compatibility testing. A Note About License Headers ---------------------------- Some sources downloaded from openjdk.java.net do not display the GPL license header. Instances are: - We are assuming that these files are owned by Sun: openjdk/jdk/src/share/classes/**/resources/*.properties The Zero Assembler and Shark Ports ================================== Gary Benson has developed a port of the interpreter included in the HotSpot virtual machine which avoids using any assembly language. As a pure C++ interpreter, it should be possible to build this on most architectures and have a working (albeit slow) version of OpenJDK. Successful builds have been made on ppc, ppc64 and arm. The zero assembler port is enabled by default on platforms other than x86, x86_64 and sparc. To enable it on these platforms, use the --enable-zero option. Gary is now working on a JIT called Shark to provide better performance on platforms which need to use the zero port. A preliminary version of this is now included with IcedTea and can be built with the --enable-shark option. CACAO as VM =========== The CACAO virtual machine (http://cacaovm.org) can be used as an alternative to the HotSpot virtual machine. One advantage of this is that it already provides a JIT for many platforms to which HotSpot has not yet been ported, including ppc, ppc64, arm and mips. To use CACAO as the VM, use the --with-cacao option. This will download a snapshot of CACAO during the build, which has been tested with this version of IcedTea7. The environment variable CACAO_CONFIGURE_ARGS can be used to pass additional arguments to the cacao configure. PulseAudio Mixer ================ Passing --enable-pulse-java to configure will build the PulseAudio Mixer for java. This allows java programs to use PulseAudio as the sound backend. SystemTap Support ================= 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 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 not used and can safely be compiled in even when not used at runtime. Support for Additional VMs ========================== Although IcedTea can be built multiple times to use a different virtual machine, additional VMs can be built without building the other components multiple times. On architectures where hotspot is available, use --with-additional-vms=cacao,zero (or shark instead of zero) on architectures where only zero (or shark) is available, use --with-additional-vms=cacao to build the additional VM's. It's not possible to build cacao as the default VM, and zero as additional VM. To build zero as the default VM and shark as an additional VM, use --enable-zero --with-additional-vms=shark The additional VM's are available by calling the java with the option `-cacao', `-zero' or `-shark', or by calling the java tools with `-J-<vm name>'. If the build was configured with '--enable-shark', use `-Xint' to just use the zero VM.