From 85dcc6569578dddfd74e2c4d3a97bec6b18d5cb0 Mon Sep 17 00:00:00 2001 From: Vyacheslav Gerasimov Date: Tue, 3 Dec 2019 17:20:40 +0300 Subject: [PATCH] Build: Use kotlin-build-gradle-plugin in build script of buildSrc --- buildSrc/build.gradle.kts | 38 +++++--------------------------------- 1 file changed, 5 insertions(+), 33 deletions(-) diff --git a/buildSrc/build.gradle.kts b/buildSrc/build.gradle.kts index cd57543d630..c287a971821 100644 --- a/buildSrc/build.gradle.kts +++ b/buildSrc/build.gradle.kts @@ -1,5 +1,3 @@ -import java.util.Properties - extra["versions.shadow"] = "4.0.3" extra["versions.native-platform"] = "0.14" @@ -12,8 +10,10 @@ buildscript { repositories { if (cacheRedirectorEnabled) { maven("https://cache-redirector.jetbrains.com/jcenter.bintray.com") + maven("https://cache-redirector.jetbrains.com/kotlin.bintray.com/kotlin-dependencies") } else { jcenter() + maven("https://kotlin.bintray.com/kotlin-dependencies") } buildSrcKotlinRepo?.let { @@ -22,6 +22,7 @@ buildscript { } dependencies { + classpath("org.jetbrains.kotlin:kotlin-build-gradle-plugin:0.0.3") classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:$buildSrcKotlinVersion") classpath("org.jetbrains.kotlin:kotlin-sam-with-receiver:$buildSrcKotlinVersion") } @@ -66,10 +67,8 @@ rootProject.apply { from(rootProject.file("../gradle/versions.gradle.kts")) } -val flags = LocalBuildProperties(project) - -val isTeamcityBuild = flags.isTeamcityBuild -val intellijUltimateEnabled by extra(flags.intellijUltimateEnabled) +val isTeamcityBuild = kotlinBuildProperties.isTeamcityBuild +val intellijUltimateEnabled by extra(kotlinBuildProperties.intellijUltimateEnabled) val intellijSeparateSdks by extra(project.getBooleanProperty("intellijSeparateSdks") ?: false) val verifyDependencyOutput by extra( getBooleanProperty("kotlin.build.dependency.output.verification") ?: isTeamcityBuild) @@ -129,30 +128,3 @@ allprojects { apply(from = "$rootDir/../gradle/cacheRedirector.gradle.kts") } } - -// TODO: hide these classes in special gradle plugin for kotlin-ultimate which will support local.properties -class LocalBuildPropertiesProvider(private val project: Project) { - private val localProperties: Properties = Properties() - - val rootProjectDir: File = project.rootProject.rootDir.parentFile - - init { - rootProjectDir.resolve("local.properties").takeIf { it.isFile }?.let { - it.reader().use(localProperties::load) - } - } - - fun getString(name: String): String? = project.findProperty(name)?.toString() ?: localProperties[name]?.toString() - - fun getBoolean(name: String): Boolean = getString(name)?.toBoolean() == true -} - -class LocalBuildProperties(project: Project) { - val propertiesProvider = LocalBuildPropertiesProvider(project) - - val isTeamcityBuild = propertiesProvider.getString("teamcity") != null || System.getenv("TEAMCITY_VERSION") != null - - val intellijUltimateEnabled = - (propertiesProvider.getBoolean("intellijUltimateEnabled") || isTeamcityBuild) - && propertiesProvider.rootProjectDir.resolve("kotlin-ultimate").exists() -}