build.sbt
author Tomas Zeman <tzeman@volny.cz>
Fri, 19 Jan 2018 11:24:51 +0100
changeset 12 5ac95dda12d1
parent 11 631d2cad56f5
permissions -rw-r--r--
purecss: 0.1-SNAPSHOT -> 0.1

import scala.sys.process._

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

lazy val purecss = project.in(file(".")).
  aggregate(purecssJS, purecssJVM).
  settings(
    crossScalaVersions := scalaVersions,
    publish := {},
    publishLocal := {},
    bintrayVcsUrl := Some("https://bitbucket.org/tzeman/purecss")
  )

lazy val buildSettings = Seq(
  organization := "net.tz",
  name := "purecss",
  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")),
  bintrayVcsUrl := Some("https://bitbucket.org/tzeman/purecss")
)

lazy val purecssProject = 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 := "purecss.build",
  buildInfoOptions ++= Seq(BuildInfoOption.ToMap, BuildInfoOption.ToJson)

).jvmSettings(
  initialCommands in console := """
     import scalatags.Text.all._
     import purecss.text.PureCss._
  """
).jsSettings()

lazy val purecssJS = purecssProject.js
lazy val purecssJVM = purecssProject.jvm

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