diff --git a/gradle/verification-metadata.xml b/gradle/verification-metadata.xml
index 2cd4f5d72d6..33c2e994c2e 100644
--- a/gradle/verification-metadata.xml
+++ b/gradle/verification-metadata.xml
@@ -9481,6 +9481,26 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/wasm/wasm.ir/build.gradle.kts b/wasm/wasm.ir/build.gradle.kts
index 06b5c57887f..bc8009ada72 100644
--- a/wasm/wasm.ir/build.gradle.kts
+++ b/wasm/wasm.ir/build.gradle.kts
@@ -1,8 +1,52 @@
+import java.net.URI
+
plugins {
kotlin("jvm")
id("jps-compatible")
kotlin("plugin.serialization")
- id("de.undercouch.download")
+}
+
+repositories {
+ ivy {
+ url = URI("https://github.com/webassembly/testsuite/zipball/")
+ patternLayout {
+ artifact("[revision]")
+ }
+ metadataSources { artifact() }
+ content { includeModule("webassembly", "testsuite") }
+ }
+
+ ivy {
+ url = URI("https://github.com/webassembly/wabt/releases/download/")
+ patternLayout {
+ artifact("[revision]/[artifact]-[revision]-[classifier].[ext]")
+ }
+ metadataSources { artifact() }
+ content { includeModule("webassembly", "wabt") }
+ }
+}
+
+val wabtDir = File(buildDir, "wabt")
+val wabtVersion = "1.0.19"
+val testSuiteRevision = "18f8340"
+val testSuiteDir = File(buildDir, "testsuite")
+
+val gradleOs = org.gradle.internal.os.OperatingSystem.current()
+val wabtOS = when {
+ gradleOs.isMacOsX -> "macos"
+ gradleOs.isWindows -> "windows"
+ gradleOs.isLinux -> "ubuntu"
+ else -> error("Unsupported OS: $gradleOs")
+}
+
+val wabt by configurations.creating {
+ isCanBeResolved = true
+ isCanBeConsumed = false
+}
+
+val testSuite by configurations.creating {
+ isCanBeResolved = true
+ isCanBeConsumed = false
}
dependencies {
@@ -15,45 +59,28 @@ dependencies {
testCompileOnly(project(":kotlin-test:kotlin-test-junit"))
testImplementation(projectTests(":compiler:tests-common"))
testImplementation(commonDependency("org.jetbrains.kotlinx", "kotlinx-serialization-json"))
-}
-
-val testSuiteRevision = "18f8340"
-val testSuiteDir = File(buildDir, "testsuite")
-val testSuiteZip = File(testSuiteDir, testSuiteRevision + ".zip")
-
-val downloadTestSuite by task {
- src("https://github.com/WebAssembly/testsuite/zipball/$testSuiteRevision")
- dest(testSuiteZip)
- overwrite(false)
+ testSuite("webassembly:testsuite:$testSuiteRevision@zip")
+ wabt("webassembly:wabt:$wabtVersion:$wabtOS@tar.gz")
}
val unzipTestSuite by task {
- dependsOn(downloadTestSuite)
- from(zipTree(downloadTestSuite.get().dest))
+ dependsOn(testSuite)
+
+ from(provider {
+ zipTree(testSuite.singleFile)
+ })
+
into(testSuiteDir)
}
-val wabtDir = File(buildDir, "wabt")
-val wabtVersion = "1.0.19"
-
-val downloadWabt by task {
- val gradleOs = org.gradle.internal.os.OperatingSystem.current()
- val os = when {
- gradleOs.isMacOsX -> "macos"
- gradleOs.isWindows -> "windows"
- gradleOs.isLinux -> "ubuntu"
- else -> error("Unsupported OS: $gradleOs")
- }
- val fileName = "wabt-$wabtVersion-$os.tar.gz"
- src("https://github.com/WebAssembly/wabt/releases/download/$wabtVersion/$fileName")
- dest(File(wabtDir, fileName))
- overwrite(false)
-}
-
val unzipWabt by task {
- dependsOn(downloadWabt)
- from(tarTree(resources.gzip(downloadWabt.get().dest)))
+ dependsOn(wabt)
+
+ from(provider {
+ tarTree(resources.gzip(wabt.singleFile))
+ })
+
into(wabtDir)
}