plugins {
    id 'java-library'
    id 'maven-publish'
    id 'signing'
}

ext {
    buildTarget = rootProject.ext.buildTarget
}

dependencies {
    implementation platform(projects.cavisCommonPlatform)

    //implementation project(":cavis-native:cavis-native-blas")
    implementation projects.cavisNative.cavisNativeBlas

    implementation group: "org.bytedeco", name: "cuda"
    implementation group: "org.bytedeco", name: "cuda", classifier: buildTarget
    implementation group: "org.bytedeco", name: "cuda", classifier: "${buildTarget}-redist"

    implementation group: "org.bytedeco", name: "javacpp"
    implementation group: "org.bytedeco", name: "javacpp", classifier: buildTarget

    implementation(project(path: ":cavis-native:cavis-native-lib")) {
        capabilities {
            it.requireCapability(group: "net.brutex.cavis.cavis-native", name: "cavis-native-lib-cuda-support", version:project.version)
        }
    }
    implementation project(":cavis-native:cavis-native-common")
    implementation project(":cavis-dnn:cavis-dnn-api")
    implementation project(":cavis-dnn:cavis-dnn-common")

    implementation "com.google.guava:guava"
    implementation "com.google.flatbuffers:flatbuffers-java"
    implementation "org.slf4j:slf4j-api"
    implementation "org.apache.commons:commons-lang3"
}