6b19b8b9d0
^KT-63419 In Progress
79 lines
2.0 KiB
Groovy
79 lines
2.0 KiB
Groovy
description = ''
|
|
|
|
apply plugin: 'kotlin'
|
|
|
|
JvmToolchain.configureJvmToolchain(project, JdkMajorVersion.JDK_1_8)
|
|
|
|
def includeJava9 = BuildPropertiesExtKt.getIncludeJava9(project.kotlinBuildProperties)
|
|
|
|
sourceSets {
|
|
main {
|
|
java {
|
|
srcDir "${rootDir}/core/reflection.jvm/src"
|
|
}
|
|
resources {
|
|
srcDir("${rootDir}/core/reflection.jvm/resources")
|
|
}
|
|
}
|
|
|
|
if (includeJava9) {
|
|
java9
|
|
}
|
|
}
|
|
|
|
dependencies {
|
|
api RepoDependencies.kotlinStdlib(project)
|
|
compileOnly project(':core:descriptors')
|
|
compileOnly project(':core:descriptors.jvm')
|
|
compileOnly project(':core:deserialization')
|
|
compileOnly project(':core:descriptors.runtime')
|
|
compileOnly project(':core:util.runtime')
|
|
compileOnly "org.jetbrains:annotations:13.0"
|
|
}
|
|
|
|
if (includeJava9) {
|
|
configurations.register('java9PatchModule') {
|
|
extendsFrom(configurations.compileOnly)
|
|
exclude(group: 'org.jetbrains.kotlin', module: 'kotlin-stdlib')
|
|
canBeResolved = true
|
|
}
|
|
|
|
LibrariesCommon.configureJava9Compilation(
|
|
project,
|
|
'kotlin.reflect',
|
|
[sourceSets.main.output, configurations.java9PatchModule]
|
|
)
|
|
}
|
|
|
|
compileKotlin {
|
|
compilerOptions {
|
|
freeCompilerArgs = [
|
|
"-Xallow-kotlin-package",
|
|
"-Xno-optimized-callable-references",
|
|
"-Xno-kotlin-nothing-value-exception",
|
|
"-opt-in=kotlin.RequiresOptIn",
|
|
"-opt-in=org.jetbrains.kotlin.utils.addToStdlib.UnsafeCastFunction",
|
|
"-Xno-new-java-annotation-targets",
|
|
]
|
|
moduleName = "kotlin-reflection"
|
|
}
|
|
}
|
|
|
|
LibrariesCommon.configureFrontendIr(project)
|
|
|
|
jar {
|
|
LibrariesCommon.manifestAttributes(project, manifest, "internal")
|
|
}
|
|
|
|
tasks.register("java9Jar", Jar) {
|
|
archiveClassifier.set("java9")
|
|
if (includeJava9) {
|
|
from sourceSets.java9.output
|
|
}
|
|
}
|
|
|
|
artifacts {
|
|
archives java9Jar
|
|
runtimeElements java9Jar
|
|
}
|