generate kjsm-files for js-stdlib and during compilation via maven or gradle

This commit is contained in:
Michael Nedzelsky
2015-11-23 16:12:47 +03:00
parent c80c33efb6
commit ac8dd1262c
3 changed files with 21 additions and 7 deletions
+11 -7
View File
@@ -294,6 +294,7 @@
<arg value="@{output}"/>
<arg value="-no-stdlib"/>
<arg value="-meta-info"/>
<arg value="-kjsm"/>
<arg line="-main noCall"/>
</java>
</sequential>
@@ -308,13 +309,13 @@
<kotlin-pp src="libraries/stdlib/src" output="${intermediate-sources}/stdlib/js" profile="JS" />
<new-kotlin2js output="${output}/${compiled.builtins.js}">
<new-kotlin2js output="${output}/js/${compiled.builtins.js}">
<src>
<fileset refid="kotlin.builtin.files"/>
</src>
</new-kotlin2js>
<new-kotlin2js output="${output}/${compiled.stdlib.js}">
<new-kotlin2js output="${output}/js/${compiled.stdlib.js}">
<src>
<resources refid="js.lib.files"/>
</src>
@@ -334,7 +335,7 @@
prettyprint="true"
languagein="ECMASCRIPT5_STRICT"
warning="${warningLevel}"
output="${output}/kotlin.js">
output="${output}/js/kotlin.js">
<sources dir="${stdlib.js.dir}">
<file name="kotlin_lib_ecma5.js"/>
@@ -343,11 +344,11 @@
<file name="long.js"/>
</sources>
<sources dir="${output}">
<sources dir="${output}/js">
<file name="${compiled.builtins.js}"/>
</sources>
<sources dir="${output}">
<sources dir="${output}/js">
<file name="${compiled.stdlib.js}"/>
</sources>
@@ -362,8 +363,11 @@
<jar jarfile="${kotlin-home}/lib/kotlin-jslib.jar" duplicate="fail">
<zipfileset file="${kotlin-home}/build.txt" prefix="META-INF"/>
<zipfileset file="${output}/kotlin.js" prefix=""/>
<zipfileset file="${output}/${compiled.stdlib.meta.js}" prefix=""/>
<zipfileset dir="${output}/js" prefix="">
<include name="kotlin.js"/>
<include name="${compiled.stdlib.meta.js}"/>
<include name="stdlib/**"/>
</zipfileset>
<manifest>
<attribute name="Built-By" value="${manifest.impl.vendor}"/>
@@ -249,6 +249,8 @@ public open class Kotlin2JsCompile() : AbstractKotlinCompile<K2JSCompilerArgumen
override fun createBlankArgs(): K2JSCompilerArguments {
val args = K2JSCompilerArguments()
args.libraryFiles = arrayOf<String>() // defaults to null
args.metaInfo = true
args.kjsm = true
return args
}
@@ -280,6 +282,7 @@ public open class Kotlin2JsCompile() : AbstractKotlinCompile<K2JSCompilerArgumen
args.outputPrefix = kotlinOptions.outputPrefix
args.outputPostfix = kotlinOptions.outputPostfix
args.metaInfo = kotlinOptions.metaInfo
args.kjsm = kotlinOptions.kjsm
val kotlinJsLibsFromDependencies =
getProject().getConfigurations().getByName("compile")
@@ -62,6 +62,12 @@ public class K2JSCompilerMojo extends KotlinCompileMojoBase<K2JSCompilerArgument
@Parameter(defaultValue = "true")
private boolean metaInfo;
/**
* Flag enables or disables kjsm generation
*/
@Parameter(defaultValue = "true")
private boolean kjsm;
/**
* Flags enables or disable source map generation
*/
@@ -73,6 +79,7 @@ public class K2JSCompilerMojo extends KotlinCompileMojoBase<K2JSCompilerArgument
arguments.outputFile = outputFile;
arguments.noStdlib = true;
arguments.metaInfo = metaInfo;
arguments.kjsm = kjsm;
List<String> libraries = getKotlinJavascriptLibraryFiles();
getLog().debug("libraryFiles: " + libraries);