From c3f1a5fe526b374bf566715478ea423232a39429 Mon Sep 17 00:00:00 2001 From: Silvio Traversaro Date: Tue, 24 Sep 2024 10:21:51 +0200 Subject: [PATCH 1/3] Merge wearables in human-dynamics-estimation --- .../workflows/generate-conda-packages.yaml | 2 - cmake/BuildHumanDynamicsEstimation.cmake | 14 ++++--- cmake/Buildwearables.cmake | 38 ------------------- cmake/RobotologySuperbuildLogic.cmake | 1 - .../addPathsToUserEnvVariables.ps1.in | 1 - .../removePathsFromUserEnvVariables.ps1.in | 1 - cmake/template/setup.bat.in | 1 - cmake/template/setup.sh.in | 1 - conda/multisheller/wearables_activate.msh | 5 --- conda/multisheller/wearables_deactivate.msh | 5 --- doc/cmake-options.md | 2 +- doc/environment-variables-configuration.md | 3 +- releases/latest.releases.yaml | 4 -- 13 files changed, 11 insertions(+), 67 deletions(-) delete mode 100644 cmake/Buildwearables.cmake delete mode 100644 conda/multisheller/wearables_activate.msh delete mode 100644 conda/multisheller/wearables_deactivate.msh diff --git a/.github/workflows/generate-conda-packages.yaml b/.github/workflows/generate-conda-packages.yaml index fe89b786b..7e94d21af 100644 --- a/.github/workflows/generate-conda-packages.yaml +++ b/.github/workflows/generate-conda-packages.yaml @@ -187,8 +187,6 @@ jobs: # icub-main needs robotology channel as it also depends on esdcan, and local to avoid that robotology packages are used instead of local built one conda mambabuild -m ${CONDA_PREFIX}/conda_build_config.yaml -m ${GITHUB_WORKSPACE}/conda/conda_build_config.yml -c local -c conda-forge -c robotology icub-main rm -rf icub-main - conda mambabuild -m ${CONDA_PREFIX}/conda_build_config.yaml -m ${GITHUB_WORKSPACE}/conda/conda_build_config.yml wearables - rm -rf wearables # Channels specified explicitly due to https://github.com/robotology/robotology-superbuild/issues/1140 conda mambabuild -m ${CONDA_PREFIX}/conda_build_config.yaml -m ${GITHUB_WORKSPACE}/conda/conda_build_config.yml -c local -c conda-forge human-dynamics-estimation rm -rf human-dynamics-estimation diff --git a/cmake/BuildHumanDynamicsEstimation.cmake b/cmake/BuildHumanDynamicsEstimation.cmake index 58a70cbec..92732f03e 100644 --- a/cmake/BuildHumanDynamicsEstimation.cmake +++ b/cmake/BuildHumanDynamicsEstimation.cmake @@ -7,22 +7,26 @@ include(FindOrBuildPackage) find_or_build_package(YARP QUIET) find_or_build_package(ICUB QUIET) find_or_build_package(iDynTree QUIET) -find_or_build_package(wearables QUIET) find_or_build_package(osqp QUIET) find_or_build_package(OsqpEigen QUIET) +find_or_build_package(robometry QUIET) + +if(WIN32) + list(APPEND HDE_CMAKE_ARGS -DXSENS_MVN_USE_SDK:BOOL=${ROBOTOLOGY_USES_XSENS_MVN_SDK} -DENABLE_XsensSuit:BOOL=${ROBOTOLOGY_USES_XSENS_MVN_SDK} ) +endif() ycm_ep_helper(HumanDynamicsEstimation TYPE GIT STYLE GITHUB REPOSITORY robotology/human-dynamics-estimation.git - TAG master + TAG merge-wearables COMPONENT human_dynamics FOLDER src - CMAKE_ARGS -DHUMANSTATEPROVIDER_ENABLE_VISUALIZER:BOOL=ON + CMAKE_ARGS -DHUMANSTATEPROVIDER_ENABLE_VISUALIZER:BOOL=ON ${HDE_CMAKE_ARGS} DEPENDS iDynTree YARP - wearables osqp OsqpEigen - ICUB) + ICUB + robometry) set(HumanDynamicsEstimation_CONDA_DEPENDENCIES eigen) diff --git a/cmake/Buildwearables.cmake b/cmake/Buildwearables.cmake deleted file mode 100644 index 69a954029..000000000 --- a/cmake/Buildwearables.cmake +++ /dev/null @@ -1,38 +0,0 @@ -# Copyright (C) 2018 iCub Facility, Istituto Italiano di Tecnologia -# CopyPolicy: Released under the terms of the LGPLv2.1 or later, see LGPL.TXT - -include(YCMEPHelper) -include(FindOrBuildPackage) - -find_or_build_package(YARP QUIET) -find_or_build_package(iDynTree QUIET) -find_or_build_package(robometry QUIET) - -set(WEARABLES_CMAKE_ARGS "") -if(WIN32) - list(APPEND WEARABLES_CMAKE_ARGS -DXSENS_MVN_USE_SDK:BOOL=${ROBOTOLOGY_USES_XSENS_MVN_SDK} -DENABLE_XsensSuit:BOOL=${ROBOTOLOGY_USES_XSENS_MVN_SDK} ) -endif() - -list(APPEND WEARABLES_CMAKE_ARGS "-DWEARABLES_COMPILE_PYTHON_BINDINGS:BOOL=${ROBOTOLOGY_USES_PYTHON}") - -if(ROBOTOLOGY_USES_PYTHON AND NOT ROBOTOLOGY_GENERATE_CONDA_RECIPES) - list(APPEND WEARABLES_CMAKE_ARGS "-DWEARABLES_PYTHON_INSTALL_DR=${ROBOTOLOGY_SUPERBUILD_PYTHON_INSTALL_DIR}") -endif() - -ycm_ep_helper(wearables TYPE GIT - STYLE GITHUB - REPOSITORY robotology/wearables.git - TAG master - COMPONENT human_dynamics - FOLDER src - DEPENDS YARP - iDynTree - robometry - CMAKE_ARGS ${WEARABLES_CMAKE_ARGS}) - -if(ROBOTOLOGY_USES_PYTHON) - list(APPEND wearables_CONDA_DEPENDENCIES python) - list(APPEND wearables_CONDA_DEPENDENCIES pybind11) - # https://conda-forge.org/docs/maintainer/knowledge_base.html#pybind11-abi-constraints - list(APPEND wearables_CONDA_DEPENDENCIES pybind11-abi) -endif() diff --git a/cmake/RobotologySuperbuildLogic.cmake b/cmake/RobotologySuperbuildLogic.cmake index 003fa4cd2..30371805c 100644 --- a/cmake/RobotologySuperbuildLogic.cmake +++ b/cmake/RobotologySuperbuildLogic.cmake @@ -146,7 +146,6 @@ endif() # Human Dynamics Estimation if(ROBOTOLOGY_ENABLE_HUMAN_DYNAMICS) find_or_build_package(yarp-devices-forcetorque) - find_or_build_package(wearables) find_or_build_package(HumanDynamicsEstimation) find_or_build_package(human-gazebo) endif() diff --git a/cmake/template/addPathsToUserEnvVariables.ps1.in b/cmake/template/addPathsToUserEnvVariables.ps1.in index 846edf600..57d4b51b2 100644 --- a/cmake/template/addPathsToUserEnvVariables.ps1.in +++ b/cmake/template/addPathsToUserEnvVariables.ps1.in @@ -80,7 +80,6 @@ Add-ValueToUserEnvVariable BLOCKTEST_RESOURCE_PATH $ROBOTOLOGY_SUPERBUILD_INSTAL # ROBOTOLOGY_ENABLE_HUMAN_DYNAMICS-specific lines Add-ValueToUserEnvVariable YARP_DATA_DIRS $ROBOTOLOGY_SUPERBUILD_INSTALL_PREFIX"\share\human-gazebo"; Add-ValueToUserEnvVariable YARP_DATA_DIRS $ROBOTOLOGY_SUPERBUILD_INSTALL_PREFIX"\share\HumanDynamicsEstimation"; -Add-ValueToUserEnvVariable YARP_DATA_DIRS $ROBOTOLOGY_SUPERBUILD_INSTALL_PREFIX"\share\Wearables"; @endcmakeif ROBOTOLOGY_ENABLE_HUMAN_DYNAMICS @cmakeif ROBOTOLOGY_USES_PYTHON diff --git a/cmake/template/removePathsFromUserEnvVariables.ps1.in b/cmake/template/removePathsFromUserEnvVariables.ps1.in index 346f1bed9..ca456ac58 100644 --- a/cmake/template/removePathsFromUserEnvVariables.ps1.in +++ b/cmake/template/removePathsFromUserEnvVariables.ps1.in @@ -83,7 +83,6 @@ Remove-ValueFromUserEnvVariable BLOCKTEST_RESOURCE_PATH $ROBOTOLOGY_SUPERBUILD_I # Cleanup ROBOTOLOGY_ENABLE_HUMAN_DYNAMICS-specific lines Remove-ValueFromUserEnvVariable YARP_DATA_DIRS $ROBOTOLOGY_SUPERBUILD_INSTALL_PREFIX"\share\human-gazebo"; Remove-ValueFromUserEnvVariable YARP_DATA_DIRS $ROBOTOLOGY_SUPERBUILD_INSTALL_PREFIX"\share\HumanDynamicsEstimation"; -Remove-ValueFromUserEnvVariable YARP_DATA_DIRS $ROBOTOLOGY_SUPERBUILD_INSTALL_PREFIX"\share\Wearables"; @endcmakeif ROBOTOLOGY_ENABLE_HUMAN_DYNAMICS @cmakeif ROBOTOLOGY_USES_PYTHON diff --git a/cmake/template/setup.bat.in b/cmake/template/setup.bat.in index 999b10c84..6cd6e411c 100644 --- a/cmake/template/setup.bat.in +++ b/cmake/template/setup.bat.in @@ -41,7 +41,6 @@ set "BLOCKTEST_RESOURCE_PATH"=%ROBOTOLOGY_SUPERBUILD_INSTALL_PREFIX%\bin rem ROBOTOLOGY_ENABLE_HUMAN_DYNAMICS-specific lines set "YARP_DATA_DIRS=%YARP_DATA_DIRS%;%ROBOTOLOGY_SUPERBUILD_INSTALL_PREFIX%\share\human-gazebo" set "YARP_DATA_DIRS=%YARP_DATA_DIRS%;%ROBOTOLOGY_SUPERBUILD_INSTALL_PREFIX%\share\HumanDynamicsEstimation" -set "YARP_DATA_DIRS=%YARP_DATA_DIRS%;%ROBOTOLOGY_SUPERBUILD_INSTALL_PREFIX%\share\Wearables" @endcmakeif ROBOTOLOGY_ENABLE_HUMAN_DYNAMICS @cmakeif ROBOTOLOGY_USES_PYTHON diff --git a/cmake/template/setup.sh.in b/cmake/template/setup.sh.in index 173c88780..c4523676c 100644 --- a/cmake/template/setup.sh.in +++ b/cmake/template/setup.sh.in @@ -45,7 +45,6 @@ export BLOCKTEST_RESOURCE_PATH=${ROBOTOLOGY_SUPERBUILD_INSTALL_PREFIX}/bin # ROBOTOLOGY_ENABLE_HUMAN_DYNAMICS-specific lines export YARP_DATA_DIRS=$YARP_DATA_DIRS:${ROBOTOLOGY_SUPERBUILD_INSTALL_PREFIX}/share/human-gazebo export YARP_DATA_DIRS=$YARP_DATA_DIRS:${ROBOTOLOGY_SUPERBUILD_INSTALL_PREFIX}/share/HumanDynamicsEstimation -export YARP_DATA_DIRS=$YARP_DATA_DIRS:${ROBOTOLOGY_SUPERBUILD_INSTALL_PREFIX}/share/Wearables @endcmakeif ROBOTOLOGY_ENABLE_HUMAN_DYNAMICS @cmakeif ROBOTOLOGY_USES_PYTHON diff --git a/conda/multisheller/wearables_activate.msh b/conda/multisheller/wearables_activate.msh deleted file mode 100644 index 6572a37c9..000000000 --- a/conda/multisheller/wearables_activate.msh +++ /dev/null @@ -1,5 +0,0 @@ -if_(is_set("COMSPEC")).then_([ - sys.list_append("YARP_DATA_DIRS", path.join(env("CONDA_PREFIX"), "Library\\share\\Wearables")) -]).else_([ - sys.list_append("YARP_DATA_DIRS", path.join(env("CONDA_PREFIX"), "share/Wearables")) -]) diff --git a/conda/multisheller/wearables_deactivate.msh b/conda/multisheller/wearables_deactivate.msh deleted file mode 100644 index 96cc7c271..000000000 --- a/conda/multisheller/wearables_deactivate.msh +++ /dev/null @@ -1,5 +0,0 @@ -if_(is_set("COMSPEC")).then_([ - sys.list_remove("YARP_DATA_DIRS", path.join(env("CONDA_PREFIX"), "Library\\share\\Wearables")) -]).else_([ - sys.list_remove("YARP_DATA_DIRS", path.join(env("CONDA_PREFIX"), "share/Wearables")) -]) diff --git a/doc/cmake-options.md b/doc/cmake-options.md index f951a47b5..9462cd376 100644 --- a/doc/cmake-options.md +++ b/doc/cmake-options.md @@ -49,7 +49,7 @@ All these options are named `ROBOTOLOGY_ENABLE_` . | `ROBOTOLOGY_ENABLE_ICUB_HEAD` | The robotology software packages needed on the system that is running on the head of the iCub robot, or in general to communicate directly with iCub low-level devices. | [`icub-firmware`](https://github.com/robotology/icub-firmware), [`icub-firmware-shared`](https://github.com/robotology/icub-firmware-shared). Furthermore, several additional devices are compiled in `YARP` and `ICUB` if this option is enabled. | `OFF` | [Documentation on iCub Head profile.](#icub-head) | | `ROBOTOLOGY_ENABLE_ICUB_BASIC_DEMOS` | The robotology software packages needed to run basic demonstrations with the iCub robot. | [`icub-basic-demos`](https://github.com/robotology/icub-basic-demos), [`speech`](https://github.com/robotology/speech), [`funny-things`](https://github.com/robotology/funny-things). | `OFF` | [Documentation on iCub Basic Demos profile.](#icub-basic-demos) | | `ROBOTOLOGY_ENABLE_TELEOPERATION` | The robotology software packages related to teleoperation. | [`walking-teleoperation`](https://github.com/robotology/walking-teleoperation), [`https://github.com/ami-iit/yarp-openvr-trackers`](https://github.com/ami-iit/yarp-openvr-trackers) and [`https://github.com/ami-iit/yarp-device-openxrheadset`](https://github.com/ami-iit/yarp-device-openxrheadset). | `OFF` | [Documentation on teleoperation profile.](#teleoperation) | -| `ROBOTOLOGY_ENABLE_HUMAN_DYNAMICS` | The robotology software packages related to human dynamics estimation. | [`human-dynamics-estimation`](https://github.com/robotology/human-dynamics-estimation), [`wearables`](https://github.com/robotology/wearables), [`yarp-devices-forcetorque`](https://github.com/robotology/yarp-devices-forcetorque). For options check the profile documentation. | `OFF` | [Documentation on human dynamics profile.](#human-dynamics) | +| `ROBOTOLOGY_ENABLE_HUMAN_DYNAMICS` | The robotology software packages related to human dynamics estimation. | [`human-dynamics-estimation`](https://github.com/robotology/human-dynamics-estimation), [`yarp-devices-forcetorque`](https://github.com/robotology/yarp-devices-forcetorque). For options check the profile documentation. | `OFF` | [Documentation on human dynamics profile.](#human-dynamics) | | `ROBOTOLOGY_ENABLE_EVENT_DRIVEN` | The robotology software packages related to event-driven. | [`event-driven`](https://github.com/robotology/event-driven) | `OFF` | [Documentation on event-driven profile.](#event-driven) | | `ROBOTOLOGY_ENABLE_GRASPING` | The robotology software packages related to grasping. | [`find-superquadric`](https://github.com/robotology/find-superquadric) if the `ROBOTOLOGY_USES_PCL_AND_VTK` option is enabled. | `OFF` | [Documentation on grasping profile.](#grasping) | diff --git a/doc/environment-variables-configuration.md b/doc/environment-variables-configuration.md index 7886576b4..22f7d7150 100644 --- a/doc/environment-variables-configuration.md +++ b/doc/environment-variables-configuration.md @@ -51,8 +51,7 @@ For all profile options not listed, no additional configuration is required. ### Human Dynamics `$ROBOTOLOGY_SUPERBUILD_INSTALL_PREFIX/share/human-gazebo`, -`$ROBOTOLOGY_SUPERBUILD_INSTALL_PREFIX/share/HumanDynamicsEstimation`, -and`$ROBOTOLOGY_SUPERBUILD_INSTALL_PREFIX/share/Wearables` must be appended to the `YARP_DATA_DIRS` environmental variable. +and `$ROBOTOLOGY_SUPERBUILD_INSTALL_PREFIX/share/HumanDynamicsEstimation`` must be appended to the `YARP_DATA_DIRS` environmental variable. ## Dependency-specific configuration steps diff --git a/releases/latest.releases.yaml b/releases/latest.releases.yaml index 03bdfc425..b19bc08f2 100644 --- a/releases/latest.releases.yaml +++ b/releases/latest.releases.yaml @@ -119,10 +119,6 @@ repositories: type: git url: https://github.com/robotology/yarp-devices-forcetorque.git version: v0.3.1 - wearables: - type: git - url: https://github.com/robotology/wearables.git - version: v1.9.0 HumanDynamicsEstimation: type: git url: https://github.com/robotology/human-dynamics-estimation.git From c3c5053e54d28ddb7d541a4e0ca50d1a1658f1a3 Mon Sep 17 00:00:00 2001 From: Silvio Traversaro Date: Wed, 25 Sep 2024 12:45:44 +0200 Subject: [PATCH 2/3] Bump latest.releases.yaml to HDE 4.0.0 --- releases/latest.releases.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releases/latest.releases.yaml b/releases/latest.releases.yaml index b19bc08f2..d0719eb7d 100644 --- a/releases/latest.releases.yaml +++ b/releases/latest.releases.yaml @@ -122,7 +122,7 @@ repositories: HumanDynamicsEstimation: type: git url: https://github.com/robotology/human-dynamics-estimation.git - version: v3.1.1 + version: v4.0.0 human-gazebo: type: git url: https://github.com/robotology/human-gazebo.git From 89a6dcd08d224a4bdf4fafbaf61e0a3a81be2af3 Mon Sep 17 00:00:00 2001 From: Silvio Traversaro Date: Wed, 25 Sep 2024 14:14:37 +0200 Subject: [PATCH 3/3] Update BuildHumanDynamicsEstimation.cmake --- cmake/BuildHumanDynamicsEstimation.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmake/BuildHumanDynamicsEstimation.cmake b/cmake/BuildHumanDynamicsEstimation.cmake index 92732f03e..eb6935ae7 100644 --- a/cmake/BuildHumanDynamicsEstimation.cmake +++ b/cmake/BuildHumanDynamicsEstimation.cmake @@ -18,7 +18,7 @@ endif() ycm_ep_helper(HumanDynamicsEstimation TYPE GIT STYLE GITHUB REPOSITORY robotology/human-dynamics-estimation.git - TAG merge-wearables + TAG master COMPONENT human_dynamics FOLDER src CMAKE_ARGS -DHUMANSTATEPROVIDER_ENABLE_VISUALIZER:BOOL=ON ${HDE_CMAKE_ARGS}