[Gradle] NativeExternalDependenciesIT: Build dependencies file at execution time
^KT-34662 Verification Pending
This commit is contained in:
committed by
Space Team
parent
4264e49970
commit
9517667081
+2
-3
@@ -99,11 +99,10 @@ class NativeExternalDependenciesIT : BaseGradleIT() {
|
||||
)
|
||||
|
||||
build(
|
||||
"assemble",
|
||||
options = defaultBuildOptions().copy(dryRun = true)
|
||||
"buildExternalDependenciesFile"
|
||||
) {
|
||||
assertSuccessful()
|
||||
|
||||
assertTasksExecuted(":buildExternalDependenciesFile")
|
||||
val kotlinNativeTargetName = findKotlinNativeTargetName(output)
|
||||
assertNotNull(kotlinNativeTargetName)
|
||||
|
||||
|
||||
+11
-7
@@ -17,12 +17,16 @@ kotlin {
|
||||
}
|
||||
}
|
||||
|
||||
afterEvaluate {
|
||||
val externalDependenciesFile = Class.forName("org.jetbrains.kotlin.gradle.tasks.ExternalDependenciesBuilder")
|
||||
.getDeclaredMethod("buildExternalDependenciesFileForTests", Project::class.java).apply { isAccessible = true }
|
||||
.invoke(null, project)
|
||||
?.toString().orEmpty()
|
||||
val buildExternalDependenciesFile = tasks.register("buildExternalDependenciesFile") {
|
||||
doLast {
|
||||
val externalDependenciesFile = Class.forName("org.jetbrains.kotlin.gradle.tasks.ExternalDependenciesBuilder")
|
||||
.getDeclaredMethod("buildExternalDependenciesFileForTests", Project::class.java).apply { isAccessible = true }
|
||||
.invoke(null, project)
|
||||
?.toString().orEmpty()
|
||||
|
||||
println("for_test_kotlin_native_target=<SingleNativeTarget>")
|
||||
println("for_test_external_dependencies_file=$externalDependenciesFile")
|
||||
println("for_test_kotlin_native_target=<SingleNativeTarget>")
|
||||
println("for_test_external_dependencies_file=$externalDependenciesFile")
|
||||
}
|
||||
}
|
||||
|
||||
tasks.getByName("assemble").dependsOn(buildExternalDependenciesFile)
|
||||
+1
-1
@@ -34,7 +34,7 @@ abstract class AbstractKotlinSourceSet : InternalKotlinSourceSet {
|
||||
final override fun dependsOn(other: KotlinSourceSet) {
|
||||
if (other == this) return
|
||||
|
||||
assert(project.kotlinPluginLifecycle.stage <= KotlinPluginLifecycle.Stage.FinaliseRefinesEdges) {
|
||||
check(project.kotlinPluginLifecycle.stage <= KotlinPluginLifecycle.Stage.FinaliseRefinesEdges) {
|
||||
"Illegal 'dependsOn' call in stage '${project.kotlinPluginLifecycle.stage}'"
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user