diff options
author | Li Haoyi <haoyi.sg@gmail.com> | 2018-03-18 10:35:57 -0700 |
---|---|---|
committer | Li Haoyi <haoyi.sg@gmail.com> | 2018-03-18 10:35:57 -0700 |
commit | 3715c7bfb88de8daa86cd663d22057ec776cedcc (patch) | |
tree | 0a85083bcdb27867110e33c05c15ac13ae2865a9 /scalajslib/jsbridges | |
parent | 350a3115afca590bee6311dbed4a657fe9cca375 (diff) | |
parent | 0063444b422e317b9ee68c789f9b3224dcf28825 (diff) | |
download | mill-3715c7bfb88de8daa86cd663d22057ec776cedcc.tar.gz mill-3715c7bfb88de8daa86cd663d22057ec776cedcc.tar.bz2 mill-3715c7bfb88de8daa86cd663d22057ec776cedcc.zip |
Merge branch 'master' of github.com:lihaoyi/mill
Diffstat (limited to 'scalajslib/jsbridges')
-rw-r--r-- | scalajslib/jsbridges/0.6/src/mill/scalajslib/bridge/ScalaJSBridge.scala | 14 | ||||
-rw-r--r-- | scalajslib/jsbridges/1.0/src/mill/scalajslib/bridge/ScalaJSBridge.scala | 14 |
2 files changed, 22 insertions, 6 deletions
diff --git a/scalajslib/jsbridges/0.6/src/mill/scalajslib/bridge/ScalaJSBridge.scala b/scalajslib/jsbridges/0.6/src/mill/scalajslib/bridge/ScalaJSBridge.scala index 5f7bd38b..80f84c3d 100644 --- a/scalajslib/jsbridges/0.6/src/mill/scalajslib/bridge/ScalaJSBridge.scala +++ b/scalajslib/jsbridges/0.6/src/mill/scalajslib/bridge/ScalaJSBridge.scala @@ -7,19 +7,27 @@ import java.io.File import org.scalajs.core.tools.io.IRFileCache.IRContainer import org.scalajs.core.tools.io._ import org.scalajs.core.tools.jsdep.ResolvedJSDependency -import org.scalajs.core.tools.linker.{ModuleInitializer, StandardLinker, Semantics} +import org.scalajs.core.tools.linker.{ModuleInitializer, StandardLinker, Semantics, ModuleKind => ScalaJSModuleKind} import org.scalajs.core.tools.logging.ScalaConsoleLogger import org.scalajs.jsenv._ import org.scalajs.jsenv.nodejs._ import org.scalajs.testadapter.TestAdapter class ScalaJSBridge extends mill.scalajslib.ScalaJSBridge { - def link(sources: Array[File], libraries: Array[File], dest: File, main: String, fullOpt: Boolean): Unit = { + def link(sources: Array[File], libraries: Array[File], dest: File, main: String, fullOpt: Boolean, moduleKind: ModuleKind): Unit = { val semantics = fullOpt match { case true => Semantics.Defaults.optimized case false => Semantics.Defaults } - val config = StandardLinker.Config().withOptimizer(fullOpt).withClosureCompilerIfAvailable(fullOpt).withSemantics(semantics) + val scalaJSModuleKind = moduleKind match { + case ModuleKind.NoModule => ScalaJSModuleKind.NoModule + case ModuleKind.CommonJSModule => ScalaJSModuleKind.CommonJSModule + } + val config = StandardLinker.Config() + .withOptimizer(fullOpt) + .withClosureCompilerIfAvailable(fullOpt) + .withSemantics(semantics) + .withModuleKind(scalaJSModuleKind) val linker = StandardLinker(config) val sourceSJSIRs = sources.map(new FileVirtualScalaJSIRFile(_)) val jars = libraries.map(jar => IRContainer.Jar(new FileVirtualBinaryFile(jar) with VirtualJarFile)) diff --git a/scalajslib/jsbridges/1.0/src/mill/scalajslib/bridge/ScalaJSBridge.scala b/scalajslib/jsbridges/1.0/src/mill/scalajslib/bridge/ScalaJSBridge.scala index 53986f1b..796fe212 100644 --- a/scalajslib/jsbridges/1.0/src/mill/scalajslib/bridge/ScalaJSBridge.scala +++ b/scalajslib/jsbridges/1.0/src/mill/scalajslib/bridge/ScalaJSBridge.scala @@ -5,19 +5,27 @@ package bridge import java.io.File import org.scalajs.core.tools.io._ -import org.scalajs.core.tools.linker.{ModuleInitializer, StandardLinker, Semantics} +import org.scalajs.core.tools.linker.{ModuleInitializer, StandardLinker, Semantics, ModuleKind => ScalaJSModuleKind} import org.scalajs.core.tools.logging.ScalaConsoleLogger import org.scalajs.jsenv.ConsoleJSConsole import org.scalajs.jsenv.nodejs._ import org.scalajs.testadapter.TestAdapter class ScalaJSBridge extends mill.scalajslib.ScalaJSBridge { - def link(sources: Array[File], libraries: Array[File], dest: File, main: String, fullOpt: Boolean): Unit = { + def link(sources: Array[File], libraries: Array[File], dest: File, main: String, fullOpt: Boolean, moduleKind: ModuleKind): Unit = { val semantics = fullOpt match { case true => Semantics.Defaults.optimized case false => Semantics.Defaults } - val config = StandardLinker.Config().withOptimizer(fullOpt).withClosureCompilerIfAvailable(fullOpt).withSemantics(semantics) + val scalaJSModuleKind = moduleKind match { + case ModuleKind.NoModule => ScalaJSModuleKind.NoModule + case ModuleKind.CommonJSModule => ScalaJSModuleKind.CommonJSModule + } + val config = StandardLinker.Config() + .withOptimizer(fullOpt) + .withClosureCompilerIfAvailable(fullOpt) + .withSemantics(semantics) + .withModuleKind(scalaJSModuleKind) val linker = StandardLinker(config) val cache = new IRFileCache().newCache val sourceIRs = sources.map(FileVirtualScalaJSIRFile) |