54 lines
1.3 KiB
Python
54 lines
1.3 KiB
Python
import mill._
|
|
import scalalib._
|
|
import scalafmt._
|
|
import publish._
|
|
import $file.common
|
|
|
|
import $ivy.`de.tototec::de.tobiasroeser.mill.vcs.version::0.4.0`
|
|
import de.tobiasroeser.mill.vcs.version.VcsVersion
|
|
|
|
object v {
|
|
val scala = "2.13.10"
|
|
val utest = ivy"com.lihaoyi::utest:0.8.1"
|
|
}
|
|
|
|
object cde extends CDE
|
|
|
|
trait CDE
|
|
extends common.CDEModule
|
|
with ScalafmtModule
|
|
with CDEPublishModule {
|
|
override def scalaVersion = v.scala
|
|
}
|
|
|
|
object cdetest extends CDETest
|
|
|
|
trait CDETest
|
|
extends common.CDETestModule
|
|
with ScalafmtModule {
|
|
|
|
override def scalaVersion = v.scala
|
|
|
|
override def millSourcePath = cde.millSourcePath / "tests"
|
|
|
|
def cdeModule = cde
|
|
|
|
def utestIvy = v.utest
|
|
}
|
|
|
|
trait CDEPublishModule extends PublishModule {
|
|
def publishVersion = de.tobiasroeser.mill.vcs.version.VcsVersion.vcsState().format()
|
|
|
|
def pomSettings = PomSettings(
|
|
description = artifactName(),
|
|
organization = "org.chipsalliance",
|
|
url = "https://www.github.com/chipsalliance/cde",
|
|
licenses = Seq(License.`Apache-2.0`),
|
|
versionControl = VersionControl.github("chipsalliance", "cde"),
|
|
developers = Seq(
|
|
Developer("terpstra", "Wesley W. Terpstra", "https://github.com/terpstra")
|
|
)
|
|
)
|
|
// TODO: wait Chisel has mill-based release flow, let's copy&paste from it.
|
|
}
|