Build: Add JPS artifact for dist

This commit is contained in:
Vyacheslav Gerasimov
2019-05-15 16:43:11 +03:00
parent 86ad25ba55
commit 72be81ba46
4 changed files with 83 additions and 71 deletions
+56 -3
View File
@@ -74,6 +74,8 @@ if (kotlinBuildProperties.isInJpsBuildIdeaSync) {
kotlinJpsPluginJar()
ideaPlugin()
dist()
}
compiler {
@@ -210,6 +212,57 @@ fun NamedDomainObjectContainer<TopLevelArtifact>.kotlinJpsPluginJar() {
}
}
fun NamedDomainObjectContainer<TopLevelArtifact>.dist() {
val distLibrariesProject = project(":kotlin-stdlib:jps-build")
val stdlibMinimal by distLibrariesProject.configurations
val commonStdlib by distLibrariesProject.configurations
val commonStdlibSources by distLibrariesProject.configurations
val stdlibJS by distLibrariesProject.configurations
val stdlibSources by distLibrariesProject.configurations
create("dist") {
file("$rootDir/build/build.txt")
// Use output-file-name when fixed https://github.com/JetBrains/gradle-idea-ext-plugin/issues/63
archive("kotlin-stdlib-minimal-for-test.jar") {
extractedDirectory(stdlibMinimal.singleFile)
}
directory("artifacts") {
directory("ideaPlugin") {
artifact("ideaPlugin")
}
}
directory("common") {
// Use output-file-name when fixed https://github.com/JetBrains/gradle-idea-ext-plugin/issues/63
archive("kotlin-stdlib-common.jar") {
extractedDirectory(commonStdlib.singleFile)
}
// Use output-file-name when fixed https://github.com/JetBrains/gradle-idea-ext-plugin/issues/63
archive("kotlin-stdlib-common-sources.jar") {
extractedDirectory(commonStdlibSources.singleFile)
}
}
directory("js") {
extractedDirectory(stdlibJS.singleFile)
}
directory("kotlinc") {
artifact("kotlinc")
}
directory("maven") {
// Use output-file-name when fixed https://github.com/JetBrains/gradle-idea-ext-plugin/issues/63
archive("kotlin-stdlib-sources.jar") {
extractedDirectory(stdlibSources.singleFile)
}
}
}
}
fun NamedDomainObjectContainer<TopLevelArtifact>.ideaPlugin() {
val ideaPluginProject = project(":prepare:idea-plugin")
(ideaPluginProject as ProjectInternal).evaluate()
@@ -225,10 +278,10 @@ fun NamedDomainObjectContainer<TopLevelArtifact>.ideaPlugin() {
directory("lib") {
artifact("kotlin-plugin.jar")
directoryFromConfiguration(libraries)
jarsFromConfiguration(libraries)
directory("jps") {
directoryFromConfiguration(jpsPlugin)
jarsFromConfiguration(jpsPlugin)
}
}
}
@@ -276,7 +329,7 @@ fun RecursiveArtifact.jarContentsFromEmbeddedConfiguration(project: Project) {
}
}
fun RecursiveArtifact.directoryFromConfiguration(configuration: Configuration) {
fun RecursiveArtifact.jarsFromConfiguration(configuration: Configuration) {
val resolvedArtifacts = configuration
.resolvedConfiguration
.resolvedArtifacts