aboutsummaryrefslogtreecommitdiff
path: root/project
diff options
context:
space:
mode:
authorJakob Odersky <jodersky@gmail.com>2015-12-06 17:03:08 -0800
committerJakob Odersky <jodersky@gmail.com>2015-12-06 17:09:40 -0800
commite2505d1d9e2e49554057a8cd5fb71b0ac0e3ba63 (patch)
treef4fec79ba707aa9b2dec903d54a164f357961f19 /project
parent3e90312b3f2d912bf27e91b454a6ef21a81a2fc5 (diff)
downloadsbt-jni-e2505d1d9e2e49554057a8cd5fb71b0ac0e3ba63.tar.gz
sbt-jni-e2505d1d9e2e49554057a8cd5fb71b0ac0e3ba63.tar.bz2
sbt-jni-e2505d1d9e2e49554057a8cd5fb71b0ac0e3ba63.zip
Use separate project for native libraries
Diffstat (limited to 'project')
-rw-r--r--project/Build.scala32
1 files changed, 26 insertions, 6 deletions
diff --git a/project/Build.scala b/project/Build.scala
index e1551a4..9a6c0e0 100644
--- a/project/Build.scala
+++ b/project/Build.scala
@@ -1,10 +1,12 @@
import sbt._
import sbt.Keys._
-object NativeUtilsBuild extends Build {
+object JniBuild extends Build {
+
+ val scalaVersions = List("2.11.7", "2.10.5")
val commonSettings = Seq(
- version := "0.1-SNAPSHOT",
+ version := "0.2-SNAPSHOT",
organization := "ch.jodersky",
scalacOptions ++= Seq("-deprecation", "-feature")
)
@@ -16,21 +18,39 @@ object NativeUtilsBuild extends Build {
library, plugin
),
settings = Seq(
- publish := {}
+ publish := {},
+ publishLocal := {}
)
)
lazy val library = Project(
id = "jni-library",
base = file("jni-library"),
- settings = commonSettings
+ settings = commonSettings ++ Seq(
+ scalaVersion := scalaVersions.head,
+ crossScalaVersions := scalaVersions.reverse
+ )
)
lazy val plugin = Project(
id = "sbt-jni",
base = file("jni-plugin"),
- settings = commonSettings ++ Seq(sbtPlugin := true),
- dependencies = Seq(library)
+ dependencies = Seq(library),
+ settings = commonSettings ++ Seq(
+ sbtPlugin := true,
+ sourceGenerators in Compile += Def.task{
+ val src = s"""|package ch.jodersky.sbt.jni
+ |
+ |private object Version {
+ | final val PluginVersion = "${version.value}"
+ |}
+ |""".stripMargin
+ val file = sourceManaged.value / "ch" / "jodersky" / "sbt" / "jni" / "Version.scala"
+ IO.write(file, src)
+ Seq(file)
+ }.taskValue,
+ libraryDependencies += "org.ow2.asm" % "asm" % "5.0.4"
+ )
)
}