forked from Kotlin/kotlinx.coroutines
-
Notifications
You must be signed in to change notification settings - Fork 0
/
animalsniffer-conventions.gradle.kts
29 lines (26 loc) · 1.06 KB
/
animalsniffer-conventions.gradle.kts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
/*
* Copyright 2016-2021 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
*/
import ru.vyarus.gradle.plugin.animalsniffer.*
configure(subprojects) {
// Skip JDK 8 projects or unpublished ones
if (!shouldSniff()) return@configure
apply(plugin = "ru.vyarus.animalsniffer")
project.plugins.withType(JavaPlugin::class.java) {
configure<AnimalSnifferExtension> {
sourceSets = listOf((project.extensions.getByName("sourceSets") as SourceSetContainer).getByName("main"))
}
val signature: Configuration by configurations
dependencies {
signature("net.sf.androidscents.signature:android-api-level-14:4.0_r4@signature")
signature("org.codehaus.mojo.signature:java17:1.0@signature")
}
}
}
fun Project.shouldSniff(): Boolean {
// Skip all non-JVM projects
if (platformOf(project) != "jvm") return false
val name = project.name
if (name in unpublished || name in sourceless || name in androidNonCompatibleProjects) return false
return true
}