| <project name="Kotlin CI Steps" default="none"> |
| <import file="common.xml" optional="false"/> |
| <property name="kotlin-home" value="${output}/kotlinc"/> |
| |
| <property name="build.number" value="snapshot"/> |
| <property name="fail.on.plugin.verifier.error" value="true"/> |
| |
| <property name="version_substitute_dir" value="${basedir}/versions_temp/"/> |
| |
| <property name="artifact.output.path" value="${basedir}/dist/artifacts/ideaPlugin"/> |
| <property name="plugin.xml" value="idea/src/META-INF/plugin.xml"/> |
| <property name="plugin.xml.bk" value="${version_substitute_dir}/plugin.xml.bk"/> |
| <property name="plugin.xml.versioned" value="${plugin.xml}.versioned"/> |
| <property name="plugin.xml.version.number" value="${build.number}"/> |
| |
| <property name="compiler.version.java" value="core/util.runtime/src/org/jetbrains/kotlin/config/KotlinCompilerVersion.java"/> |
| <property name="compiler.version.java.bk" value="${version_substitute_dir}/KotlinCompilerVersion.java.bk"/> |
| <property name="compiler.version.java.versioned" value="${compiler.version.java}.versioned"/> |
| <property name="compiler.version.number" value="${build.number}"/> |
| <property name="compiler.ant.fork.jvmargs" value="-Xmx1024m"/> |
| |
| <property name="plugin.zip" value="${artifact.output.path}/kotlin-plugin-${build.number}.zip"/> |
| <property name="pluginArtifactDir" value="Kotlin" /> |
| |
| <macrodef name="echoprop"> |
| <attribute name="prop"/> |
| <sequential> |
| <echo>@{prop}=${@{prop}}</echo> |
| </sequential> |
| </macrodef> |
| |
| <echoprop prop="os.name"/> |
| <echoprop prop="os.version"/> |
| <echoprop prop="os.arch"/> |
| <echoprop prop="java.home"/> |
| <echoprop prop="java.vendor"/> |
| <echoprop prop="java.version"/> |
| <echoprop prop="user.name"/> |
| <echoprop prop="user.home"/> |
| <echoprop prop="user.dir"/> |
| |
| <macrodef name="run-gradle"> |
| <attribute name="tasks" /> |
| <attribute name="args" default="" /> |
| <sequential> |
| <java classname="org.gradle.wrapper.GradleWrapperMain" |
| fork="true" |
| dir="${basedir}" |
| failonerror="true" |
| timeout="4000000" |
| maxmemory="400m" |
| taskname="gradle"> |
| <classpath> |
| <pathelement location="${basedir}/gradle/wrapper/gradle-wrapper.jar"/> |
| </classpath> |
| <arg line="--no-daemon" /> |
| <arg line="@{tasks}" /> |
| <arg line="@{args}" /> |
| </java> |
| </sequential> |
| </macrodef> |
| |
| <target name="cleanupArtifacts"> |
| <run-gradle tasks="cleanupArtifacts" /> |
| </target> |
| |
| <target name="zip-compiler"> |
| <run-gradle tasks="zipCompiler" args="-PdeployVersion=${build.number}" /> |
| </target> |
| |
| <target name="zip-test-data"> |
| <run-gradle tasks="zipTestData" /> |
| </target> |
| |
| <target name="writeCompilerVersionToTemplateFile"> |
| <!-- empty, version is written in gradle build --> |
| </target> |
| |
| <target name="writePluginVersionToTemplateFile"> |
| <run-gradle tasks="writePluginVersion" args="-PpluginVersion=${plugin.xml.version.number}" /> |
| </target> |
| |
| <target name="zipArtifacts"> |
| <run-gradle tasks="zipPlugin" args="-PpluginArtifactDir=${pluginArtifactDir} -PpluginZipPath=${plugin.zip}"/> |
| </target> |
| |
| <macrodef name="print-statistic"> |
| <attribute name="key"/> |
| <attribute name="value"/> |
| |
| <sequential> |
| <echo message="##teamcity[buildStatisticValue key='@{key}' value='@{value}']"/> |
| </sequential> |
| </macrodef> |
| |
| <macrodef name="print-file-size-statistic"> |
| <attribute name="path"/> |
| <attribute name="file-name"/> |
| |
| <sequential> |
| <local name="file.size"/> |
| <length file="@{path}/@{file-name}" property="file.size"/> |
| <print-statistic key="@{file-name} size" value="${file.size}"/> |
| </sequential> |
| </macrodef> |
| |
| <target name="printStatistics"> |
| <print-file-size-statistic path="${kotlin-home}/lib" file-name="kotlin-stdlib.jar"/> |
| <print-file-size-statistic path="${kotlin-home}/lib" file-name="kotlin-reflect.jar"/> |
| |
| <print-file-size-statistic path="${kotlin-home}/lib" file-name="kotlin-stdlib-js.jar"/> |
| <print-file-size-statistic path="${js.stdlib.output.dir}" file-name="kotlin.js"/> |
| <print-file-size-statistic path="${js.stdlib.output.dir}" file-name="kotlin-test.js"/> |
| <print-file-size-statistic path="${basedir}/libraries/stdlib/js/build/classes/main" file-name="kotlin.meta.js"/> |
| </target> |
| |
| <target name="none"> |
| <fail message="Either specify pre_build or post_build"/> |
| </target> |
| |
| </project> |