All Downloads are FREE. Search and download functionalities are using the official Maven repository.

scala.build.options.packaging.NativeImageOptions.scala Maven / Gradle / Ivy

There is a newer version: 1.5.1
Show newest version
package scala.build.options.packaging

import scala.build.Positioned
import scala.build.internal.Constants
import scala.build.options.{ConfigMonoid, ShadowingSeq}

final case class NativeImageOptions(
  graalvmJvmId: Option[String] = None,
  graalvmJavaVersion: Option[Int] = None,
  graalvmVersion: Option[String] = None,
  graalvmArgs: Seq[Positioned[String]] = Nil
) {
  lazy val jvmId: String =
    graalvmJvmId.getOrElse {
      val javaVersion = graalvmJavaVersion.getOrElse(Constants.defaultGraalVMJavaVersion)
      val version     = graalvmVersion.getOrElse(Constants.defaultGraalVMVersion)
      s"graalvm-java$javaVersion:$version"
    }
}

object NativeImageOptions {
  implicit val monoid: ConfigMonoid[NativeImageOptions] = ConfigMonoid.derive
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy