We are pleased to announce the release of IcedTea6 1.12.0!

The IcedTea project provides a harness to build the source code from OpenJDK6 using Free Software build tools, along with additional features such as a PulseAudio sound driver and support for alternative virtual machines.

This is the first major release in a year (1.11 was released on 2012-01-30). In accordance with the release policy, 1.10 will no longer receive security updates.

If you find an issue with one of these releases, please report it in our bug database under the appropriate component. Development discussion takes place on the OpenJDK distro-pkg-dev mailing list and patches are always welcome.

Full details of each release can be found below.

What’s New?

New in release 1.12.0 (2013-01-29)

  • Import of OpenJDK6 b27 (all changes already in security updates)
  • Import of OpenJDK6 b26
    • S7071826: Avoid benign race condition in initialization of UUID
    • S7123896: Unexpected behavior due to Solaris using separate IPv4 and IPv6 port spaces
    • S7142509: Cipher.doFinal(ByteBuffer,ByteBuffer) fails to process when in.remaining() == 0
    • S7157903: JSSE client sockets are very slow
    • S7174440: JDK6-open build breakage
    • S7175845: JSSE client sockets are very slow
    • S7176477: TEST: Remove testcase test/java/lang/SecurityManager/CheckPackageDefinition.java from jdk6-open
    • S7184700: Backout changes with wrong id for 7157903
    • S7199153: TEST_BUG: try-with-resources syntax pushed to 6-open repo
  • Import of OpenJDK6 b25
    • S6790292: BOOTDIR of jdk6 u12 will not work with jdk7 builds
    • S6967036: Need to fix links with // in Javadoc comments
    • S7007299: FileFontStrike appears not to be threadsafe
    • S7022473: JDK7 still runs /etc/prtconf to find memory size
    • S7058133: Javah should use the freshly built classes instead of those from the BOOTDIR jdk
    • S7107919: Remove hotspot assertion due to Solaris 8 kstat “unimplemented”.
    • S7123519: problems with certification path
    • S7126889: Incorrect SSLEngine debug output
    • S7127104: Build issue with prtconf and zones, also using := to avoid extra execs
    • S7128474: Update source copyright years
    • S7128505: Building on em64t system does not work
    • S7149751: another krb5 test in openjdk6 without test infrastructure
  • Backports
    • S6706974: Add krb5 test infrastructure
    • S6764553: com.sun.org.apache.xml.internal.security.utils.IdResolver is not thread safe
    • S6761072: new krb5 tests fail on multiple platforms
    • S6883983: JarVerifier dependency on sun.security.pkcs should be removed
    • S4465490: Suspicious about double-check locking idiom being used in the code
    • S6763340: memory leak in com.sun.corba.se.* classes
    • S6873605: Missing finishedDispatch() call in ORBImpl causes test failures after 5u20 b04
    • S6980681: CORBA deadlock in Java SE believed to be related to CR 6238477
    • S7162902: Umbrella port of a number of corba bug fixes from JDK 6 to jdk7u/8
    • S6414899: P11Digest should support cloning
    • S4898461: Support for ECB and CBC/PKCS5Padding
    • S6604496: Support for CKM_AES_CTR (counter mode)
    • S6682411: JCK test failed w/ ArrayIndexOutOfBoundException (-1) when decrypting with no data
    • S6682417: JCK test failed w/ ProviderException when decrypted data is not multiple of blocks
    • S6687725: Internal PKCS5Padding impl should throw IllegalBlockSizeException and not BadPaddingException
    • S6812738: SSL stress test with GF leads to 32 bit max process size in less than 5 minutes with PCKS11 provider
    • S6867345: Turkish regional options cause NPE in sun.security.x509.AlgorithmId.algOID
    • S6924489: sun.security.pkcs11.wrapper.PKCS11Exception: CKR_OPERATION_NOT_INITIALIZED
    • S7088989: Improve the performance for T4 by utilizing the newly provided crypto APIs
  • Bug fixes
    • PR902: PulseAudioClip getMicrosecondsLength() returns length in milliseconds, not microseconds
    • PR1050: Stream objects not garbage collected
    • PR1113: Add tapset tests to distribution.
    • PR1117: IcedTea6 prebuilds far too many classes on bootstrap
    • PR1121: Old installs still suffer from GCC PR41686
    • PR1119: Only add classes to rt-source-files.txt if the class (or one or more of its methods/fields) are actually missing from the boot JDK
    • PR1114: Provide option to turn off downloading of tarballs (–disable-downloading)
    • PR1176: Synchronise CACAO rules between IcedTea6/7/8 where possible
    • RH513605, PR1171: Updating/Installing OpenJDK should recreate the shared class-data archive
    • G422525: Apply pax markings before using a freshly built JVM.
    • PR986: IcedTea7 fails to build with IcedTea6 CACAO due to low max heap size
    • PR1120: Unified version for icedtea6/7
    • CA166, CA167: check-langtools fixes for icedtea6
    • Implemented sun.misc.Perf.highResCounter
    • CACAO now identifies by its own Mercurial revision
    • Some memory barrier maintenance
    • Ability to run when compiled as Thumb on armv5 (no Thumb JIT though)
    • Stop creating pseudo files for OpenJDK (libjsig.so, Xusage.txt)
    • Clang fix for the i386 backend
    • CONTRIBUTE: Reference code submission process wiki instructions.
    • INSTALL.CACAO: Update, so following the instruction actually works.
    • Make doxygen work
    • CA172, PR1266, G453612: ARM hardfloat support
    • src/scripts/java.in: Look for cacao executable in install path, not in PATH.
    • src/vm/jit/alpha/asmpart.S: Fix copyright header.
    • src/vm/jit/alpha/asmpart.S: Properly set up GP in asm_abstractmethoderror
    • Use @abs_top_builddir@ for support scripts
  • JamVM
    • ARMv6 armhf: Changes for Raspbian (Raspberry Pi)
    • PPC: Don’t use lwsync if it isn’t supported
    • X86: Generate machine-dependent stubs for i386
    • When suspending, ignore detached threads that have died, this prevents a user caused deadlock when an external thread has been attached to the VM via JNI and it has exited without detaching
    • Add missing REF_TO_OBJs for references passed from JNI, this enable JamVM to run Qt-Jambi
    • PR1155: Do not put version number in libjvm.so SONAME
  • SystemTap
    • Addition of garbage collection probes

The tarball can be downloaded from:

SHA256 checksums:

  • 4f27f3f42b57836cfb11541736282ccfc22de3f4acc0e540560fcf5512d66ced icedtea6-1.12.0.tar.gz

Each tarball is accompanied by a digital signature available at the above ‘sig’ link. This is produced using my public key. See details below.

The following people helped with this release:

We would also like to thank the bug reporters and testers!

To get started:

$ tar xzf icedtea6-1.12.0.tar.gz
$ cd icedtea-${version}

Full build requirements and instructions are in INSTALL:

$ ./configure [--with-parallel-jobs --enable-pulse-java
--enable-systemtap ...]
$ make

Happy hacking!