2023-09-17 19:20:06 -04:00
|
|
|
ext {
|
|
|
|
|
nativeName = 'xrpVendordep'
|
2025-11-07 20:00:38 -05:00
|
|
|
devMain = 'org.wpilib.xrp.DevMain'
|
2023-09-17 19:20:06 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
evaluationDependsOn(":ntcore")
|
|
|
|
|
evaluationDependsOn(":cscore")
|
|
|
|
|
evaluationDependsOn(":hal")
|
|
|
|
|
evaluationDependsOn(":wpimath")
|
|
|
|
|
evaluationDependsOn(":wpilibc")
|
|
|
|
|
evaluationDependsOn(":cameraserver")
|
|
|
|
|
evaluationDependsOn(":wpilibj")
|
|
|
|
|
|
|
|
|
|
apply from: "${rootDir}/shared/javacpp/setupBuild.gradle"
|
|
|
|
|
|
|
|
|
|
dependencies {
|
|
|
|
|
implementation project(":wpiutil")
|
|
|
|
|
implementation project(":wpinet")
|
|
|
|
|
implementation project(":ntcore")
|
|
|
|
|
implementation project(":cscore")
|
|
|
|
|
implementation project(":hal")
|
|
|
|
|
implementation project(":wpimath")
|
|
|
|
|
implementation project(":wpilibj")
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
nativeUtils.exportsConfigs {
|
|
|
|
|
// Main library is just default empty. This will export everything
|
|
|
|
|
xrpVendordep {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
model {
|
|
|
|
|
components {}
|
|
|
|
|
binaries {
|
|
|
|
|
all {
|
|
|
|
|
if (!it.buildable || !(it instanceof NativeBinarySpec)) {
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
lib project: ":wpilibc", library: "wpilibc", linkage: "shared"
|
|
|
|
|
project(":ntcore").addNtcoreDependency(it, "shared")
|
|
|
|
|
project(":hal").addHalDependency(it, "shared")
|
|
|
|
|
lib project: ':wpiutil', library: 'wpiutil', linkage: 'shared'
|
|
|
|
|
lib project: ':wpinet', library: 'wpinet', linkage: 'shared'
|
|
|
|
|
lib project: ':wpimath', library: 'wpimath', linkage: 'shared'
|
|
|
|
|
|
|
|
|
|
if (it.component.name == "${nativeName}Dev") {
|
|
|
|
|
project(":ntcore").addNtcoreJniDependency(it)
|
|
|
|
|
lib project: ":wpinet", library: "wpinetJNIShared", linkage: "shared"
|
|
|
|
|
lib project: ":wpiutil", library: "wpiutilJNIShared", linkage: "shared"
|
|
|
|
|
lib project: ":wpimath", library: "wpimathJNIShared", linkage: "shared"
|
|
|
|
|
project(":hal").addHalJniDependency(it)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (it instanceof GoogleTestTestSuiteBinarySpec) {
|
|
|
|
|
nativeUtils.useRequiredLibrary(it, "opencv_shared")
|
|
|
|
|
lib project: ":cscore", library: "cscore", linkage: "shared"
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
tasks {
|
|
|
|
|
def c = $.components
|
|
|
|
|
def found = false
|
|
|
|
|
def systemArch = getCurrentArch()
|
|
|
|
|
c.each {
|
|
|
|
|
if (it in NativeExecutableSpec && it.name == "${nativeName}Dev") {
|
|
|
|
|
it.binaries.each {
|
|
|
|
|
if (!found) {
|
|
|
|
|
def arch = it.targetPlatform.name
|
|
|
|
|
if (arch == systemArch) {
|
|
|
|
|
def filePath = it.tasks.install.installDirectory.get().toString() + File.separatorChar + "lib"
|
|
|
|
|
found = true
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
test {
|
|
|
|
|
testLogging {
|
|
|
|
|
outputs.upToDateWhen {false}
|
|
|
|
|
showStandardStreams = true
|
|
|
|
|
}
|
|
|
|
|
}
|