-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathbuild.sbt
75 lines (59 loc) · 2.55 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
75
name := "ermine-legacy"
organization := "com.clarifi"
version := "0.1"
scalaVersion := "2.11.2"
crossScalaVersions := Seq("2.10.4", "2.11.2")
description := "Legacy Ermine Type Checker and Interpreter in Scala."
licenses += ("BSD Simplified", url("https://github.com/ermine-language/ermine-legacy/blob/master/LICENSE"))
seq(bintraySettings:_*)
bintray.Keys.bintrayOrganization in bintray.Keys.bintray := Some("ermine")
publishMavenStyle := true
scalacOptions ++=
Seq("-encoding", "UTF-8", "-Yrecursion", "50", "-deprecation",
"-unchecked", "-Xlint", "-feature",
"-language:implicitConversions", "-language:higherKinds",
"-language:existentials", "-language:postfixOps")
javacOptions ++=
Seq("-Xlint:cast", "-Xlint:deprecation", "-Xlint:empty",
"-Xlint:finally", "-Xlint:fallthrough", "-Xlint:overrides")
parallelExecution := true
javacOptions += "-Xlint"
scalacOptions ~= (so => (so filterNot Set("-unchecked", "-Xlint"))
++ Seq("-Ywarn-nullary-override", "-Ywarn-inaccessible"))
// We're still using scala-iterv; we know, so stop telling us.
logManager in Compile ~= {coreLogMgr =>
filterLogs(coreLogMgr){coreLog =>
val suppWarnTails = Seq("in package scalaz is deprecated: Scalaz 6 compatibility. Migrate to scalaz.iteratee.",
// -unchecked always on in 2.10.2 compiler I think
"is unchecked since it is eliminated by erasure")
val suppress = new java.util.concurrent.atomic.AtomicInteger(0)
def zero(n:Int) = suppress.compareAndSet(n, 0)
(level, message) => {
suppress.decrementAndGet() match {
case n if suppWarnTails exists message.endsWith =>
suppress.compareAndSet(n, 2)
case 1 if level == Level.Warn => ()
case 0 if level == Level.Warn && (message endsWith "^") => ()
case n if coreLog atLevel level =>
zero(n)
coreLog.log(level, message)
case n => zero(n)
}
}
}
}
libraryDependencies ++= Seq(
"org.scalaz" %% "scalaz-core" % "7.0.6",
"org.scalaz" %% "scalaz-concurrent" % "7.0.6",
"org.scalaz" %% "scalaz-effect" % "7.0.6",
"org.scalaz" %% "scalaz-iterv" % "7.0.6",
"org.scalaz" %% "scalaz-scalacheck-binding" % "7.0.6" % "test",
"machines" %% "machines" % "1.1",
"jline" % "jline" % "2.11",
"log4j" % "log4j" % "1.2.14",
"net.sourceforge.jtds" % "jtds" % "1.3.1",
"org.xerial" % "sqlite-jdbc" % "3.7.2",
"mysql" % "mysql-connector-java" % "5.1.6",
"postgresql" % "postgresql" % "9.1-901-1.jdbc4",
"org.scalacheck" %% "scalacheck" % "1.11.3" % "test"
)