blob: 0c5f1ae7118d4d0033e4416bbf297da68dbd5301 [file] [log] [blame]
description = 'Kotlin Standard Library JDK 8 extension'
apply plugin: 'kotlin'
configurePublishing(project)
configureSourcesJar()
configureJavadocJar()
dependencies {
api project(':kotlin-stdlib')
api project(':kotlin-stdlib-jdk7')
testApi project(':kotlin-test:kotlin-test-junit')
}
sourceSets {
main {
kotlin {
}
}
test {
kotlin {
}
}
java9 {
java {
srcDir 'java9'
}
}
moduleTest {
java {
srcDir 'moduleTest'
}
}
}
dependencies {
moduleTestApi project(':kotlin-stdlib')
moduleTestApi project(':kotlin-stdlib-jdk7')
moduleTestCompileOnly project
moduleTestApi project(':kotlin-test:kotlin-test-junit')
moduleTestApi "org.ow2.asm:asm:9.0"
}
jar {
manifestAttributes(manifest, project, 'Main', true)
from sourceSets.java9.output
}
sourcesJar {
from sourceSets.java9.allSource
}
artifacts {
archives sourcesJar
sources sourcesJar
}
compileKotlin {
kotlinOptions.moduleName = project.name
}
compileTestKotlin {
}
configureFrontendIr(project)
LibrariesCommon.configureJava9Compilation(project, 'kotlin.stdlib.jdk8')
tasks.named("compileModuleTestJava", JavaCompile) {
sourceCompatibility = JavaVersion.VERSION_1_9
targetCompatibility = JavaVersion.VERSION_1_9
}
compileModuleTestKotlin {
kotlinJavaToolchain.toolchain.use(JvmToolchain.getToolchainLauncherFor(project, JdkMajorVersion.JDK_9_0))
}
check.dependsOn(tasks.register("moduleInfoTest", Test) {test ->
test.dependsOn(moduleTestClasses)
test.group = "verification"
test.testClassesDirs = sourceSets.moduleTest.output.classesDirs
test.classpath = files(sourceSets.moduleTest.runtimeClasspath, tasks.jar)
test.javaLauncher.set(JvmToolchain.getToolchainLauncherFor(project, JdkMajorVersion.JDK_9_0))
doFirst {
test.systemProperty("stdlibJars", test.classpath.filter { it.name.contains('kotlin-stdlib') }.join(File.pathSeparator))
}
})