diff --git a/sdks/android/Mentat/buildSrc/src/main/kotlin/com/nishtahir/GenerateToolchainsTask.kt b/sdks/android/Mentat/buildSrc/src/main/kotlin/com/nishtahir/GenerateToolchainsTask.kt index 63089eec..eed7fe78 100644 --- a/sdks/android/Mentat/buildSrc/src/main/kotlin/com/nishtahir/GenerateToolchainsTask.kt +++ b/sdks/android/Mentat/buildSrc/src/main/kotlin/com/nishtahir/GenerateToolchainsTask.kt @@ -1,5 +1,10 @@ package com.nishtahir +import java.io.File + +import org.slf4j.Logger +import org.slf4j.LoggerFactory + import com.android.build.gradle.* import org.gradle.api.DefaultTask import org.gradle.api.Project @@ -19,18 +24,22 @@ open class GenerateToolchainsTask : DefaultTask() { } inline fun congfigureTask(project: Project) { + val logger = LoggerFactory.getLogger("rust-android-gradle") + logger.info("An info log message logged using SLF4j 2") + val app = project.extensions[T::class] val minApi = app.defaultConfig.minSdkVersion.apiLevel val ndkPath = app.ndkDirectory - if (project.getToolchainDirectory().exists()) { - println("Existing toolchain found.") - return - } + val targets = project.extensions[CargoExtension::class].targets toolchains .filterNot { (arch) -> minApi < 21 && arch.endsWith("64") } + .filter { (arch) -> targets.contains(arch) } .forEach { (arch) -> + if (File(project.getToolchainDirectory(), arch).exists()) { + return; + } project.exec { spec -> spec.standardOutput = System.out spec.errorOutput = System.out @@ -41,5 +50,4 @@ open class GenerateToolchainsTask : DefaultTask() { } } } - -} \ No newline at end of file +}