build.sbt
author Tomas Zeman <tzeman@volny.cz>
Fri, 19 Jan 2018 10:44:10 +0100
changeset 9 cc835ebc03f4
parent 6 80e9b94097a4
child 13 5af9883f1111
permissions -rw-r--r--
fatags: 0.2-SNAPSHOT -> 0.2

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