Skip to content

Commit

Permalink
Migrate icub-firmware-shared, icub-main and human-dynamics-estimation…
Browse files Browse the repository at this point in the history
… conda packages to be installed via conda-forge (#1727)
  • Loading branch information
traversaro authored Oct 1, 2024
1 parent 443538d commit 0d152d1
Show file tree
Hide file tree
Showing 10 changed files with 18 additions and 54 deletions.
8 changes: 0 additions & 8 deletions .github/workflows/generate-conda-packages.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -180,16 +180,8 @@ jobs:
# specifically because we can't use --skip-existing as these packages are part of the robotology channel
conda mambabuild -m ${CONDA_PREFIX}/conda_build_config.yaml -m ${GITHUB_WORKSPACE}/conda/conda_build_config.yml icub-contrib-common
rm -rf icub-contrib-common
conda mambabuild -m ${CONDA_PREFIX}/conda_build_config.yaml -m ${GITHUB_WORKSPACE}/conda/conda_build_config.yml icub-firmware-shared
rm -rf icub-firmware-shared
conda mambabuild -m ${CONDA_PREFIX}/conda_build_config.yaml -m ${GITHUB_WORKSPACE}/conda/conda_build_config.yml robots-configuration
rm -rf robots-configuration
# 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
# 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
conda mambabuild -m ${CONDA_PREFIX}/conda_build_config.yaml -m ${GITHUB_WORKSPACE}/conda/conda_build_config.yml robot-log-visualizer
rm -rf robot-log-visualizer
conda mambabuild -m ${CONDA_PREFIX}/conda_build_config.yaml -m ${GITHUB_WORKSPACE}/conda/conda_build_config.yml idyntree-matlab-bindings
Expand Down
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ endmacro()
include(RobotologySuperbuildOptions)

# Python-related logic
if(ROBOTOLOGY_USES_PYTHON)
if(ROBOTOLOGY_USES_PYTHON AND NOT ROBOTOLOGY_GENERATE_CONDA_RECIPES)
find_package(Python3 COMPONENTS Interpreter Development REQUIRED)
if(Python3_VERSION VERSION_GREATER_EQUAL 3.12)
execute_process(COMMAND ${Python3_EXECUTABLE} -c "import os;import sysconfig;relative_site_packages = sysconfig.get_path('purelib').replace(sysconfig.get_path('data'), '').lstrip(os.path.sep);print(relative_site_packages)"
Expand Down
8 changes: 2 additions & 6 deletions cmake/BuildHumanDynamicsEstimation.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -45,9 +45,5 @@ ycm_ep_helper(HumanDynamicsEstimation TYPE GIT
ICUB
robometry)

set(HumanDynamicsEstimation_CONDA_DEPENDENCIES eigen)

if(ROBOTOLOGY_USES_PYTHON)
list(APPEND HumanDynamicsEstimation_CONDA_DEPENDENCIES python)
list(APPEND HumanDynamicsEstimation_CONDA_DEPENDENCIES pybind11)
endif()
set(HumanDynamicsEstimation_CONDA_PKG_NAME human-dynamics-estimation)
set(HumanDynamicsEstimation_CONDA_PKG_CONDA_FORGE_OVERRIDE ON)
32 changes: 2 additions & 30 deletions cmake/BuildICUB.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -104,33 +104,5 @@ ycm_ep_helper(ICUB TYPE GIT
-DCREATE_LUA:BOOL=${ROBOTOLOGY_USES_LUA}
${ICUB_PYTHON_INSTALL_CMAKE_ARGS})

set(ICUB_CONDA_DEPENDENCIES ace libopencv gsl ipopt libode qt-main sdl)
set(ICUB_CONDA_BUILD_DEPENDENCIES_EXPLICIT)

if(NOT (APPLE OR WIN32))
list(APPEND ICUB_CONDA_DEPENDENCIES libdc1394)
endif()

if(NOT APPLE)
list(APPEND ICUB_CONDA_DEPENDENCIES freeglut)
endif()
if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
list(APPEND ICUB_CONDA_DEPENDENCIES libglu)
endif()

if(ROBOTOLOGY_USES_ESDCAN)
list(APPEND ICUB_CONDA_DEPENDENCIES esdcan)
endif()

if(ICUB_COMPILE_BINDINGS)
list(APPEND ICUB_CONDA_BUILD_DEPENDENCIES_EXPLICIT swig)
endif()

if(ROBOTOLOGY_USES_PYTHON)
list(APPEND ICUB_CONDA_DEPENDENCIES python)
endif()

if(ROBOTOLOGY_USES_LUA)
list(APPEND ICUB_CONDA_DEPENDENCIES lua)
endif()

set(ICUB_CONDA_PKG_NAME icub-main)
set(ICUB_CONDA_PKG_CONDA_FORGE_OVERRIDE ON)
3 changes: 3 additions & 0 deletions cmake/Buildicub_firmware_shared.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -11,3 +11,6 @@ ycm_ep_helper(icub_firmware_shared TYPE GIT
COMPONENT iCub
FOLDER src
DEPENDS YCM)

set(icub_firmware_shared_CONDA_PKG_NAME icub-firmware-shared)
set(icub_firmware_shared_CONDA_PKG_CONDA_FORGE_OVERRIDE ON)
4 changes: 2 additions & 2 deletions cmake/ProjectsTagsStable.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@ set_tag(osqp_REPOSITORY robotology-dependencies/osqp.git)
set_tag(osqp_TAG v0.6.3.1)
set_tag(manif_TAG 0.0.5)
set_tag(qhull_TAG 2020.2)
set_tag(CppAD_TAG 20240000.2)
set_tag(proxsuite_TAG v0.6.4)
set_tag(CppAD_TAG 20240000.7)
set_tag(proxsuite_TAG v0.6.7)
set_tag(casadi_TAG 3.6.7)
set_tag(casadi-matlab-bindings_TAG v3.6.7.0)

Expand Down
4 changes: 2 additions & 2 deletions cmake/ProjectsTagsUnstable.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@ set_tag(osqp_REPOSITORY robotology-dependencies/osqp.git)
set_tag(osqp_TAG v0.6.3.1)
set_tag(manif_TAG 0.0.5)
set_tag(qhull_TAG 2020.2)
set_tag(CppAD_TAG 20240000.2)
set_tag(proxsuite_TAG v0.6.4)
set_tag(CppAD_TAG 20240000.7)
set_tag(proxsuite_TAG v0.6.7)
set_tag(casadi_TAG 3.6.6)
set_tag(casadi-matlab-bindings_TAG v3.6.6.0)

Expand Down
2 changes: 1 addition & 1 deletion conda/cmake/CondaGenerationOptions.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
# to ensure that binaries belonging to different rebuilds
# can be distinguished even if the version number is the same
if(NOT CONDA_BUILD_NUMBER)
set(CONDA_BUILD_NUMBER 133)
set(CONDA_BUILD_NUMBER 140)
endif()

# This option is enabled only when the metapackages robotology-distro and robotology-distro-all are
Expand Down
3 changes: 2 additions & 1 deletion conda/pure_python_recipe_template/meta.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,8 @@ requirements:

test:
commands:
- pip check
# Do not run pip check on arm64 as pip list does not list qtpy5 and qtwebengine
- pip check # [not arm64]
requires:
- pip

Expand Down
6 changes: 3 additions & 3 deletions releases/latest.releases.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ repositories:
CppAD:
type: git
url: https://github.com/coin-or/CppAD.git
version: 20240000.4
version: 20240000.7
casadi:
type: git
url: https://github.com/casadi/casadi.git
Expand Down Expand Up @@ -122,7 +122,7 @@ repositories:
HumanDynamicsEstimation:
type: git
url: https://github.com/robotology/human-dynamics-estimation.git
version: v4.0.2
version: v4.0.3
human-gazebo:
type: git
url: https://github.com/robotology/human-gazebo.git
Expand Down Expand Up @@ -246,7 +246,7 @@ repositories:
proxsuite:
type: git
url: https://github.com/Simple-Robotics/proxsuite.git
version: v0.6.4
version: v0.6.7
BayesFilters:
type: git
url: https://github.com/robotology/bayes-filters-lib.git
Expand Down

0 comments on commit 0d152d1

Please sign in to comment.