diff options
Diffstat (limited to 'build.sbt')
-rw-r--r-- | build.sbt | 41 |
1 files changed, 36 insertions, 5 deletions
@@ -1,24 +1,52 @@ +// shadow sbt-scalajs' crossProject and CrossType until Scala.js 1.0.0 is released +import sbtcrossproject.{crossProject, CrossType} import com.typesafe.sbt.pgp.PgpKeys.publishSigned -lazy val core = crossProject +lazy val core = crossProject(JVMPlatform, JSPlatform, NativePlatform) .in(file("core")) .settings(buildSettings: _*) .settings(publishSettings: _*) .settings(scalaMacroDependencies: _*) .settings(moduleName := "magnolia") + .settings( + scalaVersion := crossScalaVersions.value.head + ) + .jvmSettings( + crossScalaVersions := "2.12.4" :: "2.13.0-M3" :: "2.11.12" :: Nil + ) + .jsSettings( + crossScalaVersions := "2.12.4" :: "2.11.12" :: Nil + ) + .nativeSettings( + crossScalaVersions := "2.11.12" :: Nil + ) lazy val coreJVM = core.jvm lazy val coreJS = core.js +lazy val coreNative = core.native -lazy val examples = crossProject +lazy val examples = crossProject(JVMPlatform, JSPlatform, NativePlatform) .in(file("examples")) .settings(buildSettings: _*) .settings(publishSettings: _*) .settings(moduleName := "magnolia-examples") + .jvmSettings( + crossScalaVersions := (crossScalaVersions in coreJVM).value, + scalaVersion := (scalaVersion in coreJVM).value + ) + .jsSettings( + crossScalaVersions := (crossScalaVersions in coreJS).value, + scalaVersion := (scalaVersion in coreJS).value + ) + .nativeSettings( + crossScalaVersions := (crossScalaVersions in coreNative).value, + scalaVersion := (scalaVersion in coreNative).value + ) .dependsOn(core) lazy val examplesJVM = examples.jvm lazy val examplesJS = examples.js +lazy val examplesNative = examples.native lazy val tests = project .in(file("tests")) @@ -37,8 +65,12 @@ lazy val tests = project ) .dependsOn(examplesJVM) - - +lazy val root = (project in file(".")) + .aggregate(coreJVM, coreJS, coreNative, examplesJVM, examplesJS, examplesNative, tests) + .settings( + publish := {}, + publishLocal := {} + ) lazy val benchmarks = project .in(file("benchmarks")) @@ -48,7 +80,6 @@ lazy val benchmarks = project lazy val buildSettings = Seq( organization := "com.propensive", - crossScalaVersions := Seq("2.11.11", "2.12.4"), name := "magnolia", version := "0.7.1", scalacOptions ++= Seq( |