build.sbt
author Tomas Zeman <tzeman@volny.cz>
Thu, 14 Dec 2017 11:31:41 +0100
changeset 1 7cb3f99aa46f
child 2 d75548c8d394
permissions -rw-r--r--
Project skeleton
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
     1
import scala.sys.process._
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
     2
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
     3
val scalaVersions = Seq("2.11.12", "2.12.4")
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
     4
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
     5
lazy val purecssRoot = project.in(file(".")).
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
     6
  aggregate(purecssJS, purecssJVM).
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
     7
  settings(
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
     8
    crossScalaVersions := scalaVersions,
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
     9
    publish := {},
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    10
    publishLocal := {}
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    11
  )
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    12
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    13
lazy val buildSettings = Seq(
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    14
  organization := "net.tz",
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    15
  name := "purecss",
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    16
  scalaVersion := "2.12.4",
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    17
  crossScalaVersions := scalaVersions,
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    18
  scalacOptions ++= Seq(
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    19
    "-feature", "-deprecation", "-unchecked",
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    20
    "-language:implicitConversions", "-language:reflectiveCalls",
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    21
    "-language:postfixOps"
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    22
  ),
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    23
  javacOptions ++= Seq(
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    24
    "-encoding", "UTF-8", "-Xlint:deprecation", "-Xlint:unchecked"),
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    25
  licenses += ("Apache-2.0", url("http://opensource.org/licenses/Apache-2.0"))
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    26
)
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    27
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    28
lazy val purecss = crossProject.in(file(".")).
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    29
enablePlugins(BuildInfoPlugin).
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    30
settings(buildSettings:_*).
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    31
settings(
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    32
  libraryDependencies ++= Seq(
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    33
    "com.lihaoyi" %%% "scalatags" % "0.6.7"
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    34
  ),
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    35
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    36
  buildInfoKeys := Seq[BuildInfoKey](name, version, scalaVersion, sbtVersion,
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    37
    "scalaJSVersion" -> scalaJSVersion,
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    38
    BuildInfoKey.action("hgId") { "hg id -i".!!.trim },
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    39
    BuildInfoKey.action("hgTags") { "hg id -t".!!.trim }
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    40
  ),
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    41
  buildInfoPackage := "purecss.build",
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    42
  buildInfoOptions ++= Seq(BuildInfoOption.ToMap, BuildInfoOption.ToJson)
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    43
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    44
).jvmSettings().jsSettings()
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    45
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    46
lazy val purecssJS = purecss.js
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    47
lazy val purecssJVM = purecss.jvm
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    48
7cb3f99aa46f Project skeleton
Tomas Zeman <tzeman@volny.cz>
parents:
diff changeset
    49
// vim: et ts=2 sw=2 syn=scala