diff options
author | Li Haoyi <haoyi.sg@gmail.com> | 2017-11-26 09:20:14 -0800 |
---|---|---|
committer | Li Haoyi <haoyi.sg@gmail.com> | 2017-11-26 09:20:14 -0800 |
commit | 39f38d4fd354ec70d4dcaf52a8804c8143b1c3f0 (patch) | |
tree | 24edca9345f5b46e436d7bfd0d1e14714abf73b2 /build.sc | |
parent | 4306f94c080f48bb8e4333af06ea8bc158beb219 (diff) | |
download | mill-39f38d4fd354ec70d4dcaf52a8804c8143b1c3f0.tar.gz mill-39f38d4fd354ec70d4dcaf52a8804c8143b1c3f0.tar.bz2 mill-39f38d4fd354ec70d4dcaf52a8804c8143b1c3f0.zip |
Refactor `build.sc` to pull out common `ScalaModule` code into a separate trait
Also workaround a few scala-reflect bugs in `Discovered` and `Router` that were making this not-work
Diffstat (limited to 'build.sc')
-rwxr-xr-x | build.sc | 26 |
1 files changed, 12 insertions, 14 deletions
@@ -2,9 +2,18 @@ import ammonite.ops._ import mill._ import mill.scalaplugin._ - -object Core extends ScalaModule { +trait MillModule extends ScalaModule{ outer => def scalaVersion = "2.12.4" + override def sources = basePath/'src/'main/'scala + object test extends this.Tests{ + def basePath = outer.basePath + override def ivyDeps = Seq(Dep("com.lihaoyi", "utest", "0.6.0")) + override def sources = basePath/'src/'test/'scala + def testFramework = "mill.UTestFramework" + } +} + +object Core extends MillModule { override def compileIvyDeps = Seq( Dep.Java("org.scala-lang", "scala-reflect", scalaVersion()) ) @@ -19,7 +28,6 @@ object Core extends ScalaModule { ) def basePath = pwd / 'core - override def sources = pwd/'core/'src/'main/'scala val cross = for(jarLabel <- mill.define.Cross("jarA", "jarB", "jarC")) @@ -35,22 +43,12 @@ object Core extends ScalaModule { PathRef(dest) } } - - object test extends this.Tests{ - def basePath = pwd / 'core - override def ivyDeps = Seq(Dep("com.lihaoyi", "utest", "0.6.0")) - override def sources = pwd/'core/'src/'test/'scala - def testFramework = "mill.UTestFramework" - } } +object ScalaPlugin extends MillModule { -object ScalaPlugin extends ScalaModule { - def scalaVersion = "2.12.4" override def projectDeps = Seq(Core) def basePath = pwd / 'scalaplugin - override def sources = pwd/'scalaplugin/'src/'main/'scala - override def prependShellScript = "#!/usr/bin/env sh\n" + "exec java -cp \"$0\" mill.scalaplugin.Main \"$@\"" |