Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 654280

Summary: dev-util/graalvm - GraalVM is a universal virtual machine for running applications written in JavaScript, Python 3, Ruby, R, JVM-based languages like Java, Scala, Kotlin, and LLVM-based languages such as C and C++
Product: Gentoo Linux Reporter: Dennis Schridde <devurandom>
Component: New packagesAssignee: Default Assignee for New Packages <maintainer-wanted>
Status: UNCONFIRMED ---    
Severity: normal CC: archenroot, forrestfunk81, java, jstein, kingjon3377, lssndrbarbieri, yamadharma
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---

Description Dennis Schridde 2018-04-29 07:32:51 UTC
HOMEPAGE="https://www.graalvm.org/"
DESCRIPTION="GraalVM is a universal virtual machine for running applications written in JavaScript, Python 3, Ruby, R, JVM-based languages like Java, Scala, Kotlin, and LLVM-based languages such as C and C++"

The source is available here: https://github.com/oracle/graal

The components of that repository, that are minimally required, appear to be:
* Truffle
  - PN: dev-java/truffle ?
  - DESCRIPTION="Language implementation framework for creating languages and instrumentations for GraalVM"
  - LICENSE="GPL-2-with-classpath-exception"
  - DEPENDS="dev-util/mx virtual/jdk"
* Graal compiler
  - PN: dev-util/graal-compiler ?
  - DESCRIPTION="Compiler targetting GraalVM"
  - LICENSE="GPL-2"
  - DEPENDS="dev-util/mx >=virtual-jdk-8[jvmci] dev-java/truffle"
* Graal tools
  - PN: dev-util/graal-tools ?
  - DESCRIPTION="Set of tools for GraalVM languages implemented with the instrumentation framework"
  - LICENSE="GPL-2-with-classpath-exception"
  - DEPENDS="dev-util/mx virtual/jdk dev-java/truffle"
* Substrate VM
  - PN: dev-java/substratevm ?
  - DESCRIPTION="Framework that allows ahead-of-time (AOT) compilation of Java applications under closed-world assumption into executable images or shared objects targetting GraalVM"
  - LICENSE="GPL-2"
  - DEPENDS="dev-util/mx >=virtual/jdk-8[jvmci]"
  - RDEPENDS="sys-libs/zlib sys-libs/glibc sys-devel/gcc"
* Graal SDK
  - PN: dev-java/graal-sdk ?
  - DESCRIPTION="APIs targetting GraalVM"
  - LICENSE="GPL-2-with-classpath-exception"
  - DEPENDS=" ... graalvm ... i.e. truffle, graal-compiler, graal-tools and substratevm?"

Building any of it additionally needs another tool, written in Python, from a separate repository:
* https://github.com/graalvm/mx
  - PN: dev-util/mx ?
  - DESCRIPTION="Command-line tool used for the development of Graal projects"
  - LICENSE="GPL-2"
  - DEPENDS="dev-lang/python:2.7 virtual/jdk"
Comment 1 Dennis Schridde 2018-04-29 07:34:36 UTC
The PN of dev-util/graalvm is just a placeholder for this report, since it actually consists of multiple components that might be better to package separately (s.a.).
Comment 2 Ladislav Jech 2018-12-25 06:24:07 UTC
Also there is MX build tool and maybe some other dependencies of the main components you listed and are not visible at moment :-)

I looked at the components and it will cost me lot of struggling to make ebuilds for whole stack. 

For anyone interested in this stack I recommend at moment to use Docker image and play with Graal inside it.