diff options
Diffstat (limited to 'vcpkg/ports/wpilib')
| -rw-r--r-- | vcpkg/ports/wpilib/fix-build-error-with-fmt11.patch | 36 | ||||
| -rw-r--r-- | vcpkg/ports/wpilib/fix-fmt.patch | 32 | ||||
| -rw-r--r-- | vcpkg/ports/wpilib/fix-usage.patch | 44 | ||||
| -rw-r--r-- | vcpkg/ports/wpilib/missing-find_dependency.patch | 12 | ||||
| -rw-r--r-- | vcpkg/ports/wpilib/no-werror.patch | 15 | ||||
| -rw-r--r-- | vcpkg/ports/wpilib/portfile.cmake | 61 | ||||
| -rw-r--r-- | vcpkg/ports/wpilib/vcpkg.json | 45 | ||||
| -rw-r--r-- | vcpkg/ports/wpilib/windows-install-location.patch | 338 |
8 files changed, 583 insertions, 0 deletions
diff --git a/vcpkg/ports/wpilib/fix-build-error-with-fmt11.patch b/vcpkg/ports/wpilib/fix-build-error-with-fmt11.patch new file mode 100644 index 0000000..c33eff5 --- /dev/null +++ b/vcpkg/ports/wpilib/fix-build-error-with-fmt11.patch @@ -0,0 +1,36 @@ +diff --git a/ntcore/src/dev/native/cpp/main.cpp b/ntcore/src/dev/native/cpp/main.cpp +index 6e43fdb..ad93644 100644 +--- a/ntcore/src/dev/native/cpp/main.cpp ++++ b/ntcore/src/dev/native/cpp/main.cpp +@@ -13,6 +13,7 @@ + #include <thread> + + #include <fmt/format.h> ++#include <fmt/ranges.h> + #include <wpi/Synchronization.h> + #include <wpi/timestamp.h> + +diff --git a/wpiutil/examples/printlog/printlog.cpp b/wpiutil/examples/printlog/printlog.cpp +index cb89934..4fe4817 100644 +--- a/wpiutil/examples/printlog/printlog.cpp ++++ b/wpiutil/examples/printlog/printlog.cpp +@@ -6,6 +6,7 @@ + + #include <fmt/chrono.h> + #include <fmt/format.h> ++#include <fmt/ranges.h> + + #include "wpi/DataLogReader.h" + #include "wpi/DenseMap.h" +diff --git a/wpiutil/src/main/native/include/wpi/Logger.h b/wpiutil/src/main/native/include/wpi/Logger.h +index 01a02fd..bd524a9 100644 +--- a/wpiutil/src/main/native/include/wpi/Logger.h ++++ b/wpiutil/src/main/native/include/wpi/Logger.h +@@ -9,6 +9,7 @@ + #include <utility> + + #include <fmt/format.h> ++#include <fmt/ranges.h> + + namespace wpi { + diff --git a/vcpkg/ports/wpilib/fix-fmt.patch b/vcpkg/ports/wpilib/fix-fmt.patch new file mode 100644 index 0000000..d2b36c2 --- /dev/null +++ b/vcpkg/ports/wpilib/fix-fmt.patch @@ -0,0 +1,32 @@ +diff --git a/wpimath/src/main/native/include/units/base.h b/wpimath/src/main/native/include/units/base.h +index 3c939f3..09c56e5 100644 +--- a/wpimath/src/main/native/include/units/base.h ++++ b/wpimath/src/main/native/include/units/base.h +@@ -183,9 +183,10 @@ namespace units + struct fmt::formatter<units::namespaceName::nameSingular ## _t> \ + : fmt::formatter<double> \ + {\ +- template <typename FormatContext>\ +- auto format(const units::namespaceName::nameSingular ## _t& obj,\ +- FormatContext& ctx) -> decltype(ctx.out()) \ ++ template <typename FmtContext>\ ++ auto format(\ ++ const units::namespaceName::nameSingular ## _t& obj,\ ++ FmtContext& ctx) const\ + {\ + auto out = ctx.out();\ + out = fmt::formatter<double>::format(obj(), ctx);\ +@@ -2890,9 +2891,10 @@ namespace units + template <> + struct fmt::formatter<units::dimensionless::dB_t> : fmt::formatter<double> + { +- template <typename FormatContext> +- auto format(const units::dimensionless::dB_t& obj, +- FormatContext& ctx) -> decltype(ctx.out()) ++ template <typename FmtContext> ++ auto format( ++ const units::dimensionless::dB_t& obj, ++ FmtContext& ctx) const + { + auto out = ctx.out(); + out = fmt::formatter<double>::format(obj(), ctx); diff --git a/vcpkg/ports/wpilib/fix-usage.patch b/vcpkg/ports/wpilib/fix-usage.patch new file mode 100644 index 0000000..99d22f5 --- /dev/null +++ b/vcpkg/ports/wpilib/fix-usage.patch @@ -0,0 +1,44 @@ +diff --git a/wpilibNewCommands/wpilibNewCommands-config.cmake.in b/wpilibNewCommands/wpilibNewCommands-config.cmake.in +index 75aa6ad7d..8a8d8d8ec 100644 +--- a/wpilibNewCommands/wpilibNewCommands-config.cmake.in ++++ b/wpilibNewCommands/wpilibNewCommands-config.cmake.in +@@ -1,5 +1,4 @@ + include(CMakeFindDependencyMacro) +- @FILENAME_DEP_REPLACE@ + @WPIUTIL_DEP_REPLACE@ + @NTCORE_DEP_REPLACE@ + @CSCORE_DEP_REPLACE@ +@@ -8,4 +7,5 @@ include(CMakeFindDependencyMacro) + @WPILIBC_DEP_REPLACE@ + @WPIMATH_DEP_REPLACE@ + ++ @FILENAME_DEP_REPLACE@ + include(${SELF_DIR}/wpilibNewCommands.cmake) +diff --git a/wpimath/wpimath-config.cmake.in b/wpimath/wpimath-config.cmake.in +index 4769e4317..9100d7943 100644 +--- a/wpimath/wpimath-config.cmake.in ++++ b/wpimath/wpimath-config.cmake.in +@@ -2,5 +2,9 @@ include(CMakeFindDependencyMacro) + @FILENAME_DEP_REPLACE@ + @WPIUTIL_DEP_REPLACE@ + ++if(@USE_SYSTEM_EIGEN@) ++ find_dependency(Eigen3) ++endif() ++ + @FILENAME_DEP_REPLACE@ + include(${SELF_DIR}/wpimath.cmake) +diff --git a/wpiutil/wpiutil-config.cmake.in b/wpiutil/wpiutil-config.cmake.in +index fde839e2f..3f696c8a0 100644 +--- a/wpiutil/wpiutil-config.cmake.in ++++ b/wpiutil/wpiutil-config.cmake.in +@@ -4,5 +4,9 @@ set(THREADS_PREFER_PTHREAD_FLAG ON) + find_dependency(Threads) + @FMTLIB_SYSTEM_REPLACE@ + ++if(@USE_SYSTEM_FMTLIB@) ++ find_dependency(fmt) ++endif() ++ + @FILENAME_DEP_REPLACE@ + include(${SELF_DIR}/wpiutil.cmake) diff --git a/vcpkg/ports/wpilib/missing-find_dependency.patch b/vcpkg/ports/wpilib/missing-find_dependency.patch new file mode 100644 index 0000000..06ccb90 --- /dev/null +++ b/vcpkg/ports/wpilib/missing-find_dependency.patch @@ -0,0 +1,12 @@ +diff --git a/ntcore/ntcore-config.cmake.in b/ntcore/ntcore-config.cmake.in +index 17006a583..0a85f8b09 100644 +--- a/ntcore/ntcore-config.cmake.in ++++ b/ntcore/ntcore-config.cmake.in +@@ -1,6 +1,7 @@ + include(CMakeFindDependencyMacro) + @FILENAME_DEP_REPLACE@ + @WPIUTIL_DEP_REPLACE@ ++@WPINET_DEP_REPLACE@ + + @FILENAME_DEP_REPLACE@ + include(${SELF_DIR}/ntcore.cmake) diff --git a/vcpkg/ports/wpilib/no-werror.patch b/vcpkg/ports/wpilib/no-werror.patch new file mode 100644 index 0000000..8bcd699 --- /dev/null +++ b/vcpkg/ports/wpilib/no-werror.patch @@ -0,0 +1,15 @@ +diff --git a/cmake/modules/CompileWarnings.cmake b/cmake/modules/CompileWarnings.cmake +index 93b35b8ab..df7ff7365 100644 +--- a/cmake/modules/CompileWarnings.cmake ++++ b/cmake/modules/CompileWarnings.cmake +@@ -1,8 +1,8 @@ + macro(wpilib_target_warnings target) + if(NOT MSVC) +- target_compile_options(${target} PRIVATE -Wall -pedantic -Wextra -Werror -Wno-unused-parameter ${WPILIB_TARGET_WARNINGS}) ++ target_compile_options(${target} PRIVATE -Wall -pedantic -Wextra -Wno-unused-parameter ${WPILIB_TARGET_WARNINGS}) + else() +- target_compile_options(${target} PRIVATE /wd4146 /wd4244 /wd4251 /wd4267 /WX /D_CRT_SECURE_NO_WARNINGS ${WPILIB_TARGET_WARNINGS}) ++ target_compile_options(${target} PRIVATE /wd4146 /wd4244 /wd4251 /wd4267 /D_CRT_SECURE_NO_WARNINGS ${WPILIB_TARGET_WARNINGS}) + endif() + + # Suppress C++-specific OpenCV warning; C compiler rejects it with an error diff --git a/vcpkg/ports/wpilib/portfile.cmake b/vcpkg/ports/wpilib/portfile.cmake new file mode 100644 index 0000000..d9e0220 --- /dev/null +++ b/vcpkg/ports/wpilib/portfile.cmake @@ -0,0 +1,61 @@ +vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO wpilibsuite/allwpilib
+ REF 165ebe4c79c437c7ba6c03af4a88a8c8680f742a
+ SHA512 f6ee07db0a119a7ac5876c4b0cf74abfb6af635d3d3ba913300138c450f62f6595ac4849bc499346f9f0179cc563f548a5e8a9a47122af593b425af453afd99f
+ PATCHES
+ no-werror.patch
+ windows-install-location.patch
+ missing-find_dependency.patch
+ fix-usage.patch
+ fix-build-error-with-fmt11.patch
+ fix-fmt.patch #https://github.com/wpilibsuite/allwpilib/pull/6796
+)
+
+if("allwpilib" IN_LIST FEATURES)
+ vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH_APRILTAG
+ REPO wpilibsuite/apriltag
+ REF e55b751f2465bd40a880d9acb87d24289e2af89e
+ SHA512 a5d824d11312f7f5229bad162349586e9c855cd1dc03f33235c045f2d5235932227eb17f9e9c801b46a28991cddcf7ad16d39549560251d7d9d52ce72f094a73
+ )
+endif()
+
+vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
+ FEATURES
+ cameraserver WITH_CSCORE
+ allwpilib WITH_SIMULATION_MODULES
+ allwpilib WITH_WPILIB
+)
+
+vcpkg_find_acquire_program(PYTHON3)
+x_vcpkg_get_python_packages(PYTHON_EXECUTABLE "${PYTHON3}" PACKAGES jinja2)
+
+vcpkg_cmake_configure(
+ SOURCE_PATH "${SOURCE_PATH}"
+ OPTIONS
+ ${FEATURE_OPTIONS}
+ -DWITH_JAVA=OFF
+ -DWITH_EXAMPLES=OFF
+ -DWITH_TESTS=OFF
+ -DWITH_GUI=OFF
+ -DWITH_SIMULATION_MODULES=OFF
+ -DUSE_SYSTEM_FMTLIB=ON
+ -DUSE_SYSTEM_LIBUV=ON
+ -DUSE_SYSTEM_EIGEN=ON
+ "-DFETCHCONTENT_SOURCE_DIR_APRILTAGLIB=${SOURCE_PATH_APRILTAG}"
+ MAYBE_UNUSED_VARIABLES
+ FETCHCONTENT_SOURCE_DIR_APRILTAGLIB
+)
+vcpkg_cmake_install()
+vcpkg_cmake_config_fixup(PACKAGE_NAME wpilib)
+vcpkg_cmake_config_fixup(PACKAGE_NAME ntcore)
+vcpkg_cmake_config_fixup(PACKAGE_NAME wpimath)
+vcpkg_cmake_config_fixup(PACKAGE_NAME wpinet)
+vcpkg_cmake_config_fixup(PACKAGE_NAME wpiutil)
+
+vcpkg_copy_pdbs()
+
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include" "${CURRENT_PACKAGES_DIR}/debug/share")
+
+vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE.md")
diff --git a/vcpkg/ports/wpilib/vcpkg.json b/vcpkg/ports/wpilib/vcpkg.json new file mode 100644 index 0000000..01edab8 --- /dev/null +++ b/vcpkg/ports/wpilib/vcpkg.json @@ -0,0 +1,45 @@ +{ + "name": "wpilib", + "version-date": "2023-08-24", + "port-version": 2, + "description": "WPILib is the software library package for the FIRST Robotics Competition. The core install includes wpiutil, a common utilies library, and ntcore, the base NetworkTables library.", + "homepage": "https://github.com/wpilibsuite/allwpilib", + "license": null, + "dependencies": [ + "eigen3", + "fmt", + "libuv", + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + }, + { + "name": "vcpkg-get-python-packages", + "host": true + } + ], + "features": { + "allwpilib": { + "description": "Enables the simulation HAL, and the high level wpilibc library.", + "dependencies": [ + "opencv", + { + "name": "wpilib", + "features": [ + "cameraserver" + ] + } + ] + }, + "cameraserver": { + "description": "Enables the CameraServer and CSCore libraries for manipulating USB Cameras and HTTP Camera Streams", + "dependencies": [ + "opencv" + ] + } + } +} diff --git a/vcpkg/ports/wpilib/windows-install-location.patch b/vcpkg/ports/wpilib/windows-install-location.patch new file mode 100644 index 0000000..36087a7 --- /dev/null +++ b/vcpkg/ports/wpilib/windows-install-location.patch @@ -0,0 +1,338 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 012bcb7cc..ff2ab95b8 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -153,7 +153,6 @@ endif() + + set( wpilib_dest "") + set( include_dest include ) +-set( main_lib_dest lib ) + set( java_lib_dest java ) + set( jni_lib_dest jni ) + +diff --git a/apriltag/CMakeLists.txt b/apriltag/CMakeLists.txt +index 6f20e3aa0..b5459eb62 100644 +--- a/apriltag/CMakeLists.txt ++++ b/apriltag/CMakeLists.txt +@@ -62,11 +62,7 @@ if (WITH_JAVA) + target_link_libraries(apriltagjni PRIVATE apriltag_jni_headers) + add_dependencies(apriltagjni apriltag_jar) + +- if (MSVC) +- install(TARGETS apriltagjni RUNTIME DESTINATION "${jni_lib_dest}" COMPONENT Runtime) +- endif() +- +- install(TARGETS apriltagjni EXPORT apriltagjni DESTINATION "${main_lib_dest}") ++ install(TARGETS apriltagjni EXPORT apriltagjni) + + endif() + +@@ -94,13 +90,9 @@ target_include_directories(apriltag PUBLIC + $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/src/main/native/include> + $<INSTALL_INTERFACE:${include_dest}/apriltag>) + +-install(TARGETS apriltag EXPORT apriltag DESTINATION "${main_lib_dest}") ++install(TARGETS apriltag EXPORT apriltag) + install(DIRECTORY src/main/native/include/ DESTINATION "${include_dest}/apriltag") + +-if (WITH_JAVA AND MSVC) +- install(TARGETS apriltag RUNTIME DESTINATION "${jni_lib_dest}" COMPONENT Runtime) +-endif() +- + if (WITH_FLAT_INSTALL) + set (apriltag_config_dir ${wpilib_dest}) + else() +diff --git a/cameraserver/CMakeLists.txt b/cameraserver/CMakeLists.txt +index 4916be3b6..665a4ef41 100644 +--- a/cameraserver/CMakeLists.txt ++++ b/cameraserver/CMakeLists.txt +@@ -40,13 +40,9 @@ target_link_libraries(cameraserver PUBLIC ntcore cscore wpiutil ${OpenCV_LIBS}) + + set_property(TARGET cameraserver PROPERTY FOLDER "libraries") + +-install(TARGETS cameraserver EXPORT cameraserver DESTINATION "${main_lib_dest}") ++install(TARGETS cameraserver EXPORT cameraserver) + install(DIRECTORY src/main/native/include/ DESTINATION "${include_dest}/cameraserver") + +-if (WITH_JAVA AND MSVC) +- install(TARGETS cameraserver RUNTIME DESTINATION "${jni_lib_dest}" COMPONENT Runtime) +-endif() +- + if (WITH_FLAT_INSTALL) + set (cameraserver_config_dir ${wpilib_dest}) + else() +diff --git a/cscore/CMakeLists.txt b/cscore/CMakeLists.txt +index 81cdd4ec5..1036cdf31 100644 +--- a/cscore/CMakeLists.txt ++++ b/cscore/CMakeLists.txt +@@ -40,7 +40,7 @@ target_link_libraries(cscore PUBLIC wpinet wpiutil ${OpenCV_LIBS}) + + set_property(TARGET cscore PROPERTY FOLDER "libraries") + +-install(TARGETS cscore EXPORT cscore DESTINATION "${main_lib_dest}") ++install(TARGETS cscore EXPORT cscore) + install(DIRECTORY src/main/native/include/ DESTINATION "${include_dest}/cscore") + + if (WITH_FLAT_INSTALL) +@@ -129,11 +129,7 @@ if (WITH_JAVA) + target_link_libraries(cscorejni PRIVATE cscore_jni_headers) + add_dependencies(cscorejni cscore_jar) + +- if (MSVC) +- install(TARGETS cscorejni RUNTIME DESTINATION "${jni_lib_dest}" COMPONENT Runtime) +- endif() +- +- install(TARGETS cscorejni EXPORT cscorejni DESTINATION "${main_lib_dest}") ++ install(TARGETS cscorejni EXPORT cscorejni) + + endif() + +diff --git a/glass/CMakeLists.txt b/glass/CMakeLists.txt +index a252c2e83..9192bc7b4 100644 +--- a/glass/CMakeLists.txt ++++ b/glass/CMakeLists.txt +@@ -22,7 +22,7 @@ target_include_directories(libglass PUBLIC + $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/src/lib/native/include> + $<INSTALL_INTERFACE:${include_dest}/glass>) + +-install(TARGETS libglass EXPORT libglass DESTINATION "${main_lib_dest}") ++install(TARGETS libglass EXPORT libglass) + install(DIRECTORY src/lib/native/include/ DESTINATION "${include_dest}/glass") + + # +@@ -43,7 +43,7 @@ target_include_directories(libglassnt PUBLIC + $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/src/libnt/native/include> + $<INSTALL_INTERFACE:${include_dest}/glass>) + +-install(TARGETS libglassnt EXPORT libglassnt DESTINATION "${main_lib_dest}") ++install(TARGETS libglassnt EXPORT libglassnt) + install(DIRECTORY src/libnt/native/include/ DESTINATION "${include_dest}/glass") + + # +diff --git a/hal/CMakeLists.txt b/hal/CMakeLists.txt +index 45c55675b..52dd44ad6 100644 +--- a/hal/CMakeLists.txt ++++ b/hal/CMakeLists.txt +@@ -55,7 +55,7 @@ target_link_libraries(hal PUBLIC wpiutil) + + set_property(TARGET hal PROPERTY FOLDER "libraries") + +-install(TARGETS hal EXPORT hal DESTINATION "${main_lib_dest}") ++install(TARGETS hal EXPORT hal) + install(DIRECTORY src/main/native/include/ DESTINATION "${include_dest}/hal") + install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/gen/ DESTINATION "${include_dest}/hal") + +@@ -108,11 +108,7 @@ if (WITH_JAVA) + target_link_libraries(haljni PRIVATE hal_jni_headers) + add_dependencies(haljni hal_jar) + +- if (MSVC) +- install(TARGETS haljni RUNTIME DESTINATION "${jni_lib_dest}" COMPONENT Runtime) +- endif() +- +- install(TARGETS haljni EXPORT haljni DESTINATION "${main_lib_dest}") ++ install(TARGETS haljni EXPORT haljni) + + endif() + +diff --git a/ntcore/CMakeLists.txt b/ntcore/CMakeLists.txt +index cd5b3fb7d..1a97ac0c0 100644 +--- a/ntcore/CMakeLists.txt ++++ b/ntcore/CMakeLists.txt +@@ -33,7 +33,7 @@ target_link_libraries(ntcore PUBLIC wpinet wpiutil) + + set_property(TARGET ntcore PROPERTY FOLDER "libraries") + +-install(TARGETS ntcore EXPORT ntcore DESTINATION "${main_lib_dest}") ++install(TARGETS ntcore EXPORT ntcore) + install(DIRECTORY src/main/native/include/ DESTINATION "${include_dest}/ntcore") + install(DIRECTORY ${WPILIB_BINARY_DIR}/ntcore/generated/main/native/include/ DESTINATION "${include_dest}/ntcore") + +@@ -81,7 +81,7 @@ if (WITH_JAVA) + target_link_libraries(ntcorejni PRIVATE ntcore_jni_headers) + add_dependencies(ntcorejni ntcore_jar) + +- install(TARGETS ntcorejni EXPORT ntcorejni DESTINATION "${main_lib_dest}") ++ install(TARGETS ntcorejni EXPORT ntcorejni) + + endif() + +diff --git a/simulation/halsim_ds_socket/CMakeLists.txt b/simulation/halsim_ds_socket/CMakeLists.txt +index 6d770d9a1..4eb23bb70 100644 +--- a/simulation/halsim_ds_socket/CMakeLists.txt ++++ b/simulation/halsim_ds_socket/CMakeLists.txt +@@ -13,4 +13,4 @@ target_include_directories(halsim_ds_socket PRIVATE src/main/native/include) + + set_property(TARGET halsim_ds_socket PROPERTY FOLDER "libraries") + +-install(TARGETS halsim_ds_socket EXPORT halsim_ds_socket DESTINATION "${main_lib_dest}") ++install(TARGETS halsim_ds_socket EXPORT halsim_ds_socket) +diff --git a/simulation/halsim_gui/CMakeLists.txt b/simulation/halsim_gui/CMakeLists.txt +index 949f9f1e8..957a9c223 100644 +--- a/simulation/halsim_gui/CMakeLists.txt ++++ b/simulation/halsim_gui/CMakeLists.txt +@@ -16,4 +16,4 @@ target_include_directories(halsim_gui PRIVATE src/main/native/include) + + set_property(TARGET halsim_gui PROPERTY FOLDER "libraries") + +-install(TARGETS halsim_gui EXPORT halsim_gui DESTINATION "${main_lib_dest}") ++install(TARGETS halsim_gui EXPORT halsim_gui) +diff --git a/simulation/halsim_ws_client/CMakeLists.txt b/simulation/halsim_ws_client/CMakeLists.txt +index 5bc99dbda..18a2a120d 100644 +--- a/simulation/halsim_ws_client/CMakeLists.txt ++++ b/simulation/halsim_ws_client/CMakeLists.txt +@@ -13,4 +13,4 @@ target_include_directories(halsim_ws_client PRIVATE src/main/native/include) + + set_property(TARGET halsim_ws_client PROPERTY FOLDER "libraries") + +-install(TARGETS halsim_ws_client EXPORT halsim_ws_client DESTINATION "${main_lib_dest}") ++install(TARGETS halsim_ws_client EXPORT halsim_ws_client) +diff --git a/simulation/halsim_ws_core/CMakeLists.txt b/simulation/halsim_ws_core/CMakeLists.txt +index 91bcbb25b..f7e240fd2 100644 +--- a/simulation/halsim_ws_core/CMakeLists.txt ++++ b/simulation/halsim_ws_core/CMakeLists.txt +@@ -13,4 +13,4 @@ target_include_directories(halsim_ws_core PUBLIC src/main/native/include) + + set_property(TARGET halsim_ws_core PROPERTY FOLDER "libraries") + +-install(TARGETS halsim_ws_core EXPORT halsim_ws_core DESTINATION "${main_lib_dest}") ++install(TARGETS halsim_ws_core EXPORT halsim_ws_core) +diff --git a/simulation/halsim_ws_server/CMakeLists.txt b/simulation/halsim_ws_server/CMakeLists.txt +index e5b55c801..370d2f83f 100644 +--- a/simulation/halsim_ws_server/CMakeLists.txt ++++ b/simulation/halsim_ws_server/CMakeLists.txt +@@ -13,4 +13,4 @@ target_include_directories(halsim_ws_server PRIVATE src/main/native/include) + + set_property(TARGET halsim_ws_server PROPERTY FOLDER "libraries") + +-install(TARGETS halsim_ws_server EXPORT halsim_ws_server DESTINATION "${main_lib_dest}") ++install(TARGETS halsim_ws_server EXPORT halsim_ws_server) +diff --git a/wpigui/CMakeLists.txt b/wpigui/CMakeLists.txt +index 59c4d6faf..2a6e6b213 100644 +--- a/wpigui/CMakeLists.txt ++++ b/wpigui/CMakeLists.txt +@@ -37,7 +37,7 @@ add_executable(wpiguidev src/dev/native/cpp/main.cpp) + wpilib_link_macos_gui(wpiguidev) + target_link_libraries(wpiguidev wpigui) + +-install(TARGETS wpigui EXPORT wpigui DESTINATION "${main_lib_dest}") ++install(TARGETS wpigui EXPORT wpigui) + install(DIRECTORY src/main/native/include/ DESTINATION "${include_dest}/wpigui") + + #if (WITH_FLAT_INSTALL) +diff --git a/wpilibNewCommands/CMakeLists.txt b/wpilibNewCommands/CMakeLists.txt +index dc218fa06..fbebf19ea 100644 +--- a/wpilibNewCommands/CMakeLists.txt ++++ b/wpilibNewCommands/CMakeLists.txt +@@ -39,7 +39,7 @@ target_include_directories(wpilibNewCommands PUBLIC + $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/src/main/native/include> + $<INSTALL_INTERFACE:${include_dest}/wpilibNewCommands>) + +-install(TARGETS wpilibNewCommands EXPORT wpilibNewCommands DESTINATION "${main_lib_dest}") ++install(TARGETS wpilibNewCommands EXPORT wpilibNewCommands) + install(DIRECTORY src/main/native/include/ DESTINATION "${include_dest}/wpilibNewCommands") + + if (FLAT_INSTALL_WPILIB) +diff --git a/wpilibc/CMakeLists.txt b/wpilibc/CMakeLists.txt +index 8c2c85ce9..ed8583497 100644 +--- a/wpilibc/CMakeLists.txt ++++ b/wpilibc/CMakeLists.txt +@@ -30,7 +30,7 @@ target_link_libraries(wpilibc PUBLIC hal ntcore wpimath wpiutil) + + set_property(TARGET wpilibc PROPERTY FOLDER "libraries") + +-install(TARGETS wpilibc EXPORT wpilibc DESTINATION "${main_lib_dest}") ++install(TARGETS wpilibc EXPORT wpilibc) + install(DIRECTORY src/main/native/include/ DESTINATION "${include_dest}/wpilibc") + + if (WITH_FLAT_INSTALL) +diff --git a/wpimath/CMakeLists.txt b/wpimath/CMakeLists.txt +index 01fd5d0f8..15cede1b3 100644 +--- a/wpimath/CMakeLists.txt ++++ b/wpimath/CMakeLists.txt +@@ -71,11 +71,7 @@ if (WITH_JAVA) + target_link_libraries(wpimathjni PRIVATE wpimath_jni_headers) + add_dependencies(wpimathjni wpimath_jar) + +- if (MSVC) +- install(TARGETS wpimathjni RUNTIME DESTINATION "${jni_lib_dest}" COMPONENT Runtime) +- endif() +- +- install(TARGETS wpimathjni EXPORT wpimathjni DESTINATION "${main_lib_dest}") ++ install(TARGETS wpimathjni EXPORT wpimathjni) + + endif() + +@@ -116,11 +112,7 @@ target_include_directories(wpimath PUBLIC + $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/src/main/native/include> + $<INSTALL_INTERFACE:${include_dest}/wpimath>) + +-install(TARGETS wpimath EXPORT wpimath DESTINATION "${main_lib_dest}") +- +-if (WITH_JAVA AND MSVC) +- install(TARGETS wpimath RUNTIME DESTINATION "${jni_lib_dest}" COMPONENT Runtime) +-endif() ++install(TARGETS wpimath EXPORT wpimath) + + if (WITH_FLAT_INSTALL) + set (wpimath_config_dir ${wpilib_dest}) +diff --git a/wpinet/CMakeLists.txt b/wpinet/CMakeLists.txt +index 6d92a5640..c30d21827 100644 +--- a/wpinet/CMakeLists.txt ++++ b/wpinet/CMakeLists.txt +@@ -34,11 +34,7 @@ if (WITH_JAVA) + target_link_libraries(wpinetjni PRIVATE wpinet_jni_headers) + add_dependencies(wpinetjni wpinet_jar) + +- if (MSVC) +- install(TARGETS wpinetjni RUNTIME DESTINATION "${jni_lib_dest}" COMPONENT Runtime) +- endif() +- +- install(TARGETS wpinetjni EXPORT wpinetjni DESTINATION "${main_lib_dest}") ++ install(TARGETS wpinetjni EXPORT wpinetjni) + + endif() + +@@ -161,11 +157,7 @@ target_include_directories(wpinet PUBLIC + $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/src/main/native/include> + $<INSTALL_INTERFACE:${include_dest}/wpinet>) + +-install(TARGETS wpinet EXPORT wpinet DESTINATION "${main_lib_dest}") +- +-if (WITH_JAVA AND MSVC) +- install(TARGETS wpinet RUNTIME DESTINATION "${jni_lib_dest}" COMPONENT Runtime) +-endif() ++install(TARGETS wpinet EXPORT wpinet) + + if (WITH_FLAT_INSTALL) + set (wpinet_config_dir ${wpilib_dest}) +diff --git a/wpiutil/CMakeLists.txt b/wpiutil/CMakeLists.txt +index 5db2b4c65..f6486286d 100644 +--- a/wpiutil/CMakeLists.txt ++++ b/wpiutil/CMakeLists.txt +@@ -55,11 +55,7 @@ if (WITH_JAVA) + target_link_libraries(wpiutiljni PRIVATE wpiutil_jni_headers) + add_dependencies(wpiutiljni wpiutil_jar) + +- if (MSVC) +- install(TARGETS wpiutiljni RUNTIME DESTINATION "${jni_lib_dest}" COMPONENT Runtime) +- endif() +- +- install(TARGETS wpiutiljni EXPORT wpiutiljni DESTINATION "${main_lib_dest}") ++ install(TARGETS wpiutiljni EXPORT wpiutiljni) + + endif() + +@@ -161,11 +157,7 @@ target_include_directories(wpiutil PUBLIC + $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/src/main/native/include> + $<INSTALL_INTERFACE:${include_dest}/wpiutil>) + +-install(TARGETS wpiutil EXPORT wpiutil DESTINATION "${main_lib_dest}") +- +-if (WITH_JAVA AND MSVC) +- install(TARGETS wpiutil RUNTIME DESTINATION "${jni_lib_dest}" COMPONENT Runtime) +-endif() ++install(TARGETS wpiutil EXPORT wpiutil) + + if (WITH_FLAT_INSTALL) + set (wpiutil_config_dir ${wpilib_dest}) |