From 6d85547a9c37ac8a8eb8d8cb51745094f5550a10 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20=C5=A0pan=C4=9Bl?= Date: Thu, 5 Aug 2021 13:11:47 +0200 Subject: [PATCH] Cross compile for Scala.js --- build.sbt | 33 +++++++++++++++++++++------------ project/plugins.sbt | 2 ++ 2 files changed, 23 insertions(+), 12 deletions(-) diff --git a/build.sbt b/build.sbt index 1f17478..4359cbd 100644 --- a/build.sbt +++ b/build.sbt @@ -1,17 +1,27 @@ -ScalaModulePlugin.scalaModuleSettings -ScalaModulePlugin.scalaModuleOsgiSettings -name := "scala-async" -scalaModuleAutomaticModuleName := Some("scala.async") +val sharedSettings = ScalaModulePlugin.scalaModuleSettings ++ ScalaModulePlugin.scalaModuleOsgiSettings ++ Seq( + name := "scala-async", + scalaModuleAutomaticModuleName := Some("scala.async"), -libraryDependencies += "org.scala-lang" % "scala-reflect" % scalaVersion.value % "provided" -libraryDependencies += "junit" % "junit" % "4.13.2" % Test -libraryDependencies += "com.novocode" % "junit-interface" % "0.11" % Test + OsgiKeys.exportPackage := Seq(s"scala.async.*;version=${version.value}"), -ScalaModulePlugin.enableOptimizer -testOptions += Tests.Argument(TestFrameworks.JUnit, "-q", "-v", "-s") -Test / scalacOptions ++= Seq("-Yrangepos") -scalacOptions ++= List("-deprecation" , "-Xasync") + libraryDependencies += "org.scala-lang" % "scala-reflect" % scalaVersion.value % "provided", + libraryDependencies += "junit" % "junit" % "4.13.2" % Test, + libraryDependencies += "com.novocode" % "junit-interface" % "0.11" % Test, + + ScalaModulePlugin.enableOptimizer, + testOptions += Tests.Argument(TestFrameworks.JUnit, "-q", "-v", "-s"), + Test / scalacOptions ++= Seq("-Yrangepos"), + scalacOptions ++= List("-deprecation" , "-Xasync") +) + +lazy val proj = crossProject(JSPlatform, JVMPlatform) + .withoutSuffixFor(JVMPlatform) + .crossType(CrossType.Pure) + .in(file(".")) + .settings(sharedSettings) + +lazy val root = project.in(file(".")).settings(sharedSettings) Global / parallelExecution := false @@ -41,7 +51,6 @@ pomExtra := ( ) -OsgiKeys.exportPackage := Seq(s"scala.async.*;version=${version.value}") commands += testDeterminism diff --git a/project/plugins.sbt b/project/plugins.sbt index 33d0107..aed2291 100644 --- a/project/plugins.sbt +++ b/project/plugins.sbt @@ -1 +1,3 @@ addSbtPlugin("org.scala-lang.modules" % "sbt-scala-module" % "2.3.1") +addSbtPlugin("org.scala-js" % "sbt-scalajs" % "1.7.0") +addSbtPlugin("org.portable-scala" % "sbt-scalajs-crossproject" % "1.0.0")