-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathbuild.sbt
74 lines (63 loc) · 3.12 KB
/
build.sbt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
import sbt.Keys.publishArtifact
import sbt.file
scalacOptions in ThisBuild ++= Seq(
"-target:jvm-1.8",
"-encoding", "UTF-8",
// "-deprecation", // warning and location for usages of deprecated APIs
"-feature", // warning and location for usages of features that should be imported explicitly
"-unchecked", // additional warnings where generated code depends on assumptions
// "-Xlint", // recommended additional warnings
// "-Ywarn-adapted-args", // Warn if an argument list is modified to match the receiver
// "-Ywarn-inaccessible",
"-Ywarn-dead-code",
// "-Xfatal-warnings",
"-language:reflectiveCalls",
"-language:experimental.macros",
"-Ydelambdafy:method"
)
inThisBuild(List(
licenses := Seq(("Apache-2.0", url("http://www.apache.org/licenses/LICENSE-2.0.txt"))),
homepage := Some(url(s"https://github.com/kwark/play-refined")),
scmInfo := Some(ScmInfo(url(s"https://github.com/kwark/play-refined"), "scm:git:[email protected]:kwark/play-refined.git")),
developers := List(Developer("kwark", "Peter Mortier", "", url("https://github.com/kwark"))),
organization := "be.venneborg",
publishArtifact in Test := false,
parallelExecution := false,
crossScalaVersions := List("2.12.16", "2.13.8")
))
//set source dir to source dir in commonPlayModule
val sourceScalaDir = (baseDirectory in ThisBuild)( b => Seq( b / "play-refined/src/main/scala"))
val sourceTestDir = (baseDirectory in ThisBuild)( b => Seq( b / "play-refined/src/test/scala" ))
val resourceTestDir = (baseDirectory in ThisBuild)( b => Seq( b / "play-refined/src/test/resources" ))
import Dependencies._
lazy val `play28-refined` = project
.settings(
name := "play28-refined",
organization := "be.venneborg"
)
.settings(unmanagedSourceDirectories in Compile ++= sourceScalaDir.value)
.settings(unmanagedSourceDirectories in Test ++= sourceTestDir.value)
.settings(unmanagedResourceDirectories in Test ++= resourceTestDir.value )
.settings(libraryDependencies := play28Dependencies ++ testDependencies)
.settings(crossScalaVersions := (crossScalaVersions in ThisBuild).value)
lazy val `play27-refined` = project
.settings(
name := "play27-refined",
organization := "be.venneborg"
)
.settings(unmanagedSourceDirectories in Compile ++= sourceScalaDir.value)
.settings(unmanagedSourceDirectories in Test ++= sourceTestDir.value)
.settings(unmanagedResourceDirectories in Test ++= resourceTestDir.value )
.settings(libraryDependencies := play27Dependencies ++ testDependencies)
.settings(crossScalaVersions := (crossScalaVersions in ThisBuild).value)
lazy val example = (project in file("example"))
.enablePlugins(PlayWeb)
.settings()
.settings(publishArtifact := false)
.settings(crossScalaVersions := (crossScalaVersions in ThisBuild).value.filter(_ startsWith "2.12"))
.settings(scalaVersion := (crossScalaVersions in ThisBuild).value.find(_ startsWith "2.12").get)
.dependsOn(`play27-refined` % "test->test;compile->test,compile")
lazy val `play-refined` = (project in file("."))
.settings(publishArtifact := false)
.settings(crossScalaVersions := Seq.empty)
.aggregate(`play28-refined`, `play27-refined`, example)