Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 635902 - dev-lang/nqp-2017.09[java]: Need at least JVM 1.8
Summary: dev-lang/nqp-2017.09[java]: Need at least JVM 1.8
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Patrick Lauer
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-10-30 17:54 UTC by Martin von Gagern
Modified: 2019-08-07 11:42 UTC (History)
5 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Martin von Gagern 2017-10-30 17:54:03 UTC
The nqp ebuild does specify the Java dependency as 1.7, while the package itself considers it to be 1.8 as per this build error message:

 * jvm: running nqp_configure

Creating tools/build/install-jvm-runner.pl ...

===SORRY!===
Need at least JVM 1.8 (got java version "1.7.0_151"
)

got: java version "1.7.0_151"
 * ERROR: dev-lang/nqp-2017.09::gentoo failed (configure phase):
 *   (no error message)
 * 
 * Call stack:
 *     ebuild.sh, line  124:  Called src_configure
 *   environment, line 3869:  Called multibuild_foreach_variant 'nqp_configure'
 *   environment, line 3351:  Called _multibuild_run 'nqp_configure'
 *   environment, line 3349:  Called nqp_configure
 *   environment, line 3560:  Called die
 * The specific snippet of code:
 *       perl Configure.pl "${myconfargs[@]}" || die;
 * 
 * If you need support, post the output of `emerge --info '=dev-lang/nqp-2017.09::gentoo'`,
 * the complete build log and the output of `emerge -pqv '=dev-lang/nqp-2017.09::gentoo'`.
!!! When you file a bug report, please include the following information:
GENTOO_VM=icedtea-7  CLASSPATH="" JAVA_HOME="/usr/lib64/icedtea7"
JAVACFLAGS="-source 1.7 -target 1.7" COMPILER=""
and of course, the output of emerge --info =nqp-2017.09
 * The complete build log is located at '/var/log/portage/dev-lang:nqp-2017.09:20171029-024018.log'.
 * For convenience, a symlink to the build log is located at '/var/tmp/portage/dev-lang/nqp-2017.09/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/dev-lang/nqp-2017.09/temp/environment'.
 * Working directory: '/var/tmp/portage/dev-lang/nqp-2017.09/work/nqp-2017.09-jvm'
 * S: '/var/tmp/portage/dev-lang/nqp-2017.09/work/nqp-2017.09'

I managed to install the package successfully by forcing the VM to use:
# JAVA_PKG_FORCE_VM=icedtea-8 emerge -1 nqp rakudo
Comment 1 Martin von Gagern 2017-11-20 11:20:00 UTC
dev-lang/nqp-2017.10 affected in the same way.
Comment 2 Martin von Gagern 2017-12-08 11:55:35 UTC
Actually nqp-2017.10 is more problematic than nqp-2017.09. Even with the JAVA_PKG_FORCE_VM=icedtea-8 in place, or with my whole compiler selection overhead dropped (i.e. /etc/java-config-2/build/ removed), I get errors like this:

javac -source 1.7 -target 1.7 -source 1.8 -cp …
javac: source release 1.8 requires target release 1.8
make: *** [Makefile:245: nqp-runtime.jar] Error 2

GENTOO_VM=icedtea-8  CLASSPATH="" JAVA_HOME="/usr/lib64/icedtea8"
JAVACFLAGS="-source 1.7 -target 1.7" COMPILER=""

So I had to override the source version, and target as well to play it safe:

JAVA_PKG_WANT_SOURCE=1.8 JAVA_PKG_WANT_TARGET=1.8 JAVA_PKG_FORCE_VM=icedtea-8 \
emerge -1 =dev-lang/{nqp,rakudo}-2017.10
Comment 3 Juergen Rose 2017-12-16 18:37:24 UTC
The same issue happens with nqp-2017.11.
Comment 4 mimosinnet 2018-03-09 09:37:34 UTC
Same issue with dev-lang/nqp-2018.02
Comment 5 William L. Thomson Jr. 2018-03-13 16:05:41 UTC
Need to edit the ebuild and update the jdk/jre deps to 1.8. The eclasses in Gentoo set source/target based on jdk/jre version found in DEPS/RDEPS.
DEPEND -> source, RDEPEND -> target. Thus need to bump both to 1.8 and it should solve the issue. Just need to re-digest after modification, ebuild nqp-9999.ebuild digest.
Comment 6 Kent Fredric (IRC: kent\n) (RETIRED) gentoo-dev 2019-04-18 03:41:08 UTC
JVM 1.7 is no longer available in tree, and this version of nqp is also no longer available.

This bug is thus obsolete.

Feel free to re-open if I'm wrong :)
Comment 7 Larry the Git Cow gentoo-dev 2019-08-07 11:42:49 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=07051bf7565cea2a153d22d3c41205de48ca54ad

commit 07051bf7565cea2a153d22d3c41205de48ca54ad
Author:     Kent Fredric <kentnl@gentoo.org>
AuthorDate: 2019-08-07 09:59:09 +0000
Commit:     Kent Fredric <kentnl@gentoo.org>
CommitDate: 2019-08-07 11:41:45 +0000

    dev-lang/nqp: Force JDK/JRE 8 in dependencies
    
    Due to jdk/jre-1.7 being mentioned in (R)DEPEND, java-pkg_javac-args
    injects "-source 1.7 -target 1.7" into the javac invocation, which is
    silly, as nqp then appends "-source 1.8" to it anyway, resulting in:
    
      javac -source 1.7 -target 1.7 -source 1.8 ....
    
    And javac then barfs:
    
      javac: source release 1.8 requires target release 1.8
    
    Bumping the values in DEPENDS changes the javac invocation to:
    
      javac -source 1.8 -target 1.8 -source 1.8 ...
    
    Which of course then works.
    
    Subsequently, all existing nqp versions (other than -9999) now work
    for me with USE="java" just fine, where previously they wouldn't work
    at all.
    
    Closes: https://bugs.gentoo.org/631226
    Closes: https://bugs.gentoo.org/626486
    Closes: https://bugs.gentoo.org/635902
    Package-Manager: Portage-2.3.66, Repoman-2.3.16
    Signed-off-by: Kent Fredric <kentnl@gentoo.org>

 .../{nqp-2018.06.ebuild => nqp-2018.06-r1.ebuild}  |   4 +-
 .../{nqp-2018.08.ebuild => nqp-2018.08-r1.ebuild}  |   4 +-
 .../{nqp-2018.09.ebuild => nqp-2018.09-r1.ebuild}  |   4 +-
 .../{nqp-2018.12.ebuild => nqp-2018.12-r1.ebuild}  |   4 +-
 dev-lang/nqp/nqp-2019.03-r1.ebuild                 | 158 +++++++++++++++++++++
 dev-lang/nqp/nqp-2019.03.ebuild                    | 158 ---------------------
 dev-lang/nqp/nqp-9999.ebuild                       |   4 +-
 7 files changed, 168 insertions(+), 168 deletions(-)