2015-08-19 09:56:08 +02:00
|
|
|
import sbt._
|
|
|
|
|
import Keys._
|
2017-07-02 01:27:54 +02:00
|
|
|
import sbt.contraband.ContrabandPlugin.autoImport._
|
2015-08-19 09:56:08 +02:00
|
|
|
|
|
|
|
|
object Dependencies {
|
2017-06-14 07:56:08 +02:00
|
|
|
val scala211 = "2.11.11"
|
|
|
|
|
val scala212 = "2.12.2"
|
2015-09-02 09:03:20 +02:00
|
|
|
|
2017-07-02 01:27:54 +02:00
|
|
|
private val ioVersion = "1.0.0-M12"
|
|
|
|
|
private val utilVersion = "1.0.0-M25"
|
2016-10-27 14:35:29 +02:00
|
|
|
|
2017-01-05 14:32:44 +01:00
|
|
|
private val sbtIO = "org.scala-sbt" %% "io" % ioVersion
|
2016-10-27 14:35:29 +02:00
|
|
|
|
2017-01-05 14:32:44 +01:00
|
|
|
private val utilCollection = "org.scala-sbt" %% "util-collection" % utilVersion
|
2017-04-26 22:55:38 +02:00
|
|
|
private val utilLogging = "org.scala-sbt" %% "util-logging" % utilVersion
|
|
|
|
|
private val utilCache = "org.scala-sbt" %% "util-cache" % utilVersion
|
2016-10-27 14:35:29 +02:00
|
|
|
|
|
|
|
|
def getSbtModulePath(key: String, name: String) = {
|
|
|
|
|
val localProps = new java.util.Properties()
|
|
|
|
|
IO.load(localProps, file("project/local.properties"))
|
|
|
|
|
val path = Option(localProps getProperty key) orElse (sys.props get key)
|
|
|
|
|
path foreach (f => println(s"Using $name from $f"))
|
|
|
|
|
path
|
|
|
|
|
}
|
|
|
|
|
|
2017-04-26 22:55:38 +02:00
|
|
|
lazy val sbtIoPath = getSbtModulePath("sbtio.path", "sbt/io")
|
2016-10-27 14:35:29 +02:00
|
|
|
lazy val sbtUtilPath = getSbtModulePath("sbtutil.path", "sbt/util")
|
|
|
|
|
|
2017-06-21 14:59:31 +02:00
|
|
|
def addSbtModule(p: Project, path: Option[String], projectName: String, m: ModuleID) =
|
2016-10-27 14:35:29 +02:00
|
|
|
path match {
|
2017-06-21 14:59:31 +02:00
|
|
|
case Some(f) => p dependsOn ProjectRef(file(f), projectName)
|
|
|
|
|
case None => p settings (libraryDependencies += m)
|
2016-10-27 14:35:29 +02:00
|
|
|
}
|
|
|
|
|
|
2017-01-05 14:32:44 +01:00
|
|
|
def addSbtIO(p: Project): Project = addSbtModule(p, sbtIoPath, "io", sbtIO)
|
2017-04-26 22:55:38 +02:00
|
|
|
def addSbtUtilCollection(p: Project): Project =
|
|
|
|
|
addSbtModule(p, sbtUtilPath, "utilCollection", utilCollection)
|
|
|
|
|
def addSbtUtilLogging(p: Project): Project =
|
|
|
|
|
addSbtModule(p, sbtUtilPath, "utilLogging", utilLogging)
|
|
|
|
|
def addSbtUtilCache(p: Project): Project = addSbtModule(p, sbtUtilPath, "utilCache", utilCache)
|
2015-08-19 09:56:08 +02:00
|
|
|
|
2017-01-05 14:32:44 +01:00
|
|
|
val launcherInterface = "org.scala-sbt" % "launcher-interface" % "1.0.0"
|
2017-05-09 01:10:41 +02:00
|
|
|
val ivy = "org.scala-sbt.ivy" % "ivy" % "2.3.0-sbt-a3314352b638afbf0dca19f127e8263ed6f898bd"
|
2017-01-05 14:32:44 +01:00
|
|
|
val jsch = "com.jcraft" % "jsch" % "0.1.46" intransitive ()
|
|
|
|
|
val scalaReflect = Def.setting { "org.scala-lang" % "scala-reflect" % scalaVersion.value }
|
|
|
|
|
val scalaXml = scala211Module("scala-xml", "1.0.5")
|
2017-06-21 14:59:31 +02:00
|
|
|
val scalaTest = "org.scalatest" %% "scalatest" % "3.0.1" % Test
|
2017-07-02 01:27:54 +02:00
|
|
|
val sjsonnew = Def.setting { "com.eed3si9n" %% "sjson-new-core" % contrabandSjsonNewVersion.value }
|
|
|
|
|
val sjsonnewScalaJson = Def.setting { "com.eed3si9n" %% "sjson-new-scalajson" % contrabandSjsonNewVersion.value }
|
2017-05-15 22:34:38 +02:00
|
|
|
val gigahorseOkhttp = "com.eed3si9n" %% "gigahorse-okhttp" % "0.3.0"
|
2017-05-26 10:13:55 +02:00
|
|
|
val okhttpUrlconnection = "com.squareup.okhttp3" % "okhttp-urlconnection" % "3.7.0"
|
2016-11-02 16:22:55 +01:00
|
|
|
|
|
|
|
|
private def scala211Module(name: String, moduleVersion: String) =
|
|
|
|
|
Def.setting {
|
|
|
|
|
scalaVersion.value match {
|
|
|
|
|
case sv if (sv startsWith "2.9.") || (sv startsWith "2.10.") => Nil
|
2017-04-26 22:55:38 +02:00
|
|
|
case _ => ("org.scala-lang.modules" %% name % moduleVersion) :: Nil
|
2016-11-02 16:22:55 +01:00
|
|
|
}
|
|
|
|
|
}
|
2015-08-19 09:56:08 +02:00
|
|
|
}
|