build.sc
changeset 4 1a1347e8c5be
parent 3 48479e4b89d4
child 5 de7c56ce0654
equal deleted inserted replaced
3:48479e4b89d4 4:1a1347e8c5be
    53     "-Xfuture",                          // Turn on future language features.
    53     "-Xfuture",                          // Turn on future language features.
    54     "-target:jvm-1.8",
    54     "-target:jvm-1.8",
    55   )}
    55   )}
    56 }
    56 }
    57 
    57 
    58 object jvm extends Common {
    58 object base extends Common {
    59   override def scalacPluginIvyDeps: Target[Loose.Agg[Dep]] = super.scalacPluginIvyDeps() ++ Agg(
    59   override def scalacPluginIvyDeps: Target[Loose.Agg[Dep]] = super.scalacPluginIvyDeps() ++ Agg(
    60     ivy"org.scalamacros:::paradise:2.1.0"
    60     ivy"org.scalamacros:::paradise:2.1.0"
    61   )
    61   )
    62 
    62 
    63   override def ivyDeps = Agg(
    63   override def ivyDeps = Agg(
    70     ivy"org.webjars:bootstrap:4.1.3",
    70     ivy"org.webjars:bootstrap:4.1.3",
    71     ivy"org.webjars:font-awesome:5.5.0"
    71     ivy"org.webjars:font-awesome:5.5.0"
    72   )
    72   )
    73 
    73 
    74   override def scalacOptions = T{super.scalacOptions.map(_ :+
    74   override def scalacOptions = T{super.scalacOptions.map(_ :+
    75     "-Xmacro-settings:conf.output.dir=jvm/resources"
    75     "-Xmacro-settings:conf.output.dir=base/resources"
    76   )}
    76   )}
    77 
    77 
    78   override def mainClass = Some("sqwl.cms.Server")
    78 }
    79 
    79 
       
    80 object content extends Common {
       
    81   override def moduleDeps = Seq(base)
       
    82   override def sources : Sources = T.sources{ millSourcePath / up / 'example / 'src }
       
    83   override def ivyDeps = Agg(
       
    84     ivy"com.beachape::enumeratum:1.5.13"
       
    85   )
       
    86 }
       
    87 
       
    88 object app extends Common {
       
    89   override def moduleDeps = Seq(content)
       
    90   override def mainClass = Some("sqwl.cms.Main")
       
    91 
       
    92   override def generatedSources: Target[Seq[PathRef]] = T{
       
    93     val dir = T.ctx().dest
       
    94     write(dir / "main.scala",
       
    95       """
       
    96         | package sqwl.cms
       
    97         | object Main extends Server {
       
    98         |   override def content: iContent = Content
       
    99         | }
       
   100       """.stripMargin)
       
   101     Seq(PathRef(dir))
       
   102   }
    80 }
   103 }
    81 
   104 
    82 object js extends Common with ScalaJSModule {
   105 object js extends Common with ScalaJSModule {
    83   def scalaJSVersion: Target[String] = scalaJsVer
   106   def scalaJSVersion: Target[String] = scalaJsVer
    84 }
   107 }