From 963a33e4da0d161e007644d823d47022d78825ac Mon Sep 17 00:00:00 2001 From: thatcomputerguy0101 Date: Sun, 23 Nov 2025 19:49:59 -0500 Subject: [PATCH 01/18] Add MacOS support --- CMakeLists.txt | 1 + src/mrcal_test.cpp | 2 +- src/mrcal_wrapper.cpp | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 44911a1..a7cd957 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -44,6 +44,7 @@ file( GLOB_RECURSE OPENCV_LIB_PATH "${opencv_lib_SOURCE_DIR}/**/*.lib" "${opencv_lib_SOURCE_DIR}/**/*.so*" + "${opencv_lib_SOURCE_DIR}/**/*.*.dylib" ) set(OPENCV_INCLUDE_PATH ${opencv_header_SOURCE_DIR}) message("Depending on opencv ${OPENCV_LIB_PATH}") diff --git a/src/mrcal_test.cpp b/src/mrcal_test.cpp index d20ee56..7e91123 100644 --- a/src/mrcal_test.cpp +++ b/src/mrcal_test.cpp @@ -15,7 +15,7 @@ * along with this program. If not, see . */ -#include +#include #include #include diff --git a/src/mrcal_wrapper.cpp b/src/mrcal_wrapper.cpp index 805a61b..beea994 100644 --- a/src/mrcal_wrapper.cpp +++ b/src/mrcal_wrapper.cpp @@ -32,7 +32,7 @@ #include "mrcal_wrapper.h" -#include +#include #include #include From 60e50916c8773b7706ec194824d81a92209112a0 Mon Sep 17 00:00:00 2001 From: thatcomputerguy0101 Date: Wed, 26 Nov 2025 16:09:45 -0500 Subject: [PATCH 02/18] Add MacOS to build action --- .github/workflows/main.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index f54f603..4e7b729 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -24,6 +24,11 @@ jobs: - os: windows-latest arch-name: windowsx86-64 extra-flags: -DCMAKE_CXX_COMPILER=clang-cl -DCMAKE_C_COMPILER=clang-cl + - os: macos-latest + arch-name: osxarm64 + - os: macos-latest + arch-name: osxx86-64 + extra-flags: -DCMAKE_OSX_ARCHITECTURES=x86-64 runs-on: ${{ matrix.os }} name: "mrcal-jni - Build - ${{ matrix.arch-name }}" From f2192be559686f308a8a8e445c2ef06921b5bc02 Mon Sep 17 00:00:00 2001 From: thatcomputerguy0101 Date: Wed, 26 Nov 2025 16:40:02 -0500 Subject: [PATCH 03/18] Build universal MacOS library Co-authored-by: Gold856 <117957790+Gold856@users.noreply.github.com> --- .github/workflows/main.yml | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 4e7b729..3302df0 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -25,10 +25,8 @@ jobs: arch-name: windowsx86-64 extra-flags: -DCMAKE_CXX_COMPILER=clang-cl -DCMAKE_C_COMPILER=clang-cl - os: macos-latest - arch-name: osxarm64 - - os: macos-latest - arch-name: osxx86-64 - extra-flags: -DCMAKE_OSX_ARCHITECTURES=x86-64 + arch-name: osxuniversal + extra-flags: -DCMAKE_OSX_ARCHITECTURES="arm64;x86_64" runs-on: ${{ matrix.os }} name: "mrcal-jni - Build - ${{ matrix.arch-name }}" From 82c26f6bceac448a0b06a4bca233246d754d951b Mon Sep 17 00:00:00 2001 From: thatcomputerguy0101 Date: Wed, 26 Nov 2025 23:37:59 -0500 Subject: [PATCH 04/18] Add List::MoreUtils install to macOS runner --- .github/workflows/main.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 3302df0..8ff3f7d 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -53,6 +53,11 @@ jobs: sudo apt update sudo apt-get install -y cmake ninja-build gcc g++ liblist-moreutils-perl + - name: Install deps + if: runner.os == 'macOS' + run: | + sudo cpan -i List::MoreUtils + - name: Configure CMake # Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make. # See https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html?highlight=cmake_build_type From c367909affff9dc7328253f514631773b0f98f0b Mon Sep 17 00:00:00 2001 From: thatcomputerguy0101 Date: Wed, 26 Nov 2025 23:46:01 -0500 Subject: [PATCH 05/18] Condense install deps action step --- .github/workflows/main.yml | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 8ff3f7d..d069a77 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -48,15 +48,14 @@ jobs: distribution: temurin - name: Install deps - if: runner.os == 'Linux' + if: runner.os == 'Linux' || runner.os == 'macOS' run: | - sudo apt update - sudo apt-get install -y cmake ninja-build gcc g++ liblist-moreutils-perl - - - name: Install deps - if: runner.os == 'macOS' - run: | - sudo cpan -i List::MoreUtils + if [ $RUNNER_OS == "Linux" ]; then + sudo apt update + sudo apt-get install -y cmake ninja-build gcc g++ liblist-moreutils-perl + elif [ $RUNNER_OS == "macOS" ]; then + sudo cpan -i List::MoreUtils + fi - name: Configure CMake # Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make. From ef11ab23a3c1b0fc2781541572a88057c3654cb4 Mon Sep 17 00:00:00 2001 From: thatcomputerguy0101 Date: Sat, 29 Nov 2025 14:19:40 -0500 Subject: [PATCH 06/18] Use Apple Accelerate on macOS instead of OpenBLAS --- CMakeLists.txt | 78 ++++++++++++++++++++++++++++---------------------- 1 file changed, 44 insertions(+), 34 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index a7cd957..29a183b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -67,43 +67,49 @@ set(CMAKE_POSITION_INDEPENDENT_CODE ON) # Silence OpenBLAS/LAPACK warnings set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -w") -set(BLA_VENDOR OpenBLAS) -FetchContent_Declare( - BLAS - GIT_REPOSITORY https://github.com/OpenMathLib/OpenBLAS.git - GIT_TAG v0.3.30 - OVERRIDE_FIND_PACKAGE -) -FetchContent_MakeAvailable(BLAS) - -if(TARGET openblas) - set(OPENBLAS_TARGET openblas) - message(STATUS "Using openblas target") -elseif(TARGET OpenBLAS) - set(OPENBLAS_TARGET OpenBLAS) - message(STATUS "Using OpenBLAS target") -elseif(TARGET libopenblas) - set(OPENBLAS_TARGET libopenblas) - message(STATUS "Using libopenblas target") -else() - # Fallback: find the library file manually - find_library( - OPENBLAS_LIB - NAMES openblas libopenblas - PATHS - ${openblas_external_BINARY_DIR} - ${openblas_external_BINARY_DIR}/lib - ${openblas_external_BINARY_DIR}/lib/Release - NO_DEFAULT_PATH - REQUIRED +if(NOT APPLE) + set(BLA_VENDOR OpenBLAS) + FetchContent_Declare( + BLAS + GIT_REPOSITORY https://github.com/OpenMathLib/OpenBLAS.git + GIT_TAG v0.3.30 + OVERRIDE_FIND_PACKAGE ) - message(STATUS "Using OpenBLAS library file: ${OPENBLAS_LIB}") - add_library(openblas_imported STATIC IMPORTED) - set_target_properties( + FetchContent_MakeAvailable(BLAS) + + if(TARGET openblas) + set(OPENBLAS_TARGET openblas) + message(STATUS "Using openblas target") + elseif(TARGET OpenBLAS) + set(OPENBLAS_TARGET OpenBLAS) + message(STATUS "Using OpenBLAS target") + elseif(TARGET libopenblas) + set(OPENBLAS_TARGET libopenblas) + message(STATUS "Using libopenblas target") + else() + # Fallback: find the library file manually + find_library( + OPENBLAS_LIB + NAMES openblas libopenblas + PATHS + ${openblas_external_BINARY_DIR} + ${openblas_external_BINARY_DIR}/lib + ${openblas_external_BINARY_DIR}/lib/Release + NO_DEFAULT_PATH + REQUIRED + ) + message(STATUS "Using OpenBLAS library file: ${OPENBLAS_LIB}") + add_library(openblas_imported STATIC IMPORTED) + set_target_properties( openblas_imported PROPERTIES IMPORTED_LOCATION ${OPENBLAS_LIB} ) - set(OPENBLAS_TARGET openblas_imported) + set(OPENBLAS_TARGET openblas_imported) + endif() +else() + set(BLA_VENDOR Apple) + add_compile_definitions(ACCELERATE_NEW_LAPACK=1) + find_package(BLAS) endif() # Configure SuiteSparse to use BLAS @@ -129,7 +135,11 @@ get_target_property( INTERFACE_LINK_LIBRARIES ) message(STATUS "CHOLMOD links to: ${CHOLMOD_LIBS}") -message(STATUS "BLAS is at: ${OPENBLAS_TARGET}") +if(NOT APPLE) + message(STATUS "BLAS is at: ${OPENBLAS_TARGET}") +else() + message(STATUS "BLAS is using Apple Accelerate") +endif() # And pull in JNI find_package(JNI) From 4a416021b4da63ed02a445c33a917372f36a0448 Mon Sep 17 00:00:00 2001 From: thatcomputerguy0101 Date: Sun, 28 Dec 2025 10:32:18 -0500 Subject: [PATCH 07/18] Update gradle packaging for macOS universal builds --- build.gradle | 9 +++++++-- publish.gradle | 2 +- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/build.gradle b/build.gradle index 97be2f1..237146c 100644 --- a/build.gradle +++ b/build.gradle @@ -57,7 +57,12 @@ test { useJUnitPlatform() } -ext.nativeName = wpilibTools.platformMapper.currentPlatform.platformName.replace('win', 'windows/').replace('mac', 'osx/').replace('linux', 'linux/').replace('x64', 'x86-64'); +ext.nativeName = wpilibTools.platformMapper.currentPlatform.platformName + .replace('win', 'windows/') + .replace('macarm64', 'osx/universal') + .replace('mac', 'osx/') + .replace('linux', 'linux/') + .replace('x64', 'x86-64'); ext.outputsFolder = file("$buildDir/outputs") println("Building for $nativeName") @@ -67,7 +72,7 @@ tasks.register('copyNativeLibrary', Sync) { from "${projectDir}/cmake_build/lib/" // Hardcode to shared because we're not building static ever into "${outputsFolder}/${nativeName}/shared/" - include "**/*.dll", "**/*.so" + include "**/*.dll", "**/*.so", "**/*.dylib" includeEmptyDirs = false build.dependsOn it diff --git a/publish.gradle b/publish.gradle index de0f924..0b66aba 100644 --- a/publish.gradle +++ b/publish.gradle @@ -1,6 +1,6 @@ apply plugin: 'maven-publish' -def nativeName = wpilibTools.platformMapper.currentPlatform.platformName; +def nativeName = wpilibTools.platformMapper.currentPlatform.platformName.replace("macarm64", "macuniversal"); def artifactGroupId = 'org.photonvision' def baseArtifactId = "photon-mrcal" From 665e21062118591edcdcd796ec77e042cd1eaaeb Mon Sep 17 00:00:00 2001 From: thatcomputerguy0101 Date: Sun, 28 Dec 2025 10:43:27 -0500 Subject: [PATCH 08/18] wpiformat --- CMakeLists.txt | 8 ++++---- src/mrcal_test.cpp | 2 +- src/mrcal_wrapper.cpp | 2 +- src/mrcal_wrapper.h | 1 + 4 files changed, 7 insertions(+), 6 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 29a183b..c2e135c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -89,7 +89,7 @@ if(NOT APPLE) else() # Fallback: find the library file manually find_library( - OPENBLAS_LIB + OPENBLAS_LIB NAMES openblas libopenblas PATHS ${openblas_external_BINARY_DIR} @@ -101,9 +101,9 @@ if(NOT APPLE) message(STATUS "Using OpenBLAS library file: ${OPENBLAS_LIB}") add_library(openblas_imported STATIC IMPORTED) set_target_properties( - openblas_imported - PROPERTIES IMPORTED_LOCATION ${OPENBLAS_LIB} - ) + openblas_imported + PROPERTIES IMPORTED_LOCATION ${OPENBLAS_LIB} + ) set(OPENBLAS_TARGET openblas_imported) endif() else() diff --git a/src/mrcal_test.cpp b/src/mrcal_test.cpp index 7e91123..db8df2f 100644 --- a/src/mrcal_test.cpp +++ b/src/mrcal_test.cpp @@ -15,8 +15,8 @@ * along with this program. If not, see . */ -#include #include +#include #include #include diff --git a/src/mrcal_wrapper.cpp b/src/mrcal_wrapper.cpp index beea994..4690930 100644 --- a/src/mrcal_wrapper.cpp +++ b/src/mrcal_wrapper.cpp @@ -32,8 +32,8 @@ #include "mrcal_wrapper.h" -#include #include +#include #include #include diff --git a/src/mrcal_wrapper.h b/src/mrcal_wrapper.h index fb1cdd0..a047db4 100644 --- a/src/mrcal_wrapper.h +++ b/src/mrcal_wrapper.h @@ -35,6 +35,7 @@ extern "C" { // Seems to be missing C++ guards #include + } // extern "C" #include From d503a73f958a848ab18f4209e45373548b69a5d5 Mon Sep 17 00:00:00 2001 From: thatcomputerguy0101 Date: Sun, 4 Jan 2026 15:28:01 -0500 Subject: [PATCH 09/18] Update vnlog for macOS --- vnlog | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vnlog b/vnlog index be94ea1..4342e7e 160000 --- a/vnlog +++ b/vnlog @@ -1 +1 @@ -Subproject commit be94ea1348c1c050c38dcaf6ab9b9e054d6d904f +Subproject commit 4342e7e5ded6f90dc264b6633b8301733d95017a From db1eb6f93f74fee48ba41bb93ecf379c7b8809b4 Mon Sep 17 00:00:00 2001 From: thatcomputerguy0101 Date: Sun, 4 Jan 2026 15:28:27 -0500 Subject: [PATCH 10/18] Add vnlog CMake config --- CMakeLists.txt | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index c2e135c..f62fd37 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -206,6 +206,19 @@ target_link_libraries( lapack ) +# vnlog for the test script +set(VNLOG_SRC_CPP + vnlog/b64_cencode.c + vnlog/vnlog-parser.c + vnlog/vnlog.c +) +add_library(vnlog ${VNLOG_SRC_CPP}) +target_include_directories( + vnlog + SYSTEM + PUBLIC ${PROJECT_SOURCE_DIR}/vnlog +) + # Test script for checking our linker add_executable(mrcal_jni_test src/mrcal_test.cpp) target_link_libraries(mrcal_jni_test PUBLIC mrcal_jni) @@ -214,10 +227,10 @@ target_include_directories( SYSTEM PRIVATE ${PROJECT_SOURCE_DIR}/vnlog ) -# add_dependencies(mrcal_jni_test ) +add_dependencies(mrcal_jni_test mrcal_jni vnlog) target_link_libraries( mrcal_jni_test - PRIVATE ${OpenCV_LIBS} ${PROJECT_SOURCE_DIR}/vnlog/libvnlog.so + PRIVATE ${OpenCV_LIBS} vnlog ) if(WITH_ASAN) From ff7ed72721a52ad74652acb1483eb4e3423f2240 Mon Sep 17 00:00:00 2001 From: thatcomputerguy0101 Date: Sun, 4 Jan 2026 15:28:43 -0500 Subject: [PATCH 11/18] Add macOS instructions to README --- README.md | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index c51c028..d60c1d9 100644 --- a/README.md +++ b/README.md @@ -4,10 +4,18 @@ See: http://mrcal.secretsauce.net/install.html - Install cmake -``` +```bash sudo apt install cmake gcc g++ libmrcal-dev cmake -B build . # You may need to add JAVA_HOME=/path/to/java cmake --build build ``` For windows: `cmake -B build -S . -T ClangCl -A x64 -G "Visual Studio 17 2022" + +For macOS: + +```bash +cpan -i List::MoreUtils +cmake -B build -DOPENCV_ARCH=osxuniversal -DCMAKE_OSX_ARCHITECTURES="arm64;x86_64" +cmake --build build +``` From bf7b788f6fef5d4d98c07307df5593679454f674 Mon Sep 17 00:00:00 2001 From: thatcomputerguy0101 Date: Sun, 4 Jan 2026 15:36:44 -0500 Subject: [PATCH 12/18] wpiformat --- CMakeLists.txt | 17 +++-------------- 1 file changed, 3 insertions(+), 14 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index f62fd37..cf9186d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -207,17 +207,9 @@ target_link_libraries( ) # vnlog for the test script -set(VNLOG_SRC_CPP - vnlog/b64_cencode.c - vnlog/vnlog-parser.c - vnlog/vnlog.c -) +set(VNLOG_SRC_CPP vnlog/b64_cencode.c vnlog/vnlog-parser.c vnlog/vnlog.c) add_library(vnlog ${VNLOG_SRC_CPP}) -target_include_directories( - vnlog - SYSTEM - PUBLIC ${PROJECT_SOURCE_DIR}/vnlog -) +target_include_directories(vnlog SYSTEM PUBLIC ${PROJECT_SOURCE_DIR}/vnlog) # Test script for checking our linker add_executable(mrcal_jni_test src/mrcal_test.cpp) @@ -228,10 +220,7 @@ target_include_directories( PRIVATE ${PROJECT_SOURCE_DIR}/vnlog ) add_dependencies(mrcal_jni_test mrcal_jni vnlog) -target_link_libraries( - mrcal_jni_test - PRIVATE ${OpenCV_LIBS} vnlog -) +target_link_libraries(mrcal_jni_test PRIVATE ${OpenCV_LIBS} vnlog) if(WITH_ASAN) target_link_libraries( From 7bcef03b68aa16756b72c20150c9b1fa189046ed Mon Sep 17 00:00:00 2001 From: thatcomputerguy0101 Date: Sun, 4 Jan 2026 17:50:37 -0500 Subject: [PATCH 13/18] Revert "Condense install deps action step" This reverts commit c367909affff9dc7328253f514631773b0f98f0b. --- .github/workflows/main.yml | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index d069a77..8ff3f7d 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -48,14 +48,15 @@ jobs: distribution: temurin - name: Install deps - if: runner.os == 'Linux' || runner.os == 'macOS' + if: runner.os == 'Linux' run: | - if [ $RUNNER_OS == "Linux" ]; then - sudo apt update - sudo apt-get install -y cmake ninja-build gcc g++ liblist-moreutils-perl - elif [ $RUNNER_OS == "macOS" ]; then - sudo cpan -i List::MoreUtils - fi + sudo apt update + sudo apt-get install -y cmake ninja-build gcc g++ liblist-moreutils-perl + + - name: Install deps + if: runner.os == 'macOS' + run: | + sudo cpan -i List::MoreUtils - name: Configure CMake # Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make. From 976ea454e8c9222e2923a89043776d9eeaf05f04 Mon Sep 17 00:00:00 2001 From: thatcomputerguy0101 Date: Sun, 4 Jan 2026 17:51:41 -0500 Subject: [PATCH 14/18] Add OS labels to Install deps step names --- .github/workflows/main.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 8ff3f7d..2b61a8a 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -47,13 +47,13 @@ jobs: java-version: 17 distribution: temurin - - name: Install deps + - name: Install deps (Linux) if: runner.os == 'Linux' run: | sudo apt update sudo apt-get install -y cmake ninja-build gcc g++ liblist-moreutils-perl - - name: Install deps + - name: Install deps (macOS) if: runner.os == 'macOS' run: | sudo cpan -i List::MoreUtils From 8df26ac558c7c1beb2d58ac15ba0848e403c24c5 Mon Sep 17 00:00:00 2001 From: thatcomputerguy0101 Date: Sun, 4 Jan 2026 18:19:27 -0500 Subject: [PATCH 15/18] Build vnlog as a static library --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index cf9186d..a46ab1e 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -208,7 +208,7 @@ target_link_libraries( # vnlog for the test script set(VNLOG_SRC_CPP vnlog/b64_cencode.c vnlog/vnlog-parser.c vnlog/vnlog.c) -add_library(vnlog ${VNLOG_SRC_CPP}) +add_library(vnlog STATIC ${VNLOG_SRC_CPP}) target_include_directories(vnlog SYSTEM PUBLIC ${PROJECT_SOURCE_DIR}/vnlog) # Test script for checking our linker From b9c5f3e15d0cbba2f7b82fcd8d1d93260c36b8ad Mon Sep 17 00:00:00 2001 From: thatcomputerguy0101 Date: Mon, 5 Jan 2026 07:33:08 -0500 Subject: [PATCH 16/18] Use wpilib classifer for publised native artifacts --- publish.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/publish.gradle b/publish.gradle index 0b66aba..ff28e54 100644 --- a/publish.gradle +++ b/publish.gradle @@ -1,6 +1,6 @@ apply plugin: 'maven-publish' -def nativeName = wpilibTools.platformMapper.currentPlatform.platformName.replace("macarm64", "macuniversal"); +def nativeName = wpilibTools.platformMapper.wpilibClassifier; def artifactGroupId = 'org.photonvision' def baseArtifactId = "photon-mrcal" From 890fd4af720fde6453f7758d52fbf2c9ad333c65 Mon Sep 17 00:00:00 2001 From: thatcomputerguy0101 Date: Mon, 5 Jan 2026 09:05:22 -0500 Subject: [PATCH 17/18] simplify ext.nativeName using wpilibClassifier --- build.gradle | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/build.gradle b/build.gradle index 237146c..115d671 100644 --- a/build.gradle +++ b/build.gradle @@ -57,12 +57,10 @@ test { useJUnitPlatform() } -ext.nativeName = wpilibTools.platformMapper.currentPlatform.platformName - .replace('win', 'windows/') - .replace('macarm64', 'osx/universal') - .replace('mac', 'osx/') +ext.nativeName = wpilibTools.platformMapper.wpilibClassifier + .replace('windows', 'windows/') + .replace('osx', 'osx/') .replace('linux', 'linux/') - .replace('x64', 'x86-64'); ext.outputsFolder = file("$buildDir/outputs") println("Building for $nativeName") From 420532102e738da077f49dcb5f82003ba8802e20 Mon Sep 17 00:00:00 2001 From: Gold856 <117957790+Gold856@users.noreply.github.com> Date: Mon, 5 Jan 2026 21:45:06 -0500 Subject: [PATCH 18/18] Consolidate line --- .github/workflows/main.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 2b61a8a..9dcb731 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -55,8 +55,7 @@ jobs: - name: Install deps (macOS) if: runner.os == 'macOS' - run: | - sudo cpan -i List::MoreUtils + run: sudo cpan -i List::MoreUtils - name: Configure CMake # Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make.