simplified the kotlin-js-library source generation so we can selectively include some of the kotlin standard library for use in JS compilation

This commit is contained in:
James Strachan
2012-05-29 08:49:36 +01:00
parent 629f0e6f6b
commit 2898abb245
3 changed files with 41 additions and 4 deletions
+4
View File
@@ -64,8 +64,12 @@
<module>docs/website</module>
<module>examples/kotlin-java-example</module>
<!--
TODO temporary disabled until we can get the kotlin/dom code compiled as JS
<module>examples/js-example</module>
<module>examples/browser-example</module>
-->
</modules>
<dependencies>
+37 -1
View File
@@ -17,12 +17,48 @@
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.7</version>
<executions>
<execution>
<id>copy-sources</id>
<phase>process-sources</phase>
<configuration>
<target>
<delete dir="${basedir}/target/generated-js-library" failonerror="false" />
<mkdir dir="${basedir}/target/generated-js-library"/>
<copy todir="${basedir}/target/generated-js-library">
<fileset dir="${kotlin-js-lib-srcdir}"/>
</copy>
<copy todir="${basedir}/target/generated-js-library/kotlin">
<fileset dir="${basedir}/../../stdlib/src/kotlin/dom">
<include name="**/*.kt"/>
<exclude name="**/*JVM.kt"/>
</fileset>
<fileset dir="${basedir}/../../stdlib/src/kotlin/support">
<include name="**/*.kt"/>
<exclude name="**/*JVM.kt"/>
</fileset>
</copy>
<copy tofile="${basedir}/target/generated-js-library/kotlin-lib.js"
file="${kotlin-js-lib-srcdir}/../../js.translator/testFiles/kotlin_lib.js"/>
</target>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-maven-plugin</artifactId>
<version>${project.version}</version>
<configuration>
<librarySourceDir>${kotlin-js-lib-srcdir}</librarySourceDir>
<librarySourceDir>${basedir}/target/generated-js-library</librarySourceDir>
</configuration>
<executions>
<execution>
@@ -46,9 +46,6 @@ public class JSSourceJarMojo extends AbstractMojo {
FileUtils.copyDirectoryStructure(librarySourceDir, outputDir);
// lets copy the standard JS library source too
FileUtils.copyFile(new File(librarySourceDir, "../../js.translator/testFiles/kotlin_lib.js"), new File(outputDir, "kotlin-lib.js"));
// now lets generate the META-INF/services/org.jetbrains.kotlin.js.librarySource file
PrintWriter writer = new PrintWriter(new FileWriter(metaInfFile));
appendSourceFiles(writer, outputDir.getCanonicalPath(), outputDir);