aboutsummaryrefslogtreecommitdiff
path: root/project/FlowBuild.scala
diff options
context:
space:
mode:
Diffstat (limited to 'project/FlowBuild.scala')
-rw-r--r--project/FlowBuild.scala77
1 files changed, 40 insertions, 37 deletions
diff --git a/project/FlowBuild.scala b/project/FlowBuild.scala
index 4d51d33..cce9ea3 100644
--- a/project/FlowBuild.scala
+++ b/project/FlowBuild.scala
@@ -1,24 +1,49 @@
import sbt._
import Keys._
import JniKeys._
+import UniqueVersionKeys._
+
object FlowBuild extends Build {
val Organization = "com.github.jodersky"
val ScalaVersion = "2.10.3"
- val Version = "2.0.0-RC2" //version of flow library
+ val Version = "2.0.0-RC2"
- val gitHeadCommitSha = settingKey[String]("Current commit sha.")
- lazy val commonSettings: Seq[Setting[_]] = Seq(
- organization := Organization,
- scalaVersion := ScalaVersion,
- isSnapshot := sys.props("release") != "true",
- gitHeadCommitSha in ThisBuild := Process("git rev-parse HEAD").lines.head,
- version in ThisBuild:= { if (!isSnapshot.value) Version else Version + "-" + gitHeadCommitSha.value },
- licenses := Seq(("BSD-3-Clause", url("http://opensource.org/licenses/BSD-3-Clause"))),
- homepage := Some(url("http://github.com/jodersky/flow")),
- resolvers += "Typesafe Repo" at "http://repo.typesafe.com/typesafe/releases/",
- scalacOptions ++= Seq("-deprecation", "-unchecked", "-feature"))
+ lazy val commonSettings: Seq[Setting[_]] =
+ UniqueVersionDefaults.settings ++
+ Seq(
+ organization := Organization,
+ scalaVersion := ScalaVersion,
+ baseVersion := Version,
+ licenses := Seq(("BSD-3-Clause", url("http://opensource.org/licenses/BSD-3-Clause"))),
+ homepage := Some(url("http://github.com/jodersky/flow")),
+ resolvers += "Typesafe Repo" at "http://repo.typesafe.com/typesafe/releases/",
+ scalacOptions ++= Seq("-deprecation", "-unchecked", "-feature"))
+
+ lazy val publishSettings: Seq[Setting[_]] = Seq(
+ publishMavenStyle := true,
+ publishTo := {
+ val nexus = "https://oss.sonatype.org/"
+ if (isSnapshot.value)
+ Some("snapshots" at nexus + "content/repositories/snapshots")
+ else
+ Some("releases" at nexus + "service/local/staging/deploy/maven2")
+ },
+ pomIncludeRepository := { _ => false },
+ pomExtra := {
+ <scm>
+ <url>git@github.com:jodersky/flow.git</url>
+ <connection>scm:git:git@github.com:jodersky/flow.git</connection>
+ </scm>
+ <developers>
+ <developer>
+ <id>jodersky</id>
+ <name>Jakob Odersky</name>
+ </developer>
+ </developers>
+ }
+ )
lazy val runSettings: Seq[Setting[_]] = Seq(
fork := true,
@@ -37,35 +62,13 @@ object FlowBuild extends Build {
lazy val flow: Project = (
Project("flow", file("flow"))
settings (commonSettings: _*)
+ settings (publishSettings: _*)
settings (JniDefaults.settings: _*)
settings(
- javahClasses := Seq("com.github.jodersky.flow.internal.NativeSerial"),
javahHeaderDirectory := (baseDirectory in ThisBuild).value / "flow-native" / "include",
+ javahClasses := Seq("com.github.jodersky.flow.internal.NativeSerial"),
compileOrder in Compile := CompileOrder.Mixed,
- publishMavenStyle := true,
- publishTo := {
- val nexus = "https://oss.sonatype.org/"
- if (isSnapshot.value)
- Some("snapshots" at nexus + "content/repositories/snapshots")
- else
- Some("releases" at nexus + "service/local/staging/deploy/maven2")
- },
- pomIncludeRepository := { _ => false },
- pomExtra := {
- <scm>
- <url>git@github.com:jodersky/flow.git</url>
- <connection>scm:git:git@github.com:jodersky/flow.git</connection>
- </scm>
- <developers>
- <developer>
- <id>jodersky</id>
- <name>Jakob Odersky</name>
- </developer>
- </developers>
- },
- libraryDependencies ++= Seq(
- Dependencies.akkaActor
- )
+ libraryDependencies += Dependencies.akkaActor
)
)