diff options
Diffstat (limited to 'vcpkg/scripts/test_ports/vcpkg-ci-dartsim')
4 files changed, 105 insertions, 0 deletions
diff --git a/vcpkg/scripts/test_ports/vcpkg-ci-dartsim/portfile.cmake b/vcpkg/scripts/test_ports/vcpkg-ci-dartsim/portfile.cmake new file mode 100644 index 0000000..dd25706 --- /dev/null +++ b/vcpkg/scripts/test_ports/vcpkg-ci-dartsim/portfile.cmake @@ -0,0 +1,10 @@ +set(VCPKG_POLICY_EMPTY_PACKAGE enabled) + +vcpkg_find_acquire_program(PKGCONFIG) + +vcpkg_cmake_configure( + SOURCE_PATH "${CURRENT_PORT_DIR}/project" + OPTIONS + "-DPKG_CONFIG_EXECUTABLE=${PKGCONFIG}" +) +vcpkg_cmake_build() diff --git a/vcpkg/scripts/test_ports/vcpkg-ci-dartsim/project/CMakeLists.txt b/vcpkg/scripts/test_ports/vcpkg-ci-dartsim/project/CMakeLists.txt new file mode 100644 index 0000000..253dd11 --- /dev/null +++ b/vcpkg/scripts/test_ports/vcpkg-ci-dartsim/project/CMakeLists.txt @@ -0,0 +1,35 @@ +cmake_minimum_required(VERSION 3.30) +project(dartsim-test CXX) + +set(CMAKE_CXX_STANDARD 17) +set(CMAKE_CXX_STANDARD_REQUIRED TRUE) + +# https://github.com/dartsim/dart/issues/753#issuecomment-264694898 +# https://github.com/dartsim/dart/pull/956/files +if(MSVC) + add_compile_options("/permissive-") +endif() + +block(SCOPE_FOR VARIABLES) + find_package(DART CONFIG REQUIRED) + add_library(target::dart ALIAS dart) + + add_executable(main-dart main.cpp) + target_link_libraries(main-dart PRIVATE target::dart) + + # check link libs from all components + file(GLOB components RELATIVE "${DART_DIR}" "${DART_DIR}/dart_*Component.cmake") + list(TRANSFORM components REPLACE "^dart_(.*)Component.cmake\$" "\\1") + find_package(DART CONFIG COMPONENTS ${components}) + + add_executable(main-all main.cpp) + target_link_libraries(main-all PRIVATE ${DART_LIBRARIES}) +endblock() + +block(SCOPE_FOR VARIABLES) + find_package(PkgConfig REQUIRED) + pkg_check_modules(dartsim_pc dart REQUIRED IMPORTED_TARGET) + + add_executable(main-pkconfig main.cpp) + target_link_libraries(main-pkconfig PRIVATE PkgConfig::dartsim_pc) +endblock() diff --git a/vcpkg/scripts/test_ports/vcpkg-ci-dartsim/project/main.cpp b/vcpkg/scripts/test_ports/vcpkg-ci-dartsim/project/main.cpp new file mode 100644 index 0000000..61bbe04 --- /dev/null +++ b/vcpkg/scripts/test_ports/vcpkg-ci-dartsim/project/main.cpp @@ -0,0 +1,6 @@ +#include <dart/dart.hpp> + +int main() +{ + dart::simulation::WorldPtr world(new dart::simulation::World); +} diff --git a/vcpkg/scripts/test_ports/vcpkg-ci-dartsim/vcpkg.json b/vcpkg/scripts/test_ports/vcpkg-ci-dartsim/vcpkg.json new file mode 100644 index 0000000..8579597 --- /dev/null +++ b/vcpkg/scripts/test_ports/vcpkg-ci-dartsim/vcpkg.json @@ -0,0 +1,54 @@ +{ + "name": "vcpkg-ci-dartsim", + "version-string": "ci", + "description": "Validates dartsim within CI", + "homepage": "https://github.com/microsoft/vcpkg", + "license": "MIT", + "dependencies": [ + { + "name": "dartsim", + "default-features": false + }, + { + "name": "vcpkg-cmake", + "host": true + } + ], + "default-features": [ + "all" + ], + "features": { + "all": { + "description": "Test all features", + "dependencies": [ + { + "name": "dartsim", + "default-features": false, + "features": [ + "collision-bullet", + "collision-ode", + "spdlog", + "utils" + ] + }, + { + "name": "dartsim", + "default-features": false, + "features": [ + "utils-urdf" + ], + "platform": "!staticcrt" + }, + { + "name": "dartsim", + "default-features": false, + "features": [ + "gui", + "gui-osg" + ], + "platform": "!arm & !android" + } + ] + } + } +} |