Created attachment 427060 [details] emerge --info '=dev-java/icedtea-3.0.0_pre09::java' This can be easily circumvented by FEATURES=-ccache
Created attachment 427062 [details] build.log
Hmm is this unsupported because it actually doesn't work or because upstream just doesn't like it? If it's the latter, I think Gentoo users should be given the choice.
No. Have a look at the complete error: configure: Resolving CC (as /usr/lib/ccache/bin/gcc) failed, using /usr/lib/ccache/bin/gcc directly. checking resolved symbolic links for CC... /usr/bin/ccache configure: Please use --enable-ccache instead of providing a wrapped compiler. configure: error: /usr/lib/ccache/bin/gcc is a symbolic link to ccache. This is not supported. configure exiting with result code 1 Makefile:2339: recipe for target 'stamps/icedtea-boot-configure.stamp' failed make: *** [stamps/icedtea-boot-configure.stamp] Error 1
Same error happens for _pre10
I added --enable-ccache to the ebuild and used FEATURES="-ccache" for emerge. This is what I get: grep -i ccache /var/tmp/portage/dev-java/icedtea-3.0.0_pre10/temp/build.log ./configure --prefix=/usr --build=x86_64-pc-linux-gnu --host=x86_64-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --disable-dependency-tracking --disable-silent-rules --libdir=/usr/lib64/icedtea8/lib64 --disable-bootstrap --with-parallel-jobs=5 --with-openjdk-src-zip=/var/tmp/portage/dev-java/icedtea-3.0.0_pre10/distdir/icedtea-3.0-openjdk-19d738ae2def.tar.xz --with-corba-src-zip=/var/tmp/portage/dev-java/icedtea-3.0.0_pre10/distdir/icedtea-3.0-corba-9972d4fac942.tar.xz --with-jaxp-src-zip=/var/tmp/portage/dev-java/icedtea-3.0.0_pre10/distdir/icedtea-3.0-jaxp-ce45ec06ff23.tar.xz --with-jaxws-src-zip=/var/tmp/portage/dev-java/icedtea-3.0.0_pre10/distdir/icedtea-3.0-jaxws-ee1046345cb0.tar.xz --with-jdk-src-zip=/var/tmp/portage/dev-java/icedtea-3.0.0_pre10/distdir/icedtea-3.0-jdk-e917bc6b356b.tar.xz --with-hotspot-src-zip=/var/tmp/portage/dev-java/icedtea-3.0.0_pre10/distdir/icedtea-3.0-hotspot-e9585e814cc9.tar.xz --with-langtools-src-zip=/var/tmp/portage/dev-java/icedtea-3.0.0_pre10/distdir/icedtea-3.0-langtools-d6b6666581f9.tar.xz --with-nashorn-src-zip=/var/tmp/portage/dev-java/icedtea-3.0.0_pre10/distdir/icedtea-3.0-nashorn-82dc1533255a.tar.xz --with-cacao-src-zip=/var/tmp/portage/dev-java/icedtea-3.0.0_pre10/distdir/icedtea-cacao-c182f119eaad.tar.xz --with-jamvm-src-zip=/var/tmp/portage/dev-java/icedtea-3.0.0_pre10/distdir/icedtea-jamvm-ec18fb9e49e62dce16c5094ef1527eed619463aa.tar.gz --with-jdk-home=/usr/lib64/icedtea7 --prefix=/usr/lib64/icedtea8 --mandir=/usr/lib64/icedtea8/man --docdir=/usr/share/doc/icedtea-3.0.0_pre10 --htmldir=/usr/share/doc/icedtea-3.0.0_pre10/html --with-abs-install-dir=/usr/lib64/icedtea8 --with-pkgversion=Gentoo icedtea-3.0.0_pre10 --disable-downloading --disable-Werror --disable-tests --enable-system-lcms --enable-system-jpeg --enable-system-zlib --disable-systemtap-tests --enable-ccache --enable-system-gif --enable-system-png --enable-optimizations --disable-docs --without-pax --enable-sunec configure: WARNING: unrecognized options: --enable-ccache configure: WARNING: unrecognized options: --enable-ccache checking for ccache... /usr/bin/ccache checking if ccache supports precompiled headers... no, disabling ccache * ccache status: installed, but disabled (version older than 3.1.4) Build performance tip: ccache gives a tremendous speedup for C++ recompilations. You have ccache installed, but it is a version prior to 3.1.4. Try upgrading. ================================================================= Package Settings ================================================================= dev-util/ccache-3.2.4::gentoo was built with the following: USE="" ABI_X86="64"
I've looked into this and passing --enable-ccache makes no difference because IcedTea's configure script doesn't recognise it and doesn't pass it onto OpenJDK's. OpenJDK will attempt to use it anyway if it is installed. It works with 3.1.9 but fails with 3.2.4 because the check is very dumb. $CCACHE --version | head -n 1 | grep -E 3.1.[456789] There is a bug report about this. It's been closed in favour of an older report that's been reopened. https://bugs.openjdk.java.net/browse/JDK-8067132 However, ccache is now disabled by default for OpenJDK 9 because it's too problematic. I could apply fixes but maybe we should just disable it and be done with it.
Fixed! We patch the version check, strip the PATH, and disable the automagic.