-
Notifications
You must be signed in to change notification settings - Fork 648
Expand file tree
/
Copy pathpackage.mill
More file actions
49 lines (40 loc) · 1.14 KB
/
package.mill
File metadata and controls
49 lines (40 loc) · 1.14 KB
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
package build.firrtl
import mill._
import mill.scalalib._
import mill.scalalib.scalafmt._
import mill.api.Cross
import build._
object `package` extends Module {
// https://github.com/com-lihaoyi/mill/issues/3693
object cross extends Cross[Firrtl](v.scalaCrossVersions)
}
trait Firrtl extends ChiselCrossModule with HasScala2MacroAnno with HasCommonOptions with ScalafmtModule {
def moduleDir = super.moduleDir / os.up
override def scalacOptions = Task {
super.scalacOptions() ++ {
if (v.isScala3(crossScalaVersion)) Seq.empty[String]
else
Seq(
"-language:reflectiveCalls",
"-language:existentials",
"-language:implicitConversions",
"-Yrangepos", // required by SemanticDB compiler plugin
"-Xsource-features:infer-override"
)
}
}
val commonDeps = Seq(
v.scopt,
v.commonText,
v.osLib,
v.json4s
)
def mvnDeps = if (v.isScala3(crossScalaVersion)) {
commonDeps
} else {
commonDeps ++ Seq(v.dataclass)
}
object test extends SbtTests with TestModule.ScalaTest with ScalafmtModule {
def mvnDeps = Seq(v.scalatest, v.scalacheck)
}
}