mirror of
https://github.com/PhotonVision/photonvision
synced 2026-06-25 01:41:40 +00:00
Add macOS mrcal support (#2264)
This commit is contained in:
10
build.gradle
10
build.gradle
@@ -41,19 +41,13 @@ ext {
|
||||
rknnVersion = "dev-v2025.0.0-7-g83c1bf3"
|
||||
rubikVersion = "dev-v2025.1.0-7-g39588a8"
|
||||
frcYear = "2026beta"
|
||||
mrcalVersion = "dev-v2025.0.0-3-g2dc275f";
|
||||
mrcalVersion = "dev-v2025.0.0-6-g475031a";
|
||||
|
||||
pubVersion = versionString
|
||||
isDev = pubVersion.startsWith("dev")
|
||||
|
||||
// A list, for legacy reasons, with only the current platform contained
|
||||
wpilibNativeName = wpilibTools.platformMapper.currentPlatform.platformName;
|
||||
def nativeName = wpilibNativeName
|
||||
if (wpilibNativeName == "linuxx64") nativeName = "linuxx86-64";
|
||||
if (wpilibNativeName == "winx64") nativeName = "windowsx86-64";
|
||||
if (wpilibNativeName == "macx64") nativeName = "osxx86-64";
|
||||
if (wpilibNativeName == "macarm64") nativeName = "osxarm64";
|
||||
jniPlatform = nativeName
|
||||
jniPlatform = wpilibTools.platformMapper.wpilibClassifier;
|
||||
|
||||
println("Building for platform " + jniPlatform + " wpilib: " + wpilibNativeName)
|
||||
println("Using Wpilib: " + wpilibVersion)
|
||||
|
||||
@@ -36,13 +36,13 @@ dependencies {
|
||||
|
||||
// The JNI libraries use wpilibNatives, the java libraries use implementation
|
||||
if (jniPlatform == "linuxarm64") {
|
||||
wpilibNatives("org.photonvision:rknn_jni-jni:$rknnVersion:$wpilibNativeName") {
|
||||
wpilibNatives("org.photonvision:rknn_jni-jni:$rknnVersion:$jniPlatform") {
|
||||
transitive = false
|
||||
}
|
||||
wpilibNatives("org.photonvision:rubik_jni-jni:$rubikVersion:$wpilibNativeName") {
|
||||
wpilibNatives("org.photonvision:rubik_jni-jni:$rubikVersion:$jniPlatform") {
|
||||
transitive = false
|
||||
}
|
||||
wpilibNatives("org.photonvision:photon-libcamera-gl-driver-jni:$libcameraDriverVersion:$wpilibNativeName") {
|
||||
wpilibNatives("org.photonvision:photon-libcamera-gl-driver-jni:$libcameraDriverVersion:$jniPlatform") {
|
||||
transitive = false
|
||||
}
|
||||
}
|
||||
@@ -59,14 +59,8 @@ dependencies {
|
||||
|
||||
implementation "org.photonvision:photon-mrcal-java:$mrcalVersion"
|
||||
|
||||
// Only include mrcal natives on platforms that we build for
|
||||
if (!(jniPlatform in [
|
||||
"osxx86-64",
|
||||
"osxarm64"
|
||||
])) {
|
||||
wpilibNatives("org.photonvision:photon-mrcal-jni:$mrcalVersion:$wpilibNativeName") {
|
||||
transitive = false
|
||||
}
|
||||
wpilibNatives("org.photonvision:photon-mrcal-jni:$mrcalVersion:$jniPlatform") {
|
||||
transitive = false
|
||||
}
|
||||
|
||||
testImplementation group: 'org.junit-pioneer' , name: 'junit-pioneer', version: '2.2.0'
|
||||
|
||||
@@ -89,20 +89,6 @@ model {
|
||||
nativeUtils.useRequiredLibrary(it, "cscore_shared")
|
||||
nativeUtils.useRequiredLibrary(it, "opencv_shared")
|
||||
}
|
||||
|
||||
all {
|
||||
binaries.withType(SharedLibraryBinarySpec) { binary ->
|
||||
// check that we're building for the platform (per PArchOverride/wpilib plat detection)
|
||||
def platName = jniPlatform
|
||||
def realWpilibName = wpilibNativeName;
|
||||
|
||||
if (jniPlatform.equals("osxarm64") || jniPlatform.equals("osxx86-64")) {
|
||||
// native-utils calls this osxuniversal
|
||||
platName = "osxuniversal";
|
||||
realWpilibName = "osxuniversal";
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
testSuites {
|
||||
"${nativeName}Test"(GoogleTestTestSuiteSpec) {
|
||||
|
||||
Reference in New Issue
Block a user