Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Migrate icub-firmware-shared, icub-main and human-dynamics-estimation conda packages to be installed via conda-forge #1727

Merged
merged 9 commits into from
Oct 1, 2024
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
Loading