Make jars with JDK/Android SDK annotations empty
- Compiler use them only for getting parameter names and we are OK to drop it - IDE plugin can use jdkAnnotations from ideaSDK
This commit is contained in:
@@ -600,11 +600,27 @@
|
||||
</target>
|
||||
|
||||
<target name="jdk-annotations">
|
||||
<copy file="dependencies/annotations/kotlin-jdk-annotations.jar" todir="${kotlin-home}/lib"/>
|
||||
<jar destfile="${kotlin-home}/lib/kotlin-jdk-annotations.jar">
|
||||
<manifest>
|
||||
<attribute name="Built-By" value="${manifest.impl.vendor}"/>
|
||||
|
||||
<attribute name="Implementation-Vendor" value="${manifest.impl.vendor}"/>
|
||||
<attribute name="Implementation-Title" value="${manifest.impl.title.kotlin.jdk.annotations}"/>
|
||||
<attribute name="Implementation-Version" value="${build.number}"/>
|
||||
</manifest>
|
||||
</jar>
|
||||
</target>
|
||||
|
||||
<target name="android-sdk-annotations">
|
||||
<copy file="dependencies/annotations/kotlin-android-sdk-annotations.jar" todir="${kotlin-home}/lib"/>
|
||||
<jar destfile="${kotlin-home}/lib/kotlin-android-sdk-annotations.jar">
|
||||
<manifest>
|
||||
<attribute name="Built-By" value="${manifest.impl.vendor}"/>
|
||||
|
||||
<attribute name="Implementation-Vendor" value="${manifest.impl.vendor}"/>
|
||||
<attribute name="Implementation-Title" value="${manifest.impl.title.kotlin.android.sdk.annotations}"/>
|
||||
<attribute name="Implementation-Version" value="${build.number}"/>
|
||||
</manifest>
|
||||
</jar>
|
||||
</target>
|
||||
|
||||
<macrodef name="new-kotlinc">
|
||||
|
||||
@@ -81,7 +81,7 @@ public class JdkAnnotationsValidityTest extends AbstractSdkAnnotationsValidityTe
|
||||
|
||||
@Override
|
||||
protected List<FqName> getClassesToValidate() throws IOException {
|
||||
return getAffectedClasses("jar://dependencies/annotations/kotlin-jdk-annotations.jar!/");
|
||||
return getAffectedClasses("jar://dist/kotlinc/lib/kotlin-jdk-annotations.jar!/");
|
||||
}
|
||||
|
||||
static List<FqName> getAffectedClasses(String rootUrl) {
|
||||
|
||||
@@ -327,7 +327,7 @@ public class JetTestUtils {
|
||||
|
||||
@NotNull
|
||||
public static File getJdkAnnotationsJar() {
|
||||
File jdkAnnotations = new File(getHomeDirectory(), "dependencies/annotations/kotlin-jdk-annotations.jar");
|
||||
File jdkAnnotations = new File(getHomeDirectory(), "dist/kotlinc/lib/kotlin-jdk-annotations.jar");
|
||||
if (!jdkAnnotations.exists()) {
|
||||
throw new RuntimeException("Kotlin JDK annotations jar not found; please run 'ant dist' to build it");
|
||||
}
|
||||
@@ -336,7 +336,7 @@ public class JetTestUtils {
|
||||
|
||||
@NotNull
|
||||
public static File getAndroidSdkAnnotationsJar() {
|
||||
File androidSdkAnnotations = new File(getHomeDirectory(), "dependencies/annotations/kotlin-android-sdk-annotations.jar");
|
||||
File androidSdkAnnotations = new File(getHomeDirectory(), "dist/kotlinc/lib/kotlin-android-sdk-annotations.jar");
|
||||
if (!androidSdkAnnotations.exists()) {
|
||||
throw new RuntimeException("Kotlin Android SDK annotations jar not found; please run 'ant dist' to build it");
|
||||
}
|
||||
|
||||
@@ -15,3 +15,6 @@ manifest.impl.title.kotlin.javascript.stdlib=Kotlin JavaScript StdLib
|
||||
manifest.spec.title.kotlin.javascript.lib=Kotlin JavaScript Lib
|
||||
|
||||
manifest.impl.title.kotlin.preloader=Kotlin Preloader
|
||||
|
||||
manifest.impl.title.kotlin.jdk.annotations=Kotlin Compiler JDK Annotations
|
||||
manifest.impl.title.kotlin.android.sdk.annotations=Kotlin Compiler Android SDK Annotations
|
||||
|
||||
@@ -859,15 +859,13 @@
|
||||
</sequential>
|
||||
</macrodef>
|
||||
|
||||
<target name="fetch-annotations">
|
||||
<mkdir dir="dependencies/annotations"/>
|
||||
<get
|
||||
src="https://teamcity.jetbrains.com/guestAuth/repository/download/Kotlin_KAnnotator_InferJdkAnnotations/shipWithKotlin.tcbuildtag/kotlin-jdk-annotations.jar"
|
||||
dest="dependencies/annotations/kotlin-jdk-annotations.jar" usetimestamp="true"/>
|
||||
<get
|
||||
src="https://teamcity.jetbrains.com/guestAuth/repository/download/Kotlin_KAnnotator_InferJdkAnnotations/shipWithKotlin.tcbuildtag/kotlin-android-sdk-annotations.jar"
|
||||
dest="dependencies/annotations/kotlin-android-sdk-annotations.jar" usetimestamp="true"/>
|
||||
</target>
|
||||
<!--
|
||||
Currently we use empty annotations.
|
||||
Future options are:
|
||||
- Drop the target when will be sure that custom annotations are unneeded
|
||||
- Fill the target with downloading correct annotations
|
||||
-->
|
||||
<target name="fetch-annotations"/>
|
||||
|
||||
<target name="get_android_studio">
|
||||
<taskdef resource="net/sf/antcontrib/antcontrib.properties" classpath="${basedir}/dependencies/ant-contrib.jar"/>
|
||||
|
||||
Reference in New Issue
Block a user