build.sc
changeset 27 c4534300acdc
parent 26 6ba55bf93ab7
child 28 5fe465ab9150
equal deleted inserted replaced
26:6ba55bf93ab7 27:c4534300acdc
     1 import ammonite.ops._
     1 import ammonite.ops._
     2 import mill._
     2 import mill._
       
     3 import mill.api.Loose
     3 import mill.define.{Input, Sources, Target}
     4 import mill.define.{Input, Sources, Target}
     4 import mill.scalajslib._
     5 import mill.scalajslib._
     5 import mill.scalalib._
     6 import mill.scalalib._
     6 import mill.scalalib.publish._
     7 import mill.scalalib.publish._
     7 import mill.util.Loose
     8 import $ivy.`de.tototec::de.tobiasroeser.mill.publishM2:0.1.0`
       
     9 import de.tobiasroeser.mill.publishM2._
     8 
    10 
     9 import scala.language.postfixOps
    11 import scala.language.postfixOps
    10 
    12 
    11 object V {
    13 object V {
    12   val fatags = "0.5-SNAPSHOT"
    14   val fatags = "0.5-SNAPSHOT"
    27     case Nil => Nil
    29     case Nil => Nil
    28   }
    30   }
    29   inner(s toList) mkString ""
    31   inner(s toList) mkString ""
    30 }
    32 }
    31 
    33 
    32 trait Common extends CrossSbtModule with PublishModule {
    34 trait Common extends CrossSbtModule with PublishM2Module {
    33 
    35 
    34   override def artifactName = "fatags"
    36   override def artifactName = "fatags"
    35 
    37 
    36   def publishVersion: Target[String] = V.fatags
    38   def publishVersion: Target[String] = V.fatags
    37 
    39 
    38   def pomSettings = PomSettings(
    40   def pomSettings = PomSettings(
    39     description = "FontAwesome Scala DSL (tags)",
    41     description = "FontAwesome Scala DSL (tags)",
    40     organization = "net.tz",
    42     organization = "net.tz",
    41     url = "https://bitbucket.org/tzeman/fatags",
    43     url = "https://hg.functionals.cz/fatags",
    42     licenses = Seq(License.`Apache-2.0`),
    44     licenses = Seq(License.`Apache-2.0`),
    43     versionControl = VersionControl(developerConnection = Some(
    45     versionControl = VersionControl(developerConnection = Some(
    44       "ssh://hg@bitbucket.org/tzeman/fatags")),
    46       "ssh://tzeman@hg.functionals.cz/repos/public/fatags")),
    45     developers = Seq(
    47     developers = Seq(
    46       Developer("tzeman", "Tomas Zeman", "")
    48       Developer("tzeman", "Tomas Zeman", "")
    47     )
    49     )
    48   )
    50   )
    49 
    51 
   140   js(V.scala212).publishLocal()()
   142   js(V.scala212).publishLocal()()
   141   jvm(V.scala211).publishLocal()()
   143   jvm(V.scala211).publishLocal()()
   142   js(V.scala211).publishLocal()()
   144   js(V.scala211).publishLocal()()
   143 }
   145 }
   144 
   146 
       
   147 def publishM2Local(p: os.Path): define.Command[Unit] = T.command{
       
   148   jvm(V.scala212).publishM2Local(p)()
       
   149   js(V.scala212).publishM2Local(p)()
       
   150   jvm(V.scala211).publishM2Local(p)()
       
   151   js(V.scala211).publishM2Local(p)()
       
   152   ()
       
   153 }
       
   154 
   145 object example extends ScalaModule with ScalaJSModule {
   155 object example extends ScalaModule with ScalaJSModule {
   146   override def scalaVersion: Target[String] = T{V.scala212}
   156   override def scalaVersion: Target[String] = T{V.scala212}
   147   override def scalaJSVersion: Target[String] = V.scalaJs
   157   override def scalaJSVersion: Target[String] = V.scalaJs
   148 
   158 
   149 
   159