Add kotlin.build.disable.werror to disable -Werror locally

This can be placed, for example, in `local.properties` to temporarily
disable `-Werror` in compiler/stdlib/plugin/test modules during
development.
This commit is contained in:
Alexander Udalov
2021-02-02 15:49:51 +01:00
parent 6a959fefd0
commit 496d857db1
4 changed files with 10 additions and 6 deletions
+1 -1
View File
@@ -472,7 +472,7 @@ allprojects {
}
}
if (!kotlinBuildProperties.isInJpsBuildIdeaSync && !kotlinBuildProperties.useFir) {
if (!kotlinBuildProperties.isInJpsBuildIdeaSync && !kotlinBuildProperties.useFir && !kotlinBuildProperties.disableWerror) {
// For compiler and stdlib, allWarningsAsErrors is configured in the corresponding "root" projects
// (compiler/build.gradle.kts and libraries/commonConfiguration.gradle).
val projectsWithWarningsAsErrors = listOf("core", "plugins").map { File(it).absoluteFile }
@@ -18,3 +18,5 @@ val KotlinBuildProperties.proguard: Boolean get() = postProcessing && getBoolean
val KotlinBuildProperties.jarCompression: Boolean get() = getBoolean("kotlin.build.jar.compression", isTeamcityBuild)
val KotlinBuildProperties.ignoreTestFailures: Boolean get() = getBoolean("ignoreTestFailures", isTeamcityBuild)
val KotlinBuildProperties.disableWerror: Boolean get() = getBoolean("kotlin.build.disable.werror", isTeamcityBuild)
+1 -1
View File
@@ -86,7 +86,7 @@ if (kotlinBuildProperties.isInJpsBuildIdeaSync) {
idea {
this.module.generatedSourceDirs.add(generationRoot)
}
} else if (!kotlinBuildProperties.useFir) {
} else if (!kotlinBuildProperties.useFir && !kotlinBuildProperties.disableWerror) {
allprojects {
tasks.withType<KotlinCompile<*>> {
if (path !in tasksWithWarnings) {
+6 -4
View File
@@ -37,10 +37,12 @@ ext.configureJvm6Project = { Project project ->
}
}
project.tasks.withType(org.jetbrains.kotlin.gradle.dsl.KotlinCompile.class) { task ->
if (!tasksWithWarnings.contains(task.path)) {
task.kotlinOptions {
allWarningsAsErrors = true
if (!BuildPropertiesExtKt.getDisableWerror(project.kotlinBuildProperties)) {
project.tasks.withType(org.jetbrains.kotlin.gradle.dsl.KotlinCompile.class) { task ->
if (!tasksWithWarnings.contains(task.path)) {
task.kotlinOptions {
allWarningsAsErrors = true
}
}
}
}