build.sbt
author Tomas Zeman <tzeman@volny.cz>
Thu, 14 Dec 2017 10:54:52 +0100
changeset 6 80e9b94097a4
parent 5 be060db270d2
child 13 5af9883f1111
permissions -rw-r--r--
build.sbt: removed buildTime BuildInfoKey

import scala.sys.process._

val scalaVersions = Seq("2.11.12", "2.12.4")

lazy val fatagsRoot = project.in(file(".")).
  aggregate(fatagsJS, fatagsJVM).
  settings(
    crossScalaVersions := scalaVersions,
    publish := {},
    publishLocal := {}
  )

lazy val buildSettings = Seq(
  organization := "net.tz",
  name := "faTags",
  scalaVersion := "2.12.4",
  crossScalaVersions := scalaVersions,
  scalacOptions ++= Seq(
    "-feature", "-deprecation", "-unchecked",
    "-language:implicitConversions", "-language:reflectiveCalls",
    "-language:postfixOps"
  ),
  javacOptions ++= Seq(
    "-encoding", "UTF-8", "-Xlint:deprecation", "-Xlint:unchecked"),
  licenses += ("Apache-2.0", url("http://opensource.org/licenses/Apache-2.0"))
)

lazy val fatags = crossProject.in(file(".")).
enablePlugins(BuildInfoPlugin).
settings(buildSettings:_*).
settings(
  libraryDependencies ++= Seq(
    "com.lihaoyi" %%% "scalatags" % "0.6.7"
  ),

  buildInfoKeys := Seq[BuildInfoKey](name, version, scalaVersion, sbtVersion,
    "scalaJSVersion" -> scalaJSVersion,
    BuildInfoKey.action("hgId") { "hg id -i".!!.trim },
    BuildInfoKey.action("hgTags") { "hg id -t".!!.trim }
  ),
  buildInfoPackage := "fatags",
  buildInfoOptions ++= Seq(BuildInfoOption.ToMap, BuildInfoOption.ToJson)

).jvmSettings().jsSettings()

lazy val fatagsJS = fatags.js
lazy val fatagsJVM = fatags.jvm

// vim: et ts=2 sw=2 syn=scala