diff options
| author | Ethan Morgan <ethan@gweithio.com> | 2026-02-14 16:44:06 +0000 |
|---|---|---|
| committer | Ethan Morgan <ethan@gweithio.com> | 2026-02-14 16:44:06 +0000 |
| commit | 54409423f767d8b1cf30cb7d0efca6b4ca138823 (patch) | |
| tree | d915ac7828703ce4b963efdd9728a1777ba18c1e /vcpkg/ports/ruckig | |
Diffstat (limited to 'vcpkg/ports/ruckig')
| -rw-r--r-- | vcpkg/ports/ruckig/portfile.cmake | 31 | ||||
| -rw-r--r-- | vcpkg/ports/ruckig/third_party.patch | 47 | ||||
| -rw-r--r-- | vcpkg/ports/ruckig/vcpkg.json | 30 |
3 files changed, 108 insertions, 0 deletions
diff --git a/vcpkg/ports/ruckig/portfile.cmake b/vcpkg/ports/ruckig/portfile.cmake new file mode 100644 index 0000000..0f586a5 --- /dev/null +++ b/vcpkg/ports/ruckig/portfile.cmake @@ -0,0 +1,31 @@ +vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO pantor/ruckig
+ REF "v${VERSION}"
+ SHA512 5399e1f0c61c1c4d96a8a910e4b934b629c6302fd18fd609c7a8bc76156bf0f3f5197ff9e83ac0fc443083e40cc7208d9a2f09070f4f8ab4511f4a6566981b5d
+ HEAD_REF main
+ PATCHES
+ third_party.patch
+)
+
+vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
+ FEATURES
+ cloud BUILD_CLOUD_CLIENT
+)
+
+vcpkg_cmake_configure(
+ SOURCE_PATH "${SOURCE_PATH}"
+ OPTIONS
+ ${FEATURE_OPTIONS}
+ -DBUILD_TESTS=OFF
+ -DBUILD_EXAMPLES=OFF
+)
+
+vcpkg_cmake_install()
+vcpkg_cmake_config_fixup(CONFIG_PATH "lib/cmake/ruckig")
+vcpkg_copy_pdbs()
+
+vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE")
+
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share")
\ No newline at end of file diff --git a/vcpkg/ports/ruckig/third_party.patch b/vcpkg/ports/ruckig/third_party.patch new file mode 100644 index 0000000..c255209 --- /dev/null +++ b/vcpkg/ports/ruckig/third_party.patch @@ -0,0 +1,47 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 701982a..3cedd7f 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -46,10 +46,15 @@ endif()
+
+ if(BUILD_CLOUD_CLIENT)
+ target_sources(ruckig PRIVATE src/ruckig/cloud_client.cpp)
+- target_include_directories(ruckig PUBLIC
+- $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/third_party>
+- $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}/ruckig/third_party>
+- )
++ find_package(nlohmann_json CONFIG REQUIRED)
++ find_package(httplib CONFIG REQUIRED)
++
++ target_link_libraries(ruckig PUBLIC nlohmann_json::nlohmann_json)
++ target_link_libraries(ruckig PRIVATE httplib::httplib)
++ #target_include_directories(ruckig PUBLIC
++ # $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/third_party>
++ # $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}/ruckig/third_party>
++ #)
+ target_compile_definitions(ruckig PUBLIC WITH_CLOUD_CLIENT)
+ endif()
+
+@@ -130,9 +135,9 @@ include(CMakePackageConfigHelpers)
+
+ # Install headers
+ install(DIRECTORY include/ruckig DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
+-if(BUILD_CLOUD_CLIENT)
+- install(DIRECTORY third_party/httplib third_party/nlohmann DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/ruckig/third_party)
+-endif()
++#if(BUILD_CLOUD_CLIENT)
++ #install(DIRECTORY third_party/httplib third_party/nlohmann DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/ruckig/third_party)
++#endif()
+
+ # Install library
+ install(TARGETS ruckig
+diff --git a/src/ruckig/cloud_client.cpp b/src/ruckig/cloud_client.cpp
+index d5dc499..65ab347 100644
+--- a/src/ruckig/cloud_client.cpp
++++ b/src/ruckig/cloud_client.cpp
+@@ -1,4 +1,4 @@
+-#include <httplib/httplib.h>
++#include <httplib.h>
+
+ #include <ruckig/calculator_cloud.hpp>
+
diff --git a/vcpkg/ports/ruckig/vcpkg.json b/vcpkg/ports/ruckig/vcpkg.json new file mode 100644 index 0000000..85e1434 --- /dev/null +++ b/vcpkg/ports/ruckig/vcpkg.json @@ -0,0 +1,30 @@ +{ + "name": "ruckig", + "version": "0.15.3", + "description": "Ruckig generates trajectories on-the-fly, allowing robots and machines to react instantaneously to sensor input.", + "homepage": "https://ruckig.com/", + "license": "MIT", + "dependencies": [ + "eigen3", + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } + ], + "default-features": [ + "cloud" + ], + "features": { + "cloud": { + "description": "Build cloud client to calculate Ruckig Pro trajectories remotely", + "dependencies": [ + "cpp-httplib", + "nlohmann-json" + ] + } + } +} |