build.sbt
changeset 5 be060db270d2
parent 1 982bb333982a
child 6 80e9b94097a4
equal deleted inserted replaced
4:9fa3024a6c0a 5:be060db270d2
     1 import sbt.Project.project
     1 import scala.sys.process._
     2 
     2 
     3 lazy val root = project.in(file(".")).
     3 val scalaVersions = Seq("2.11.12", "2.12.4")
       
     4 
       
     5 lazy val fatagsRoot = project.in(file(".")).
     4   aggregate(fatagsJS, fatagsJVM).
     6   aggregate(fatagsJS, fatagsJVM).
     5   settings(
     7   settings(
       
     8     crossScalaVersions := scalaVersions,
     6     publish := {},
     9     publish := {},
     7     publishLocal := {}
    10     publishLocal := {}
     8   )
    11   )
     9 
    12 
    10 lazy val buildSettings = Seq(
    13 lazy val buildSettings = Seq(
    11   organization := "net.tz",
    14   organization := "net.tz",
    12   name := "faTags",
    15   name := "faTags",
    13   scalaVersion := "2.11.11",
    16   scalaVersion := "2.12.4",
       
    17   crossScalaVersions := scalaVersions,
       
    18   scalacOptions ++= Seq(
       
    19     "-feature", "-deprecation", "-unchecked",
       
    20     "-language:implicitConversions", "-language:reflectiveCalls",
       
    21     "-language:postfixOps"
       
    22   ),
       
    23   javacOptions ++= Seq(
       
    24     "-encoding", "UTF-8", "-Xlint:deprecation", "-Xlint:unchecked"),
    14   licenses += ("Apache-2.0", url("http://opensource.org/licenses/Apache-2.0"))
    25   licenses += ("Apache-2.0", url("http://opensource.org/licenses/Apache-2.0"))
    15 )
    26 )
    16 
    27 
    17 lazy val fatags = crossProject.in(file(".")).
    28 lazy val fatags = crossProject.in(file(".")).
    18 enablePlugins(BuildInfoPlugin).
    29 enablePlugins(BuildInfoPlugin).
    19 settings(buildSettings:_*).
    30 settings(buildSettings:_*).
    20 settings(
    31 settings(
    21   libraryDependencies ++= Seq(
    32   libraryDependencies ++= Seq(
    22     "com.lihaoyi" %%% "scalatags" % "0.6.3"
    33     "com.lihaoyi" %%% "scalatags" % "0.6.7"
    23   ),
    34   ),
    24 
    35 
    25   buildInfoKeys := Seq[BuildInfoKey](name, version, scalaVersion, sbtVersion,
    36   buildInfoKeys := Seq[BuildInfoKey](name, version, scalaVersion, sbtVersion,
    26     "scalaJSVersion" -> scalaJSVersion,
    37     "scalaJSVersion" -> scalaJSVersion,
    27     BuildInfoKey.action("buildTime") { System.currentTimeMillis },
    38     BuildInfoKey.action("buildTime") { System.currentTimeMillis },
    28     BuildInfoKey.action("hgId") { Process("hg id -i").lines.head },
    39     BuildInfoKey.action("hgId") { "hg id -i".!!.trim },
    29     BuildInfoKey.action("hgTags") { Process("hg id -t").lines.head }
    40     BuildInfoKey.action("hgTags") { "hg id -t".!!.trim }
    30   ),
    41   ),
    31   buildInfoPackage := "fatags",
    42   buildInfoPackage := "fatags",
    32   buildInfoOptions ++= Seq(BuildInfoOption.ToMap, BuildInfoOption.ToJson)
    43   buildInfoOptions ++= Seq(BuildInfoOption.ToMap, BuildInfoOption.ToJson)
    33 
    44 
    34 ).jvmSettings().jsSettings()
    45 ).jvmSettings().jsSettings()