From 4582f2558e1f4d5d718d3bfbd025279f30d832b8 Mon Sep 17 00:00:00 2001 From: Silvio Traversaro Date: Thu, 17 Jun 2021 09:39:59 +0200 Subject: [PATCH 01/16] Update ProjectsTagsStable.cmake --- cmake/ProjectsTagsStable.cmake | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/cmake/ProjectsTagsStable.cmake b/cmake/ProjectsTagsStable.cmake index 619406bff..b9fccc7fb 100644 --- a/cmake/ProjectsTagsStable.cmake +++ b/cmake/ProjectsTagsStable.cmake @@ -6,7 +6,8 @@ endmacro() # External projects set_tag(osqp_TAG v0.6.2) -set_tag(manif_TAG 0.0.4) +set_tag(manif_REPOSITORY robotology-dependencies/manif.git +set_tag(manif_TAG 0.0.4.1) set_tag(qhull_TAG v8.0.2) set_tag(CppAD_TAG 20210000.4) set_tag(casadi 3.5.5.3) From 53e5bcd685aafddefdce4dc60485afff1ed78d7e Mon Sep 17 00:00:00 2001 From: Silvio Traversaro Date: Thu, 17 Jun 2021 09:40:15 +0200 Subject: [PATCH 02/16] Update ProjectsTagsUnstable.cmake --- cmake/ProjectsTagsUnstable.cmake | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/cmake/ProjectsTagsUnstable.cmake b/cmake/ProjectsTagsUnstable.cmake index e9156a7e8..3d398babc 100644 --- a/cmake/ProjectsTagsUnstable.cmake +++ b/cmake/ProjectsTagsUnstable.cmake @@ -6,7 +6,8 @@ endmacro() # External projects set_tag(osqp_TAG v0.6.2) -set_tag(manif_TAG 0.0.4) +set_tag(manif_REPOSITORY robotology-dependencies/manif.git +set_tag(manif_TAG 0.0.4.1) set_tag(qhull_TAG v8.0.2) set_tag(CppAD_TAG 20210000.4) set_tag(casadi 3.5.5.3) From 3c1cb380f36f3f75bc0e9076da673a9617a609c4 Mon Sep 17 00:00:00 2001 From: Silvio Traversaro Date: Thu, 17 Jun 2021 09:40:55 +0200 Subject: [PATCH 03/16] Update latest.releases.yaml --- releases/latest.releases.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/releases/latest.releases.yaml b/releases/latest.releases.yaml index f62b9c500..6215905f8 100644 --- a/releases/latest.releases.yaml +++ b/releases/latest.releases.yaml @@ -9,8 +9,8 @@ repositories: version: v0.6.2 manif: type: git - url: https://github.com/artivis/manif.git - version: 0.0.4 + url: https://github.com/robotology-dependencies/manif.git + version: 0.0.4.1 qhull: type: git url: https://github.com/qhull/qhull.git From 0981e95153a4f720df235b1bb836be4c93b047af Mon Sep 17 00:00:00 2001 From: Silvio Traversaro Date: Thu, 17 Jun 2021 09:42:18 +0200 Subject: [PATCH 04/16] Update Buildmanif.cmake --- cmake/Buildmanif.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmake/Buildmanif.cmake b/cmake/Buildmanif.cmake index 1c85a2073..cdfced797 100644 --- a/cmake/Buildmanif.cmake +++ b/cmake/Buildmanif.cmake @@ -10,7 +10,7 @@ ycm_ep_helper(manif TYPE GIT TAG master COMPONENT external FOLDER src - CMAKE_ARGS -DBUILD_TESTING:BOOL=OFF -DBUILD_EXAMPLES:BOOL=OFF) + CMAKE_ARGS -DBUILD_TESTING:BOOL=OFF -DBUILD_EXAMPLES:BOOL=OFF -DBUILD_PYTHON_BINDINGS:BOOL=${ROBOTOLOGY_USES_PYTHON}) set(manif_CONDA_PKG_NAME manif) set(manif_CONDA_PKG_CONDA_FORGE_OVERRIDE ON) From ebe301c9bf5e5e867b84770c849f602da389e0a5 Mon Sep 17 00:00:00 2001 From: Silvio Traversaro Date: Thu, 17 Jun 2021 10:19:46 +0200 Subject: [PATCH 05/16] Update ProjectsTagsUnstable.cmake --- cmake/ProjectsTagsUnstable.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmake/ProjectsTagsUnstable.cmake b/cmake/ProjectsTagsUnstable.cmake index 3d398babc..d5d81d885 100644 --- a/cmake/ProjectsTagsUnstable.cmake +++ b/cmake/ProjectsTagsUnstable.cmake @@ -6,7 +6,7 @@ endmacro() # External projects set_tag(osqp_TAG v0.6.2) -set_tag(manif_REPOSITORY robotology-dependencies/manif.git +set_tag(manif_REPOSITORY robotology-dependencies/manif.git) set_tag(manif_TAG 0.0.4.1) set_tag(qhull_TAG v8.0.2) set_tag(CppAD_TAG 20210000.4) From 0a76c51902d6524dce3854801677a8170c6bb857 Mon Sep 17 00:00:00 2001 From: Silvio Traversaro Date: Thu, 17 Jun 2021 10:20:10 +0200 Subject: [PATCH 06/16] Update ProjectsTagsStable.cmake --- cmake/ProjectsTagsStable.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmake/ProjectsTagsStable.cmake b/cmake/ProjectsTagsStable.cmake index b9fccc7fb..f07ac8c0a 100644 --- a/cmake/ProjectsTagsStable.cmake +++ b/cmake/ProjectsTagsStable.cmake @@ -6,7 +6,7 @@ endmacro() # External projects set_tag(osqp_TAG v0.6.2) -set_tag(manif_REPOSITORY robotology-dependencies/manif.git +set_tag(manif_REPOSITORY robotology-dependencies/manif.git) set_tag(manif_TAG 0.0.4.1) set_tag(qhull_TAG v8.0.2) set_tag(CppAD_TAG 20210000.4) From 46bfd854c25b971021584a2c358a8bbe08cda91c Mon Sep 17 00:00:00 2001 From: Silvio Traversaro Date: Thu, 17 Jun 2021 10:22:26 +0200 Subject: [PATCH 07/16] Update Buildbipedal-locomotion-framework.cmake --- cmake/Buildbipedal-locomotion-framework.cmake | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/cmake/Buildbipedal-locomotion-framework.cmake b/cmake/Buildbipedal-locomotion-framework.cmake index 9feaa7d8c..a85d991c8 100644 --- a/cmake/Buildbipedal-locomotion-framework.cmake +++ b/cmake/Buildbipedal-locomotion-framework.cmake @@ -66,4 +66,8 @@ if(ROBOTOLOGY_USES_PYTHON) list(APPEND bipedal-locomotion-framework_CONDA_DEPENDENCIES pybind11-abi) list(APPEND bipedal-locomotion-framework_CONDA_DEPENDENCIES python) list(APPEND bipedal-locomotion-framework_CONDA_DEPENDENCIES numpy) + # manifpy is not available on Windows on conda-forge, see https://github.com/conda-forge/manif-feedstock/issues/7 + if(NOT WIN32) + list(APPEND bipedal-locomotion-framework_CONDA_DEPENDENCIES manifpy) + endif() endif() From 7df6ee5c469bf8d78af64bf81ac7b10766c3bdd6 Mon Sep 17 00:00:00 2001 From: Silvio Traversaro Date: Thu, 17 Jun 2021 15:12:21 +0200 Subject: [PATCH 08/16] Update CHANGELOG.md --- CHANGELOG.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f2ae55584..08df71ea4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,8 +6,9 @@ The format of this document is based on [Keep a Changelog](https://keepachangelo ## [Unreleased] ### Added -- Add `nlohmann-json` dependency to the superbuild (https://github.com/robotology/robotology-superbuild/pull/776) +- Add `nlohmann-json` dependency to the superbuild (https://github.com/robotology/robotology-superbuild/pull/776). - In `YARP`, all the `fake***` YARP devices are now enabled (https://github.com/robotology/robotology-superbuild/pull/797). +- `pybind11` has been added as dependency for the `ROBOTOLOGY_USES_PYTHON` option (https://github.com/robotology/robotology-superbuild/pull/800), to enable compilation of Python bindings of `manif` and `bipedal-locomotion-framework`. ## [2021.05] - 2021-05-31 From efdbfc95cf874c9f9af2790d9d2e199681d96969 Mon Sep 17 00:00:00 2001 From: Silvio Traversaro Date: Thu, 17 Jun 2021 15:14:19 +0200 Subject: [PATCH 09/16] Update cmake-options.md --- doc/cmake-options.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/cmake-options.md b/doc/cmake-options.md index 1c57a8147..096137c6f 100644 --- a/doc/cmake-options.md +++ b/doc/cmake-options.md @@ -379,13 +379,13 @@ Support for this dependency is enabled by the `ROBOTOLOGY_USES_PYTHON` CMake opt #### Ubuntu using apt Install Python and the necessary development files using the following command: ~~~ -sudo apt-get install python3-dev python3-numpy +sudo apt-get install python3-dev python3-numpy python3-pybind11 pybind11-dev ~~~ #### Conda To install python and the other required dependencies when using `conda-forge` provided dependencies, use: ~~~ -conda install -c conda-forge python numpy swig +conda install -c conda-forge python numpy swig pybind11 ~~~ ### Check the installation From a2da8918f9a99cc8d57d407b14a07c1f09db372f Mon Sep 17 00:00:00 2001 From: Silvio Traversaro Date: Thu, 17 Jun 2021 15:14:49 +0200 Subject: [PATCH 10/16] Update ci.yml --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 05212c178..f1b46c512 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -83,7 +83,7 @@ jobs: # Actual dependencies mamba install ace asio boost eigen gazebo glew glfw gsl ipopt irrlicht libjpeg-turbo libmatio libode libxml2 nlohmann_json opencv pkg-config portaudio qt sdl sdl2 sqlite tinyxml spdlog # Python - mamba install numpy swig + mamba install numpy swig pybind11 # Additional dependencies useful only on Linux - name: Dependencies [Conda/Linux] From c961116572a8e1f4ca838c94dee6cb12903bfa80 Mon Sep 17 00:00:00 2001 From: Silvio Traversaro Date: Thu, 17 Jun 2021 15:15:57 +0200 Subject: [PATCH 11/16] Update install_debian.sh --- .ci/install_debian.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.ci/install_debian.sh b/.ci/install_debian.sh index 5daa55e66..438070a79 100644 --- a/.ci/install_debian.sh +++ b/.ci/install_debian.sh @@ -16,7 +16,7 @@ apt-get install -y bash-completion build-essential cmake cmake-curses-gui coinor apt-get install -y libmatio-dev libirrlicht-dev # Python -apt-get install -y python3-dev python3-numpy +apt-get install -y python3-dev python3-numpy python3-pybind11 pybind11-dev # Octave apt-get install -y liboctave-dev From a0cfeb9b04afdfc016f55d86e550d364ad4962f9 Mon Sep 17 00:00:00 2001 From: Silvio Traversaro Date: Mon, 21 Jun 2021 12:47:17 +0200 Subject: [PATCH 12/16] Update Buildmanif.cmake --- cmake/Buildmanif.cmake | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/cmake/Buildmanif.cmake b/cmake/Buildmanif.cmake index cdfced797..515900a2e 100644 --- a/cmake/Buildmanif.cmake +++ b/cmake/Buildmanif.cmake @@ -4,13 +4,20 @@ include(YCMEPHelper) +# Workaround for https://github.com/robotology/robotology-superbuild/issues/802 +if(ROBOTOLOGY_USES_PYTHON AND NOT WIN32) + set(BUILD_PYTHON_BINDINGS ON) +else() + set(BUILD_PYTHON_BINDINGS OFF) +endif() + ycm_ep_helper(manif TYPE GIT STYLE GITHUB REPOSITORY artivis/manif.git TAG master COMPONENT external FOLDER src - CMAKE_ARGS -DBUILD_TESTING:BOOL=OFF -DBUILD_EXAMPLES:BOOL=OFF -DBUILD_PYTHON_BINDINGS:BOOL=${ROBOTOLOGY_USES_PYTHON}) + CMAKE_ARGS -DBUILD_TESTING:BOOL=OFF -DBUILD_EXAMPLES:BOOL=OFF -DBUILD_PYTHON_BINDINGS:BOOL=${BUILD_PYTHON_BINDINGS}) set(manif_CONDA_PKG_NAME manif) set(manif_CONDA_PKG_CONDA_FORGE_OVERRIDE ON) From ce69682bb1042ab637d186b186b635403373a554 Mon Sep 17 00:00:00 2001 From: Silvio Traversaro Date: Tue, 22 Jun 2021 10:42:39 +0200 Subject: [PATCH 13/16] Update Buildbipedal-locomotion-framework.cmake --- cmake/Buildbipedal-locomotion-framework.cmake | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/cmake/Buildbipedal-locomotion-framework.cmake b/cmake/Buildbipedal-locomotion-framework.cmake index a85d991c8..b4c6d059f 100644 --- a/cmake/Buildbipedal-locomotion-framework.cmake +++ b/cmake/Buildbipedal-locomotion-framework.cmake @@ -40,6 +40,13 @@ if(ROBOTOLOGY_USES_PYTHON AND ROBOTOLOGY_GENERATE_CONDA_RECIPES) list(APPEND bipedal-locomotion-framework_OPTIONAL_CMAKE_ARGS "-DFRAMEWORK_DETECT_ACTIVE_PYTHON_SITEPACKAGES:BOOL=ON") endif() +# Workaround for https://github.com/robotology/robotology-superbuild/issues/802 +if(ROBOTOLOGY_USES_PYTHON AND NOT WIN32) + set(BUILD_PYTHON_BINDINGS ON) +else() + set(BUILD_PYTHON_BINDINGS OFF) +endif() + ycm_ep_helper(bipedal-locomotion-framework TYPE GIT STYLE GITHUB REPOSITORY dic-iit/bipedal-locomotion-framework.git @@ -54,6 +61,7 @@ ycm_ep_helper(bipedal-locomotion-framework TYPE GIT -DFRAMEWORK_USE_cppad:BOOL=${ROBOTOLOGY_ENABLE_DYNAMICS_FULL_DEPS} -DFRAMEWORK_USE_casadi:BOOL=${ROBOTOLOGY_ENABLE_DYNAMICS_FULL_DEPS} -DFRAMEWORK_USE_LieGroupControllers:BOOL=${ROBOTOLOGY_ENABLE_DYNAMICS_FULL_DEPS} + -DFRAMEWORK_COMPILE_PYTHON_BINDINGS:BOOL=${BUILD_PYTHON_BINDINGS} ${bipedal-locomotion-framework_OPTIONAL_CMAKE_ARGS} DEPENDS ${bipedal-locomotion-framework_DEPENDS}) From ce6256075584c4e72e4d746421bdd903cbcef10c Mon Sep 17 00:00:00 2001 From: Silvio Traversaro Date: Wed, 23 Jun 2021 11:20:46 +0200 Subject: [PATCH 14/16] Update Buildbipedal-locomotion-framework.cmake --- cmake/Buildbipedal-locomotion-framework.cmake | 1 + 1 file changed, 1 insertion(+) diff --git a/cmake/Buildbipedal-locomotion-framework.cmake b/cmake/Buildbipedal-locomotion-framework.cmake index b4c6d059f..ff24b5646 100644 --- a/cmake/Buildbipedal-locomotion-framework.cmake +++ b/cmake/Buildbipedal-locomotion-framework.cmake @@ -67,6 +67,7 @@ ycm_ep_helper(bipedal-locomotion-framework TYPE GIT set(bipedal-locomotion-framework_CONDA_DEPENDENCIES eigen) list(APPEND bipedal-locomotion-framework_CONDA_DEPENDENCIES nlohmann_json) +list(APPEND bipedal-locomotion-framework_CONDA_DEPENDENCIES spdlog) if(ROBOTOLOGY_USES_PYTHON) list(APPEND bipedal-locomotion-framework_CONDA_DEPENDENCIES pybind11) From e946165561d19261eead27dec60f31f655fb6e38 Mon Sep 17 00:00:00 2001 From: Silvio Traversaro Date: Wed, 23 Jun 2021 11:30:21 +0200 Subject: [PATCH 15/16] Update generate-conda-packages.yaml --- .github/workflows/generate-conda-packages.yaml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/generate-conda-packages.yaml b/.github/workflows/generate-conda-packages.yaml index 2ae4823c7..213fbc668 100644 --- a/.github/workflows/generate-conda-packages.yaml +++ b/.github/workflows/generate-conda-packages.yaml @@ -116,7 +116,8 @@ jobs: conda mambabuild -m ${CONDA_PREFIX}/conda_build_config.yaml -m ${GITHUB_WORKSPACE}/conda/conda_build_config.yml yarp-matlab-bindings conda mambabuild -m ${CONDA_PREFIX}/conda_build_config.yaml -m ${GITHUB_WORKSPACE}/conda/conda_build_config.yml wb-toolbox conda mambabuild -m ${CONDA_PREFIX}/conda_build_config.yaml -m ${GITHUB_WORKSPACE}/conda/conda_build_config.yml unicycle-footstep-planner - conda mambabuild -m ${CONDA_PREFIX}/conda_build_config.yaml -m ${GITHUB_WORKSPACE}/conda/conda_build_config.yml bipedal-locomotion-framework + # For blf conda build is used as a workaround for https://github.com/robotology/robotology-superbuild/pull/800 + conda build -m ${CONDA_PREFIX}/conda_build_config.yaml -m ${GITHUB_WORKSPACE}/conda/conda_build_config.yml bipedal-locomotion-framework conda mambabuild -m ${CONDA_PREFIX}/conda_build_config.yaml -m ${GITHUB_WORKSPACE}/conda/conda_build_config.yml wearables conda mambabuild -m ${CONDA_PREFIX}/conda_build_config.yaml -m ${GITHUB_WORKSPACE}/conda/conda_build_config.yml icub-models conda mambabuild -m ${CONDA_PREFIX}/conda_build_config.yaml -m ${GITHUB_WORKSPACE}/conda/conda_build_config.yml blocktest From d17a70757cf3459907a357e535445c05d8b3ebf7 Mon Sep 17 00:00:00 2001 From: Silvio Traversaro Date: Fri, 25 Jun 2021 10:06:25 +0200 Subject: [PATCH 16/16] Update generate-conda-packages.yaml --- .github/workflows/generate-conda-packages.yaml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/workflows/generate-conda-packages.yaml b/.github/workflows/generate-conda-packages.yaml index 213fbc668..fa8dcbe4d 100644 --- a/.github/workflows/generate-conda-packages.yaml +++ b/.github/workflows/generate-conda-packages.yaml @@ -116,8 +116,10 @@ jobs: conda mambabuild -m ${CONDA_PREFIX}/conda_build_config.yaml -m ${GITHUB_WORKSPACE}/conda/conda_build_config.yml yarp-matlab-bindings conda mambabuild -m ${CONDA_PREFIX}/conda_build_config.yaml -m ${GITHUB_WORKSPACE}/conda/conda_build_config.yml wb-toolbox conda mambabuild -m ${CONDA_PREFIX}/conda_build_config.yaml -m ${GITHUB_WORKSPACE}/conda/conda_build_config.yml unicycle-footstep-planner - # For blf conda build is used as a workaround for https://github.com/robotology/robotology-superbuild/pull/800 - conda build -m ${CONDA_PREFIX}/conda_build_config.yaml -m ${GITHUB_WORKSPACE}/conda/conda_build_config.yml bipedal-locomotion-framework + # blf is currently disabled, see https://github.com/robotology/robotology-superbuild/issues/806 + # When re-enabled, remember to use conda build and not conda mambabuild for https://github.com/robotology/robotology-superbuild/pull/800#issuecomment-866679447 + # conda build -m ${CONDA_PREFIX}/conda_build_config.yaml -m ${GITHUB_WORKSPACE}/conda/conda_build_config.yml bipedal-locomotion-framework + rm -rf bipedal-locomotion-framework conda mambabuild -m ${CONDA_PREFIX}/conda_build_config.yaml -m ${GITHUB_WORKSPACE}/conda/conda_build_config.yml wearables conda mambabuild -m ${CONDA_PREFIX}/conda_build_config.yaml -m ${GITHUB_WORKSPACE}/conda/conda_build_config.yml icub-models conda mambabuild -m ${CONDA_PREFIX}/conda_build_config.yaml -m ${GITHUB_WORKSPACE}/conda/conda_build_config.yml blocktest