From 46884bec84fb2b5362e21dab3fdd50b76be99a3b Mon Sep 17 00:00:00 2001 From: Ilya Chernikov Date: Sun, 10 Sep 2017 22:25:59 +0200 Subject: [PATCH] Add missing artifact, fix some deps and publishing --- buildSrc/src/main/kotlin/artifacts.kt | 2 + compiler/compiler-runner/build.gradle.kts | 16 ++++ .../daemon/daemon-client/build.gradle.kts | 5 ++ .../daemon/daemon-common/build.gradle.kts | 1 + gradle/project-schema.json | 81 ++++++++++--------- idea/build.gradle.kts | 2 +- jps-plugin/build.gradle.kts | 2 +- .../tools/kotlin-gradle-plugin/build.gradle | 2 +- .../build.gradle.kts | 7 +- .../build.gradle.kts | 2 - prepare/jps-plugin/build.gradle.kts | 2 +- settings.gradle | 3 +- 12 files changed, 78 insertions(+), 47 deletions(-) diff --git a/buildSrc/src/main/kotlin/artifacts.kt b/buildSrc/src/main/kotlin/artifacts.kt index 079ebaf13f7..efe629e28e0 100644 --- a/buildSrc/src/main/kotlin/artifacts.kt +++ b/buildSrc/src/main/kotlin/artifacts.kt @@ -15,6 +15,8 @@ import org.gradle.api.tasks.javadoc.Javadoc import org.gradle.jvm.tasks.Jar import java.io.File +// can be used now only for the non-published projects, due to conflicts in the "archives" config +// TODO: fix the problem above fun Project.classesDirsArtifact(): FileCollection { val classesDirsCfg = configurations.getOrCreate("classes-dirs") diff --git a/compiler/compiler-runner/build.gradle.kts b/compiler/compiler-runner/build.gradle.kts index db553fc3991..e2039149861 100644 --- a/compiler/compiler-runner/build.gradle.kts +++ b/compiler/compiler-runner/build.gradle.kts @@ -1,9 +1,14 @@ +description = "Compiler runner + daemon client" + apply { plugin("kotlin") } jvmTarget = "1.6" +val packIntoJar by configurations.creating + dependencies { + val compile by configurations compile(project(":kotlin-build-common")) compile(project(":compiler:cli-common")) compile(project(":kotlin-preloader")) @@ -11,6 +16,7 @@ dependencies { compile(project(":compiler:daemon-common")) compile(project(":kotlin-daemon-client")) compile(project(":compiler:util")) + packIntoJar(projectClasses(":compiler:daemon-common")) } sourceSets { @@ -18,3 +24,13 @@ sourceSets { "test" {} } +evaluationDependsOn(":kotlin-daemon-client") + +runtimeJar { + from(packIntoJar) + from(project(":kotlin-daemon-client").the().sourceSets["main"].output.classesDirs) +} +sourcesJar() +javadocJar() + +publish() diff --git a/compiler/daemon/daemon-client/build.gradle.kts b/compiler/daemon/daemon-client/build.gradle.kts index 19ce7ac0993..764cc945b0b 100644 --- a/compiler/daemon/daemon-client/build.gradle.kts +++ b/compiler/daemon/daemon-client/build.gradle.kts @@ -7,11 +7,14 @@ jvmTarget = "1.6" val nativePlatformUberjar = preloadedDeps("native-platform-uberjar") +val packIntoJar by configurations.creating + dependencies { compileOnly(project(":compiler:util")) compileOnly(project(":compiler:cli-common")) compileOnly(project(":compiler:daemon-common")) compileOnly(nativePlatformUberjar) + packIntoJar(projectClasses(":compiler:daemon-common")) } sourceSets { @@ -23,8 +26,10 @@ runtimeJar { nativePlatformUberjar.forEach { from(zipTree(it)) } + from(packIntoJar) } sourcesJar() +javadocJar() dist() diff --git a/compiler/daemon/daemon-common/build.gradle.kts b/compiler/daemon/daemon-common/build.gradle.kts index 6b102ef2040..c3a7492f444 100644 --- a/compiler/daemon/daemon-common/build.gradle.kts +++ b/compiler/daemon/daemon-common/build.gradle.kts @@ -16,3 +16,4 @@ sourceSets { "test" {} } +classesDirsArtifact() diff --git a/gradle/project-schema.json b/gradle/project-schema.json index 66b294048ac..6c0fa2aa3af 100644 --- a/gradle/project-schema.json +++ b/gradle/project-schema.json @@ -856,7 +856,7 @@ "signing": "org.gradle.plugins.signing.SigningExtension" } }, - ":kotlin-daemon-client": { + ":kotlin-compiler-runner": { "conventions": { "base": "org.gradle.api.plugins.BasePluginConvention", "java": "org.gradle.api.plugins.JavaPluginConvention", @@ -870,10 +870,53 @@ "compileClasspath", "compileOnly", "default", + "implementation", + "kapt", + "kaptTest", + "packIntoJar", + "runtime", + "runtimeClasspath", + "runtimeElements", + "runtimeJar", + "runtimeOnly", + "signatures", + "testCompile", + "testCompileClasspath", + "testCompileOnly", + "testImplementation", + "testRuntime", + "testRuntimeClasspath", + "testRuntimeOnly" + ], + "extensions": { + "ext": "org.gradle.api.plugins.ExtraPropertiesExtension", + "kotlin": "org.jetbrains.kotlin.gradle.dsl.KotlinProjectExtension", + "kapt": "org.jetbrains.kotlin.gradle.plugin.KaptExtension", + "defaultArtifacts": "org.gradle.api.internal.plugins.DefaultArtifactPublicationSet", + "reporting": "org.gradle.api.reporting.ReportingExtension", + "signing": "org.gradle.plugins.signing.SigningExtension" + } + }, + ":kotlin-daemon-client": { + "conventions": { + "base": "org.gradle.api.plugins.BasePluginConvention", + "java": "org.gradle.api.plugins.JavaPluginConvention", + "maven": "org.gradle.api.plugins.MavenPluginConvention" + }, + "configurations": [ + "apiElements", + "archives", + "buildVersion", + "classes-dirs", + "compile", + "compileClasspath", + "compileOnly", + "default", "distJar", "implementation", "kapt", "kaptTest", + "packIntoJar", "runtime", "runtimeClasspath", "runtimeElements", @@ -2061,41 +2104,6 @@ "reporting": "org.gradle.api.reporting.ReportingExtension" } }, - ":compiler:compiler-runner": { - "conventions": { - "base": "org.gradle.api.plugins.BasePluginConvention", - "java": "org.gradle.api.plugins.JavaPluginConvention" - }, - "configurations": [ - "apiElements", - "archives", - "compile", - "compileClasspath", - "compileOnly", - "default", - "implementation", - "kapt", - "kaptTest", - "runtime", - "runtimeClasspath", - "runtimeElements", - "runtimeOnly", - "testCompile", - "testCompileClasspath", - "testCompileOnly", - "testImplementation", - "testRuntime", - "testRuntimeClasspath", - "testRuntimeOnly" - ], - "extensions": { - "ext": "org.gradle.api.plugins.ExtraPropertiesExtension", - "kotlin": "org.jetbrains.kotlin.gradle.dsl.KotlinProjectExtension", - "kapt": "org.jetbrains.kotlin.gradle.plugin.KaptExtension", - "defaultArtifacts": "org.gradle.api.internal.plugins.DefaultArtifactPublicationSet", - "reporting": "org.gradle.api.reporting.ReportingExtension" - } - }, ":compiler:conditional-preprocessor": { "conventions": { "base": "org.gradle.api.plugins.BasePluginConvention", @@ -2210,6 +2218,7 @@ "configurations": [ "apiElements", "archives", + "classes-dirs", "compile", "compileClasspath", "compileOnly", diff --git a/idea/build.gradle.kts b/idea/build.gradle.kts index 8d436d9cc8a..3ff25d67d91 100644 --- a/idea/build.gradle.kts +++ b/idea/build.gradle.kts @@ -16,7 +16,7 @@ dependencies { compile(project(":js:js.serializer")) compile(project(":compiler:light-classes")) compile(project(":compiler:util")) - compile(project(":compiler:compiler-runner")) + compile(project(":kotlin-compiler-runner")) compile(project(":compiler:plugin-api")) compile(project(":eval4j")) compile(project(":j2k")) diff --git a/jps-plugin/build.gradle.kts b/jps-plugin/build.gradle.kts index 9261fc7ebc4..e2a5d4f553d 100644 --- a/jps-plugin/build.gradle.kts +++ b/jps-plugin/build.gradle.kts @@ -5,7 +5,7 @@ val compilerModules: Array by rootProject.extra dependencies { compile(project(":kotlin-build-common")) compile(project(":core")) - compile(project(":compiler:compiler-runner")) + compile(project(":kotlin-compiler-runner")) compile(project(":compiler:daemon-common")) compile(projectDist(":kotlin-daemon-client")) compile(project(":compiler:frontend.java")) diff --git a/libraries/tools/kotlin-gradle-plugin/build.gradle b/libraries/tools/kotlin-gradle-plugin/build.gradle index 65739cc2c5a..91e8e4bef53 100644 --- a/libraries/tools/kotlin-gradle-plugin/build.gradle +++ b/libraries/tools/kotlin-gradle-plugin/build.gradle @@ -33,7 +33,7 @@ dependencies { compile project(':android-extensions-compiler') // compile project(path: ':compiler', configuration: 'embeddableCompilerJar') compile project(':kotlin-build-common') - compile project(':compiler:compiler-runner') + compile project(':kotlin-compiler-runner') compile project(":compiler:incremental-compilation-impl") compile project(":compiler:daemon") compile project(path: ':kotlin-annotation-processing-gradle', configuration: "runtimeJar") diff --git a/plugins/android-extensions/android-extensions-compiler/build.gradle.kts b/plugins/android-extensions/android-extensions-compiler/build.gradle.kts index 59f02cf1ff3..9e63ba40189 100644 --- a/plugins/android-extensions/android-extensions-compiler/build.gradle.kts +++ b/plugins/android-extensions/android-extensions-compiler/build.gradle.kts @@ -3,8 +3,6 @@ description = "Kotlin Android Extensions Compiler" apply { plugin("kotlin") } -val packIntoJar by configurations.creating - dependencies { compile(ideaSdkCoreDeps("intellij-core")) compile(project(":compiler:util")) @@ -13,7 +11,6 @@ dependencies { compile(project(":compiler:frontend.java")) compile(project(":compiler:backend")) compileOnly(project(":kotlin-android-extensions-runtime")) - packIntoJar(projectClasses(":kotlin-android-extensions-runtime")) } sourceSets { @@ -21,8 +18,10 @@ sourceSets { "test" {} } +evaluationDependsOn(":kotlin-android-extensions-runtime") + runtimeJar { - from(packIntoJar) + from(project(":kotlin-android-extensions-runtime").the().sourceSets["main"].output.classesDirs) } dist() diff --git a/plugins/android-extensions/android-extensions-runtime/build.gradle.kts b/plugins/android-extensions/android-extensions-runtime/build.gradle.kts index 18b9f2df32a..ffa46bf4d8f 100644 --- a/plugins/android-extensions/android-extensions-runtime/build.gradle.kts +++ b/plugins/android-extensions/android-extensions-runtime/build.gradle.kts @@ -31,6 +31,4 @@ sourceSets { runtimeJar () -classesDirsArtifact() - publish() diff --git a/prepare/jps-plugin/build.gradle.kts b/prepare/jps-plugin/build.gradle.kts index fca4584cd1c..222dbb2bfc3 100644 --- a/prepare/jps-plugin/build.gradle.kts +++ b/prepare/jps-plugin/build.gradle.kts @@ -20,7 +20,7 @@ plugins { val projectsToShadow = listOf( ":kotlin-build-common", ":compiler:cli-common", - ":compiler:compiler-runner", + ":kotlin-compiler-runner", ":kotlin-daemon-client", ":compiler:daemon-common", ":core", diff --git a/settings.gradle b/settings.gradle index 5229fc03015..1f61490e952 100644 --- a/settings.gradle +++ b/settings.gradle @@ -26,7 +26,7 @@ include ":kotlin-build-common", ":compiler:frontend", ":compiler:frontend.java", ":compiler:frontend.script", - ":compiler:compiler-runner", + ":kotlin-compiler-runner", ":compiler:cli-common", ":compiler:ir.tree", ":compiler:ir.psi2ir", @@ -160,6 +160,7 @@ project(':compiler:cli-common').projectDir = "$rootDir/compiler/cli/cli-common" project(':kotlin-runner').projectDir = "$rootDir/compiler/cli/cli-runner" as File project(':compiler:daemon-common').projectDir = "$rootDir/compiler/daemon/daemon-common" as File project(':kotlin-daemon-client').projectDir = "$rootDir/compiler/daemon/daemon-client" as File +project(':kotlin-compiler-runner').projectDir = "$rootDir/compiler/compiler-runner" as File project(':kotlin-ant').projectDir = "$rootDir/ant" as File project(':compiler:ir.tree').projectDir = "$rootDir/compiler/ir/ir.tree" as File project(':compiler:ir.psi2ir').projectDir = "$rootDir/compiler/ir/ir.psi2ir" as File