2022-10-24 11:30:50 +02:00
|
|
|
import org.gradle.api.internal.artifacts.configurations.Configurations
|
|
|
|
|
2022-09-20 15:40:53 +02:00
|
|
|
plugins {
|
|
|
|
id 'java-library'
|
|
|
|
id 'maven-publish'
|
2022-10-24 10:42:07 +02:00
|
|
|
id 'com.github.johnrengelman.shadow' version '7.1.2'
|
2022-09-20 15:40:53 +02:00
|
|
|
}
|
|
|
|
|
2022-10-21 15:19:32 +02:00
|
|
|
/*
|
2022-09-20 15:40:53 +02:00
|
|
|
configurations.archives.artifacts.with { archives ->
|
2022-10-21 15:19:32 +02:00
|
|
|
|
2022-09-20 15:40:53 +02:00
|
|
|
archives.each {
|
|
|
|
println(it.name)
|
|
|
|
}
|
|
|
|
}
|
2022-10-21 15:19:32 +02:00
|
|
|
*/
|
2022-09-20 15:40:53 +02:00
|
|
|
|
|
|
|
dependencies {
|
|
|
|
//Todo clean this
|
|
|
|
api platform(project(":cavis-common-platform"))
|
2022-10-14 12:32:41 +02:00
|
|
|
//api "org.bytedeco:javacpp:1.5.7" //for some reason we needed to apply version numbers here, they do not end up in POM otherwise
|
2022-09-20 15:40:53 +02:00
|
|
|
api "com.fasterxml.jackson.datatype:jackson-datatype-joda:2.10.5"
|
2022-10-12 11:01:57 +02:00
|
|
|
api 'org.slf4j:slf4j-simple:2.0.3'
|
|
|
|
api 'org.slf4j:slf4j-api:2.0.3'
|
2022-10-14 12:32:41 +02:00
|
|
|
//TODO for the two below.. either platform specific uber jars or a single big one with all platforms
|
|
|
|
api group: "org.bytedeco", name: "javacpp", version: "1.5.7", classifier: "linux-x86_64"
|
|
|
|
//api group: "org.bytedeco", name: "javacpp", version: "1.5.7"
|
2022-10-24 11:09:17 +02:00
|
|
|
//api group: 'net.brutex.cavis-native', name: 'cavis-native-lib', version: '1.0.0-SNAPSHOT', classifier: "linux-x86_64-avx2-cpu"
|
2022-10-14 12:32:41 +02:00
|
|
|
//api group: 'net.brutex.cavis-native', name: 'cavis-native-lib', version: '1.0.0-SNAPSHOT'
|
2022-09-20 15:40:53 +02:00
|
|
|
rootProject.getAllprojects().each { Project sproj ->
|
|
|
|
if(!sproj.name.equals(name) && !sproj.name.equals("cavis-common-platform")
|
|
|
|
&& !sproj.name.equals("Cavis")
|
|
|
|
&& !sproj.name.equals("cavis-datavec")
|
|
|
|
&& !sproj.name.equals("cavis-dnn")
|
|
|
|
&& !sproj.name.equals("cavis-native")
|
|
|
|
&& !sproj.name.equals("cavis-nd4j")
|
|
|
|
&& !sproj.name.equals("cavis-ui")
|
|
|
|
&& !sproj.name.equals("cavis-zoo")) {
|
|
|
|
//compileOnly project(""+sproj.path)
|
|
|
|
api sproj
|
2022-10-24 11:30:50 +02:00
|
|
|
sproj.configurations.each { Configuration c ->
|
|
|
|
logger.quiet(sproj.name + ":" + c.name)
|
|
|
|
}
|
|
|
|
|
2022-09-20 15:40:53 +02:00
|
|
|
if(! sproj.configurations.empty) {
|
|
|
|
//compileOnly project(sproj.getPath())
|
|
|
|
|
|
|
|
/*
|
|
|
|
sproj.configurations.each {Configuration conf ->
|
|
|
|
conf.dependencies.each {Dependency dep ->
|
|
|
|
compileOnly dep
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
*/
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
/*
|
|
|
|
tasks.getByName("jar") {
|
|
|
|
|
|
|
|
manifest {
|
|
|
|
attributes 'Main-Class': 'net.brutex.ai.Dummy'
|
|
|
|
}
|
|
|
|
zip64=true
|
|
|
|
duplicatesStrategy = DuplicatesStrategy.EXCLUDE
|
|
|
|
from {
|
|
|
|
configurations.compileClasspath.collect { File f ->
|
|
|
|
if (f.exists()) {
|
|
|
|
f.isDirectory() ? f : zipTree(f)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
configurations.runtimeClasspath.collect { File f ->
|
|
|
|
if (f.exists()) {
|
|
|
|
f.isDirectory() ? f : zipTree(f)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
/*
|
|
|
|
|
|
|
|
/*
|
|
|
|
artifacts {
|
|
|
|
archives customFatJar
|
|
|
|
}
|
|
|
|
*/
|
|
|
|
|
2022-10-24 10:47:43 +02:00
|
|
|
shadowJar {
|
|
|
|
zip64 true //need this to support jars with more than 65535 entries
|
|
|
|
}
|
|
|
|
|
2022-09-20 15:40:53 +02:00
|
|
|
publishing {
|
|
|
|
publications {
|
|
|
|
mavenJava(MavenPublication) {
|
|
|
|
// artifact customFatJar
|
|
|
|
// from components.java
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
2022-10-12 11:01:57 +02:00
|
|
|
|
|
|
|
|