141 d |
142 d |
142 } |
143 } |
143 } |
144 } |
144 |
145 |
145 class JvmModule(val crossScalaVersion: String) extends Common |
146 class JvmModule(val crossScalaVersion: String) extends Common |
146 class JsModule(val crossScalaVersion: String) extends ScalaJSModule |
147 class JsModule(val crossScalaVersion: String, crossJSVersion: String) |
147 with Common { |
148 extends ScalaJSModule with Common { |
148 override def scalaJSVersion: Target[String] = V.scalaJs |
149 |
|
150 override def scalaJSVersion: Target[String] = crossJSVersion |
|
151 |
|
152 override def millSourcePath = super.millSourcePath / os.up |
149 } |
153 } |
150 |
154 |
151 object jvm extends Cross[JvmModule](V.scala211, V.scala212, V.scala213) |
155 object jvm extends Cross[JvmModule](V.scala211, V.scala212, V.scala213) |
152 object js extends Cross[JsModule](V.scala211, V.scala212, V.scala213) |
156 object js extends Cross[JsModule]( |
|
157 V.scala211 -> V.scalaJs06, |
|
158 V.scala212 -> V.scalaJs06, |
|
159 V.scala212 -> V.scalaJs, |
|
160 V.scala213 -> V.scalaJs06, |
|
161 V.scala213 -> V.scalaJs |
|
162 ) |
153 |
163 |
154 def compileAll(): Command[Unit] = T.command{ |
164 def compileAll(): Command[Unit] = T.command{ |
155 jvm(V.scala213).compile() |
165 jvm(V.scala213).compile() |
156 js(V.scala213).compile() |
166 js(V.scala213, V.scalaJs).compile() |
|
167 js(V.scala213, V.scalaJs06).compile() |
157 jvm(V.scala212).compile() |
168 jvm(V.scala212).compile() |
158 js(V.scala212).compile() |
169 js(V.scala212, V.scalaJs).compile() |
|
170 js(V.scala212, V.scalaJs06).compile() |
159 jvm(V.scala211).compile() |
171 jvm(V.scala211).compile() |
160 js(V.scala211).compile() |
172 js(V.scala211, V.scalaJs06).compile() |
161 () |
173 () |
162 } |
174 } |
163 |
175 |
164 def publishLocal(): Command[Unit] = T.command{ |
176 def publishLocal(): Command[Unit] = T.command{ |
165 jvm(V.scala213).publishLocal()() |
177 jvm(V.scala213).publishLocal()() |
166 js(V.scala213).publishLocal()() |
178 js(V.scala213, V.scalaJs).publishLocal()() |
|
179 js(V.scala213, V.scalaJs06).publishLocal()() |
167 jvm(V.scala212).publishLocal()() |
180 jvm(V.scala212).publishLocal()() |
168 js(V.scala212).publishLocal()() |
181 js(V.scala212, V.scalaJs).publishLocal()() |
|
182 js(V.scala212, V.scalaJs06).publishLocal()() |
169 jvm(V.scala211).publishLocal()() |
183 jvm(V.scala211).publishLocal()() |
170 js(V.scala211).publishLocal()() |
184 js(V.scala211, V.scalaJs06).publishLocal()() |
171 } |
185 } |
172 |
186 |
173 def publishM2Local(p: os.Path): Command[Unit] = T.command{ |
187 def publishM2Local(p: os.Path): Command[Unit] = T.command{ |
174 jvm(V.scala213).publishM2Local(p.toString)() |
188 jvm(V.scala213).publishM2Local(p.toString)() |
175 js(V.scala213).publishM2Local(p.toString)() |
189 js(V.scala213, V.scalaJs).publishM2Local(p.toString)() |
|
190 js(V.scala213, V.scalaJs06).publishM2Local(p.toString)() |
176 jvm(V.scala212).publishM2Local(p.toString)() |
191 jvm(V.scala212).publishM2Local(p.toString)() |
177 js(V.scala212).publishM2Local(p.toString)() |
192 js(V.scala212, V.scalaJs).publishM2Local(p.toString)() |
|
193 js(V.scala212, V.scalaJs06).publishM2Local(p.toString)() |
178 jvm(V.scala211).publishM2Local(p.toString)() |
194 jvm(V.scala211).publishM2Local(p.toString)() |
179 js(V.scala211).publishM2Local(p.toString)() |
195 js(V.scala211, V.scalaJs06).publishM2Local(p.toString)() |
180 () |
196 () |
181 } |
197 } |
182 |
198 |
183 object example extends ScalaModule with ScalaJSModule { |
199 object example extends ScalaModule with ScalaJSModule { |
184 override def scalaVersion: Target[String] = T{V.scala213} |
200 override def scalaVersion: Target[String] = T{V.scala213} |
185 override def scalaJSVersion: Target[String] = V.scalaJs |
201 override def scalaJSVersion: Target[String] = V.scalaJs |
186 |
202 |
187 override def scalacOptions: T[Seq[String]] = T{compilerOptions} |
203 override def scalacOptions: T[Seq[String]] = T{compilerOptions} |
188 |
204 |
189 override def moduleDeps: Seq[PublishModule] = Seq(js(V.scala213)) |
205 override def moduleDeps: Seq[PublishModule] = Seq(js(V.scala213, V.scalaJs)) |
190 |
206 |
191 } |
207 } |
192 |
208 |
193 // vim: et ts=2 sw=2 syn=scala |
209 // vim: et ts=2 sw=2 syn=scala |