From 257c2c5cd6042cba3a3857ef831b04a242337960 Mon Sep 17 00:00:00 2001 From: ManifoldFR Date: Wed, 12 Feb 2025 20:49:39 +0100 Subject: [PATCH 1/4] Change from cmake-format to gersemi for formatting CMake listfiles --- .cmake-format.yaml | 58 ----------------------------------------- .gersemirc | 12 +++++++++ .pre-commit-config.yaml | 7 +++-- 3 files changed, 15 insertions(+), 62 deletions(-) delete mode 100644 .cmake-format.yaml create mode 100644 .gersemirc diff --git a/.cmake-format.yaml b/.cmake-format.yaml deleted file mode 100644 index 6758cd2853..0000000000 --- a/.cmake-format.yaml +++ /dev/null @@ -1,58 +0,0 @@ -markup: - first_comment_is_literal: true -format: - line_width: 100 -parse: - additional_commands: - cxx_flags_by_compiler_frontend: - pargs: 0 - kwargs: - OUTPUT: 1 - GNU: '*' - MSVC: '*' - FILTER: 0 - modernize_target_link_libraries: - pargs: 1 - kwargs: - SCOPE: 1 - TARGETS: '*' - LIBRARIES: '*' - INCLUDE_DIRS: '*' - pinocchio_target: - pargs: 1 - kwargs: - INTERFACE: 0 - SCALAR: 1 - LIBRARY_PUBLIC_SCOPE: 1 - SOURCES: '*' - add_pinocchio_cpp_example: - pargs: 1 - kwargs: - PARSERS: 0 - CPPAD: 0 - CPPADCG: 0 - CASADI: 0 - add_pinocchio_unit_test: - pargs: 1 - kwargs: - HEADER_ONLY: 0 - PARSERS: 0 - EXTRA: 0 - COLLISION: 0 - PARALLEL: 0 - PARSERS_OPTIONAL: 0 - EXTRA_OPTIONAL: 0 - COLLISION_OPTIONAL: 0 - PARALLEL_OPTIONAL: 0 - PACKAGES: '*' - install_python_files: - pargs: 0 - kwargs: - MODULE: 1 - FILES: '*' - add_project_dependency: - pargs: '*' - kwargs: - PKG_CONFIG_REQUIRES: 1 - FOR_COMPONENT: 1 - FIND_EXTERNAL: 1 diff --git a/.gersemirc b/.gersemirc new file mode 100644 index 0000000000..eedf1979f6 --- /dev/null +++ b/.gersemirc @@ -0,0 +1,12 @@ +definitions: [ + ./benchmark, + ./bindings, + ./CMakeLists.txt, + ./cmake, + ./src, + ./unittest, + ./utils + ] +line_length: 100 +indent: 2 +warn_about_unknown_commands: false diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 8673a90b5e..cca6dbd65e 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -31,11 +31,10 @@ repos: hooks: - id: ruff - id: ruff-format - - repo: https://github.com/cheshirekow/cmake-format-precommit - rev: v0.6.13 + - repo: https://github.com/BlankSpruce/gersemi + rev: 0.19.0 hooks: - - id: cmake-format - additional_dependencies: [pyyaml>=5.1] + - id: gersemi exclude: pinocchiopy.pc.cmake - repo: https://github.com/Lucas-C/pre-commit-hooks rev: v1.5.5 From d80ff47ec821c04767e88c83d836dff24c971b98 Mon Sep 17 00:00:00 2001 From: ManifoldFR Date: Wed, 12 Feb 2025 20:53:11 +0100 Subject: [PATCH 2/4] pre-commit: run --all (reformat listfiles using gersemi) --- .../cmake/linux-debug-toolchain.cmake | 4 +- CMakeLists.txt | 255 ++-- benchmark/CMakeLists.txt | 46 +- bindings/CMakeLists.txt | 4 +- bindings/python/CMakeLists.txt | 193 ++- examples/CMakeLists.txt | 46 +- examples/casadi/CMakeLists.txt | 6 +- examples/codegen/CMakeLists.txt | 18 +- examples/cppad/CMakeLists.txt | 11 +- sources.cmake | 1302 +++++++++-------- src/CMakeLists.txt | 236 +-- unittest/CMakeLists.txt | 290 ++-- unittest/algorithm/utils/CMakeLists.txt | 4 +- unittest/casadi/CMakeLists.txt | 26 +- unittest/cppad/CMakeLists.txt | 16 +- unittest/cppadcg/CMakeLists.txt | 16 +- unittest/packaging/external/CMakeLists.txt | 11 +- unittest/packaging/pkgconfig/CMakeLists.txt | 6 +- unittest/python/CMakeLists.txt | 108 +- unittest/python/casadi/CMakeLists.txt | 4 +- unittest/python/pybind11/CMakeLists.txt | 13 +- utils/CMakeLists.txt | 4 +- 22 files changed, 1403 insertions(+), 1216 deletions(-) diff --git a/.github/workflows/cmake/linux-debug-toolchain.cmake b/.github/workflows/cmake/linux-debug-toolchain.cmake index a56234b0a3..a08155ee86 100644 --- a/.github/workflows/cmake/linux-debug-toolchain.cmake +++ b/.github/workflows/cmake/linux-debug-toolchain.cmake @@ -1,6 +1,4 @@ # Don't generate debug symbols. # This is useless for the CI build (we don't retrieve any binaries) and can stop the build # by taking all the disk space. -set(CMAKE_CXX_FLAGS_DEBUG - "" - CACHE STRING "") +set(CMAKE_CXX_FLAGS_DEBUG "" CACHE STRING "") diff --git a/CMakeLists.txt b/CMakeLists.txt index df25fb61b8..564c3837c0 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -6,8 +6,9 @@ cmake_minimum_required(VERSION 3.10) set(PROJECT_NAME pinocchio) -set(PROJECT_DESCRIPTION - "A fast and flexible implementation of Rigid Body Dynamics algorithms and their analytical derivatives" +set( + PROJECT_DESCRIPTION + "A fast and flexible implementation of Rigid Body Dynamics algorithms and their analytical derivatives" ) set(PROJECT_URL "http://github.com/stack-of-tasks/pinocchio") set(PROJECT_CUSTOM_HEADER_EXTENSION "hpp") @@ -39,20 +40,24 @@ else() get_property( JRL_CMAKE_MODULES TARGET jrl-cmakemodules::jrl-cmakemodules - PROPERTY INTERFACE_INCLUDE_DIRECTORIES) + PROPERTY INTERFACE_INCLUDE_DIRECTORIES + ) message(STATUS "JRL cmakemodules found on system at ${JRL_CMAKE_MODULES}") elseif(${CMAKE_VERSION} VERSION_LESS "3.14.0") message( FATAL_ERROR - "\nCan't find jrl-cmakemodules. Please either:\n" - " - use git submodule: 'git submodule update --init'\n" - " - or install https://github.com/jrl-umi3218/jrl-cmakemodules\n" - " - or upgrade your CMake version to >= 3.14 to allow automatic fetching\n") + "\nCan't find jrl-cmakemodules. Please either:\n" + " - use git submodule: 'git submodule update --init'\n" + " - or install https://github.com/jrl-umi3218/jrl-cmakemodules\n" + " - or upgrade your CMake version to >= 3.14 to allow automatic fetching\n" + ) else() message(STATUS "JRL cmakemodules not found. Let's fetch it.") include(FetchContent) - FetchContent_Declare("jrl-cmakemodules" - GIT_REPOSITORY "https://github.com/jrl-umi3218/jrl-cmakemodules.git") + FetchContent_Declare( + "jrl-cmakemodules" + GIT_REPOSITORY "https://github.com/jrl-umi3218/jrl-cmakemodules.git" + ) FetchContent_MakeAvailable("jrl-cmakemodules") FetchContent_GetProperties("jrl-cmakemodules" SOURCE_DIR JRL_CMAKE_MODULES) endif() @@ -84,7 +89,7 @@ if(POLICY CMP0177) endif() include("${JRL_CMAKE_MODULES}/base.cmake") -compute_project_args(PROJECT_ARGS LANGUAGES CXX) +COMPUTE_PROJECT_ARGS(PROJECT_ARGS LANGUAGES CXX) project(${PROJECT_NAME} ${PROJECT_ARGS}) include("${JRL_CMAKE_MODULES}/python.cmake") @@ -103,13 +108,13 @@ endif() include(CMakeDependentOption) # If needed, set CMake policy for APPLE systems -apply_default_apple_configuration() +APPLY_DEFAULT_APPLE_CONFIGURATION() if(CMAKE_VERSION VERSION_GREATER "3.12") cmake_policy(SET CMP0074 NEW) endif() # Force C++ standard to be C++11 at least -check_minimal_cxx_standard(11 ENFORCE) +CHECK_MINIMAL_CXX_STANDARD(11 ENFORCE) # --- OPTIONS ---------------------------------------- option(BUILD_BENCHMARK "Build the benchmarks" OFF) @@ -121,9 +126,10 @@ option(BUILD_WITH_COMMIT_VERSION "Build libraries by setting specific commit ver if(DEFINED BUILD_UNIT_TESTS) message( AUTHOR_WARNING - "BUILD_UNIT_TESTS is deprecated. Use BUILD_TESTING instead.\ + "BUILD_UNIT_TESTS is deprecated. Use BUILD_TESTING instead.\ If you are manually building Pinocchio from source in an existing build folder,\ - we suggest that you delete your build folder and make a new one.") + we suggest that you delete your build folder and make a new one." + ) set(BUILD_TESTING ${BUILD_UNIT_TESTS}) endif(DEFINED BUILD_UNIT_TESTS) @@ -132,24 +138,41 @@ option(BUILD_ADVANCED_TESTING "Build the advanced tests (multiprecision, etc.) o # --- OPTIONAL DEPENDENCIES ------------------------- option(BUILD_WITH_URDF_SUPPORT "Build the library with the URDF format support" ON) option(BUILD_WITH_SDF_SUPPORT "Build the library with the SDF format support" OFF) -option(BUILD_WITH_COLLISION_SUPPORT - "Build the library with the collision support (required HPP-FCL)" OFF) -option(BUILD_WITH_AUTODIFF_SUPPORT - "Build the library with the automatic differentiation support (via CppAD)" OFF) +option( + BUILD_WITH_COLLISION_SUPPORT + "Build the library with the collision support (required HPP-FCL)" + OFF +) +option( + BUILD_WITH_AUTODIFF_SUPPORT + "Build the library with the automatic differentiation support (via CppAD)" + OFF +) option(BUILD_WITH_CASADI_SUPPORT "Build the library with the support of CASADI" OFF) # cppadcodgen don't build well with CL if(NOT WIN32) - option(BUILD_WITH_CODEGEN_SUPPORT - "Build the library with the support of code generation (via CppADCodeGen)" OFF) + option( + BUILD_WITH_CODEGEN_SUPPORT + "Build the library with the support of code generation (via CppADCodeGen)" + OFF + ) endif() option(BUILD_WITH_OPENMP_SUPPORT "Build the library with the OpenMP support" OFF) option(BUILD_WITH_EXTRA_SUPPORT "Build the library with extra algorithms support" OFF) cmake_dependent_option( BUILD_PYTHON_BINDINGS_WITH_BOOST_MPFR_SUPPORT - "Build the Python interface with Boost.Multiprecision MPFR support" OFF BUILD_PYTHON_INTERFACE - OFF) -cmake_dependent_option(BUILD_WITH_LIBPYTHON "Build the library with Python format support" ON - "BUILD_PYTHON_INTERFACE" OFF) + "Build the Python interface with Boost.Multiprecision MPFR support" + OFF + BUILD_PYTHON_INTERFACE + OFF +) +cmake_dependent_option( + BUILD_WITH_LIBPYTHON + "Build the library with Python format support" + ON + "BUILD_PYTHON_INTERFACE" + OFF +) if(APPLE) option(BUILD_WITH_ACCELERATE_SUPPORT "Build Pinocchio with the Accelerate support" OFF) else(APPLE) @@ -209,28 +232,28 @@ set(PINOCCHIO_MODEL_DIR "${PROJECT_SOURCE_DIR}/models") # --- DEPENDENCIES ----------------------------------- # ---------------------------------------------------- set(CMAKE_MODULE_PATH "${JRL_CMAKE_MODULES}/find-external/CppAD/" ${CMAKE_MODULE_PATH}) -add_project_dependency(Eigen3 REQUIRED PKG_CONFIG_REQUIRES "eigen3 >= 3.0.5") +ADD_PROJECT_DEPENDENCY(Eigen3 REQUIRED PKG_CONFIG_REQUIRES "eigen3 >= 3.0.5") if(BUILD_WITH_URDF_SUPPORT) - add_project_dependency(urdfdom_headers REQUIRED) - add_project_dependency(urdfdom REQUIRED PKG_CONFIG_REQUIRES "urdfdom >= 0.2.0") + ADD_PROJECT_DEPENDENCY(urdfdom_headers REQUIRED) + ADD_PROJECT_DEPENDENCY(urdfdom REQUIRED PKG_CONFIG_REQUIRES "urdfdom >= 0.2.0") set(urdfdom_VERSION ${urdfdom_headers_VERSION}) list(APPEND CFLAGS_DEPENDENCIES "-DPINOCCHIO_WITH_URDFDOM") if(${urdfdom_VERSION} VERSION_GREATER "0.4.2") - check_minimal_cxx_standard(11 ENFORCE) + CHECK_MINIMAL_CXX_STANDARD(11 ENFORCE) message( STATUS - "Since urdfdom >= 1.0.0, the default C++ standard is C++11. The project is then compiled with C++11 standard." + "Since urdfdom >= 1.0.0, the default C++ standard is C++11. The project is then compiled with C++11 standard." ) endif() endif() if(BUILD_WITH_SDF_SUPPORT) include(${CMAKE_CURRENT_LIST_DIR}/cmake/sdformat.cmake) - search_for_sdformat(REQUIRED) + SEARCH_FOR_SDFORMAT(REQUIRED) if(SDFormat_FOUND) - check_minimal_cxx_standard(11 REQUIRED) + CHECK_MINIMAL_CXX_STANDARD(11 REQUIRED) include_directories(${SDFormat_INCLUDE_DIRS}) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${SDFormat_CXX_FLAGS}") list(APPEND CFLAGS_DEPENDENCIES "-DPINOCCHIO_WITH_SDFORMAT") @@ -247,97 +270,109 @@ if(BUILD_WITH_AUTODIFF_SUPPORT) # Check first CppADCodeGen if(BUILD_WITH_CODEGEN_SUPPORT) # No need to add cppadcg to pkg-config (no lib and header in the same directory than cppad) - add_project_dependency(cppadcg 2.4.1 REQUIRED) + ADD_PROJECT_DEPENDENCY(cppadcg 2.4.1 REQUIRED) list(APPEND LIBRARIES_DEPENDENCIES ${PROJECT_NAME}_cppadcg) endif(BUILD_WITH_CODEGEN_SUPPORT) - add_project_dependency( - cppad 20180000.0 REQUIRED + ADD_PROJECT_DEPENDENCY( + cppad + 20180000.0 + REQUIRED PKG_CONFIG_REQUIRES "cppad >= 20220624.0" - FIND_EXTERNAL "CppAD") + FIND_EXTERNAL "CppAD" + ) list(APPEND LIBRARIES_DEPENDENCIES ${PROJECT_NAME}_cppad) endif(BUILD_WITH_AUTODIFF_SUPPORT) if(BUILD_WITH_CASADI_SUPPORT) - add_project_dependency(casadi 3.4.5 REQUIRED PKG_CONFIG_REQUIRES "casadi >= 3.4.5") + ADD_PROJECT_DEPENDENCY(casadi 3.4.5 REQUIRED PKG_CONFIG_REQUIRES "casadi >= 3.4.5") list(APPEND LIBRARIES_DEPENDENCIES ${PROJECT_NAME}_casadi) endif(BUILD_WITH_CASADI_SUPPORT) if(BUILD_WITH_OPENMP_SUPPORT) - add_project_dependency(OpenMP REQUIRED) + ADD_PROJECT_DEPENDENCY(OpenMP REQUIRED) endif() if(BUILD_WITH_EXTRA_SUPPORT) list(APPEND LIBRARIES_DEPENDENCIES ${PROJECT_NAME}_extra qhullcpp qhull_r) - add_project_dependency(Qhull COMPONENTS qhullcpp qhull_r REQUIRED) + ADD_PROJECT_DEPENDENCY( + Qhull + COMPONENTS + qhullcpp + qhull_r + REQUIRED + ) message(STATUS "Found Qhull.") endif() set(BOOST_REQUIRED_COMPONENTS filesystem serialization system) -set_boost_default_options() -export_boost_default_options() -add_project_dependency(Boost REQUIRED COMPONENTS ${BOOST_REQUIRED_COMPONENTS}) +SET_BOOST_DEFAULT_OPTIONS() +EXPORT_BOOST_DEFAULT_OPTIONS() +ADD_PROJECT_DEPENDENCY(Boost REQUIRED COMPONENTS ${BOOST_REQUIRED_COMPONENTS}) if(Boost_VERSION_STRING VERSION_LESS 1.81) if(BUILD_WITH_URDF_SUPPORT AND "${urdfdom_VERSION}" VERSION_GREATER "0.4.2") - check_minimal_cxx_standard(11 ENFORCE) + CHECK_MINIMAL_CXX_STANDARD(11 ENFORCE) message( STATUS - "Since urdfdom >= 1.0.0, the default C++ standard is C++11. The project is then compiled with C++11 standard." + "Since urdfdom >= 1.0.0, the default C++ standard is C++11. The project is then compiled with C++11 standard." ) endif() else() # Boost.Math will be C++14 starting in July 2023 (Boost 1.82 release) - check_minimal_cxx_standard(14 ENFORCE) + CHECK_MINIMAL_CXX_STANDARD(14 ENFORCE) endif() if(BUILD_PYTHON_INTERFACE) message( STATUS - "The Python bindings of Pinocchio will be compiled along the main library. If you want to disable this feature, please set the option BUILD_PYTHON_INTERFACE to OFF." + "The Python bindings of Pinocchio will be compiled along the main library. If you want to disable this feature, please set the option BUILD_PYTHON_INTERFACE to OFF." ) set(PYTHON_COMPONENTS Interpreter Development NumPy) - findpython(REQUIRED) - add_project_dependency(eigenpy 2.7.10 REQUIRED) + FINDPYTHON(REQUIRED) + ADD_PROJECT_DEPENDENCY(eigenpy 2.7.10 REQUIRED) if(BUILD_WITH_URDF_SUPPORT) # console_bridge is urdfdom dependency. # # We bind some enum of this library and then must link against it. - add_project_dependency(console_bridge REQUIRED) + ADD_PROJECT_DEPENDENCY(console_bridge REQUIRED) endif() # Check wether this a PyPy Python execute_process( COMMAND ${PYTHON_EXECUTABLE} -c "import platform; print(platform.python_implementation())" OUTPUT_VARIABLE _python_implementation_value - OUTPUT_STRIP_TRAILING_WHITESPACE ERROR_QUIET) + OUTPUT_STRIP_TRAILING_WHITESPACE + ERROR_QUIET + ) message(STATUS "Python compiler: ${_python_implementation_value}") if(_python_implementation_value MATCHES "PyPy") set(BUILD_WITH_PYTHON_PARSER_SUPPORT OFF) message( STATUS - "PyPy detected, therefore libpython is not available and BUILD_WITH_LIBPYTHON set to OFF.") + "PyPy detected, therefore libpython is not available and BUILD_WITH_LIBPYTHON set to OFF." + ) endif() else() message( STATUS - "Pinocchio won't be compiled with its Python bindings. If you want to enable this feature, please set the option BUILD_PYTHON_INTERFACE to ON." + "Pinocchio won't be compiled with its Python bindings. If you want to enable this feature, please set the option BUILD_PYTHON_INTERFACE to ON." ) endif() if(BUILD_WITH_HPP_FCL_SUPPORT) - add_project_dependency(hpp-fcl 2.1.2 REQUIRED "hpp-fcl >= 2.1.2") + ADD_PROJECT_DEPENDENCY(hpp-fcl 2.1.2 REQUIRED "hpp-fcl >= 2.1.2") endif() if(BUILD_WITH_ACCELERATE_SUPPORT) if(NOT ${Eigen3_VERSION} VERSION_GREATER_EQUAL "3.4.90") message( FATAL_ERROR - "Your version of Eigen is too low. Should be at least 3.4.90. Current version is ${Eigen3_VERSION}." + "Your version of Eigen is too low. Should be at least 3.4.90. Current version is ${Eigen3_VERSION}." ) endif() @@ -356,8 +391,11 @@ include(sources.cmake) # Template instantiation sources if(ENABLE_TEMPLATE_INSTANTIATION) list(APPEND ${PROJECT_NAME}_CORE_SOURCES ${${PROJECT_NAME}_TEMPLATE_INSTANTIATION_SOURCES}) - list(APPEND ${PROJECT_NAME}_CORE_PUBLIC_HEADERS - ${${PROJECT_NAME}_TEMPLATE_INSTANTIATION_PUBLIC_HEADERS}) + list( + APPEND + ${PROJECT_NAME}_CORE_PUBLIC_HEADERS + ${${PROJECT_NAME}_TEMPLATE_INSTANTIATION_PUBLIC_HEADERS} + ) endif() # URDF sources @@ -374,36 +412,63 @@ endif(BUILD_WITH_SDF_SUPPORT) # Extra sources if(BUILD_WITH_EXTRA_SUPPORT) - list(APPEND ${PROJECT_NAME}_BINDINGS_PYTHON_SOURCES - ${${PROJECT_NAME}_BINDINGS_PYTHON_EXTRA_SOURCES}) + list( + APPEND + ${PROJECT_NAME}_BINDINGS_PYTHON_SOURCES + ${${PROJECT_NAME}_BINDINGS_PYTHON_EXTRA_SOURCES} + ) endif() # HPP-FCL sources if(BUILD_WITH_HPP_FCL_SUPPORT) if(ENABLE_TEMPLATE_INSTANTIATION) - list(APPEND ${PROJECT_NAME}_COLLISION_SOURCES - ${${PROJECT_NAME}_COLLISION_TEMPLATE_INSTANTIATION_SOURCES}) - list(APPEND ${PROJECT_NAME}_COLLISION_PUBLIC_HEADERS - ${${PROJECT_NAME}_COLLISION_TEMPLATE_INSTANTIATION_PUBLIC_HEADERS}) + list( + APPEND + ${PROJECT_NAME}_COLLISION_SOURCES + ${${PROJECT_NAME}_COLLISION_TEMPLATE_INSTANTIATION_SOURCES} + ) + list( + APPEND + ${PROJECT_NAME}_COLLISION_PUBLIC_HEADERS + ${${PROJECT_NAME}_COLLISION_TEMPLATE_INSTANTIATION_PUBLIC_HEADERS} + ) endif() - list(APPEND ${PROJECT_NAME}_BINDINGS_PYTHON_SOURCES - ${${PROJECT_NAME}_BINDINGS_PYTHON_HPP_FCL_SOURCES}) - list(APPEND ${PROJECT_NAME}_BINDINGS_PYTHON_PUBLIC_HEADERS - ${${PROJECT_NAME}_BINDINGS_PYTHON_HPP_FCL_PUBLIC_HEADERS}) + list( + APPEND + ${PROJECT_NAME}_BINDINGS_PYTHON_SOURCES + ${${PROJECT_NAME}_BINDINGS_PYTHON_HPP_FCL_SOURCES} + ) + list( + APPEND + ${PROJECT_NAME}_BINDINGS_PYTHON_PUBLIC_HEADERS + ${${PROJECT_NAME}_BINDINGS_PYTHON_HPP_FCL_PUBLIC_HEADERS} + ) if(BUILD_WITH_OPENMP_SUPPORT) - list(APPEND ${PROJECT_NAME}_BINDINGS_PYTHON_SOURCES - ${${PROJECT_NAME}_BINDINGS_PYTHON_HPP_FCL_PARALLEL_SOURCES}) - list(APPEND ${PROJECT_NAME}_BINDINGS_PYTHON_PUBLIC_HEADERS - ${${PROJECT_NAME}_BINDINGS_PYTHON_HPP_FCL_PARALLEL_PUBLIC_HEADERS}) + list( + APPEND + ${PROJECT_NAME}_BINDINGS_PYTHON_SOURCES + ${${PROJECT_NAME}_BINDINGS_PYTHON_HPP_FCL_PARALLEL_SOURCES} + ) + list( + APPEND + ${PROJECT_NAME}_BINDINGS_PYTHON_PUBLIC_HEADERS + ${${PROJECT_NAME}_BINDINGS_PYTHON_HPP_FCL_PARALLEL_PUBLIC_HEADERS} + ) endif() endif(BUILD_WITH_HPP_FCL_SUPPORT) # OpenMP sources if(BUILD_WITH_OPENMP_SUPPORT) - list(APPEND ${PROJECT_NAME}_BINDINGS_PYTHON_SOURCES - ${${PROJECT_NAME}_BINDINGS_PYTHON_PARALLEL_SOURCES}) - list(APPEND ${PROJECT_NAME}_BINDINGS_PYTHON_PUBLIC_HEADERS - ${${PROJECT_NAME}_BINDINGS_PYTHON_PARALLEL_PUBLIC_HEADERS}) + list( + APPEND + ${PROJECT_NAME}_BINDINGS_PYTHON_SOURCES + ${${PROJECT_NAME}_BINDINGS_PYTHON_PARALLEL_SOURCES} + ) + list( + APPEND + ${PROJECT_NAME}_BINDINGS_PYTHON_PUBLIC_HEADERS + ${${PROJECT_NAME}_BINDINGS_PYTHON_PARALLEL_PUBLIC_HEADERS} + ) endif() # List headers to install @@ -437,8 +502,11 @@ function(ADD_WINDOWS_DLL_PATH_TO_TEST TEST_NAME) if(WIN32) get_test_property(${TEST_NAME} ENVIRONMENT ENV_VARIABLES) # TODO don't do this in the future - list(APPEND ENV_VARIABLES - "PINOCCHIO_WINDOWS_DLL_PATH=$") + list( + APPEND + ENV_VARIABLES + "PINOCCHIO_WINDOWS_DLL_PATH=$" + ) set_tests_properties(${TEST_NAME} PROPERTIES ENVIRONMENT "${ENV_VARIABLES}") endif() endfunction() @@ -465,60 +533,55 @@ add_subdirectory(benchmark) macro(EXPORT_VARIABLE var_name var_value) get_directory_property(has_parent PARENT_DIRECTORY) if(has_parent) - set(${var_name} - ${var_value} - PARENT_SCOPE) + set(${var_name} ${var_value} PARENT_SCOPE) else() set(${var_name} ${var_value}) endif() -endmacro( - EXPORT_VARIABLE - var_name - var_value) +endmacro(EXPORT_VARIABLE var_name var_value) if(BUILD_WITH_URDF_SUPPORT) - export_variable(PINOCCHIO_USE_URDFDOM ON) + EXPORT_VARIABLE(PINOCCHIO_USE_URDFDOM ON) set(PACKAGE_EXTRA_MACROS "${PACKAGE_EXTRA_MACROS}\nset(PINOCCHIO_USE_URDFDOM \"\")") endif() if(BUILD_WITH_HPP_FCL_SUPPORT) - export_variable(PINOCCHIO_USE_HPP_FCL ON) + EXPORT_VARIABLE(PINOCCHIO_USE_HPP_FCL ON) set(PACKAGE_EXTRA_MACROS "${PACKAGE_EXTRA_MACROS}\nset(PINOCCHIO_USE_HPP_FCL \"\")") endif() if(BUILD_WITH_CPPAD_SUPPORT) - export_variable(PINOCCHIO_USE_CPPAD ON) + EXPORT_VARIABLE(PINOCCHIO_USE_CPPAD ON) set(PACKAGE_EXTRA_MACROS "${PACKAGE_EXTRA_MACROS}\nset(PINOCCHIO_USE_CPPAD \"\")") endif() if(BUILD_WITH_CPPAD_CODEGEN_SUPPORT) - export_variable(PINOCCHIO_USE_CPPAD_CODEGEN ON) + EXPORT_VARIABLE(PINOCCHIO_USE_CPPAD_CODEGEN ON) set(PACKAGE_EXTRA_MACROS "${PACKAGE_EXTRA_MACROS}\nset(PINOCCHIO_USE_CPPAD_CODEGEN \"\")") endif() if(BUILD_WITH_CASADI_SUPPORT) - export_variable(PINOCCHIO_USE_CASADI ON) + EXPORT_VARIABLE(PINOCCHIO_USE_CASADI ON) set(PACKAGE_EXTRA_MACROS "${PACKAGE_EXTRA_MACROS}\nset(PINOCCHIO_USE_CASADI \"\")") endif() if(BUILD_PYTHON_INTERFACE) - export_variable(PINOCCHIO_WITH_PYTHON_INTERFACE ON) + EXPORT_VARIABLE(PINOCCHIO_WITH_PYTHON_INTERFACE ON) set(PACKAGE_EXTRA_MACROS "${PACKAGE_EXTRA_MACROS}\nset(PINOCCHIO_WITH_PYTHON_INTERFACE \"\")") endif() if(BUILD_WITH_EXTRA_SUPPORT) - export_variable(PINOCCHIO_USE_EXTRA ON) + EXPORT_VARIABLE(PINOCCHIO_USE_EXTRA ON) set(PACKAGE_EXTRA_MACROS "${PACKAGE_EXTRA_MACROS}\nset(PINOCCHIO_USE_EXTRA \"\")") endif() if(BUILD_WITH_PYTHON_PARSER_SUPPORT) - export_variable(PINOCCHIO_USE_PYTHON_PARSER ON) + EXPORT_VARIABLE(PINOCCHIO_USE_PYTHON_PARSER ON) set(PACKAGE_EXTRA_MACROS "${PACKAGE_EXTRA_MACROS}\nset(PINOCCHIO_USE_PYTHON_PARSER \"\")") endif() -export_variable(pinocchio_VERSION ${pinocchio_VERSION}) +EXPORT_VARIABLE(pinocchio_VERSION ${pinocchio_VERSION}) # Setup pkg-configs flags and libs -pkg_config_append_libs("${LIBRARIES_DEPENDENCIES}") +PKG_CONFIG_APPEND_LIBS("${LIBRARIES_DEPENDENCIES}") foreach(boostlib ${BOOST_REQUIRED_COMPONENTS}) - pkg_config_append_libs("boost_${boostlib}") + PKG_CONFIG_APPEND_LIBS("boost_${boostlib}") endforeach() -pkg_config_append_cflags("${CFLAGS_DEPENDENCIES}") -pkg_config_append_cflags("${CFLAGS_OPTIONS}") +PKG_CONFIG_APPEND_CFLAGS("${CFLAGS_DEPENDENCIES}") +PKG_CONFIG_APPEND_CFLAGS("${CFLAGS_OPTIONS}") # Install catkin package.xml install(FILES package.xml DESTINATION share/${PROJECT_NAME}) -setup_project_finalize() +SETUP_PROJECT_FINALIZE() diff --git a/benchmark/CMakeLists.txt b/benchmark/CMakeLists.txt index c8adf74be8..ce9ebc9a33 100644 --- a/benchmark/CMakeLists.txt +++ b/benchmark/CMakeLists.txt @@ -18,8 +18,10 @@ macro(ADD_BENCH bench_name) if(NumExtraMacroArgs GREATER 0) set(link_to_main_lib ${ARGV1}) if(link_to_main_lib) - set_target_properties(${bench_name} PROPERTIES COMPILE_DEFINITIONS - PINOCCHIO_MODEL_DIR="${PINOCCHIO_MODEL_DIR}") + set_target_properties( + ${bench_name} + PROPERTIES COMPILE_DEFINITIONS PINOCCHIO_MODEL_DIR="${PINOCCHIO_MODEL_DIR}" + ) target_link_libraries(${bench_name} PUBLIC ${PROJECT_NAME}) endif(link_to_main_lib) endif() @@ -28,10 +30,7 @@ macro(ADD_BENCH bench_name) endmacro(ADD_BENCH) macro(ADD_TEST_CFLAGS target flag) - set_property( - TARGET ${target} - APPEND_STRING - PROPERTY COMPILE_FLAGS " ${flag}") + set_property(TARGET ${target} APPEND_STRING PROPERTY COMPILE_FLAGS " ${flag}") endmacro(ADD_TEST_CFLAGS) if(CPPAD_FOUND) @@ -44,53 +43,56 @@ endif(cppadcg_FOUND) # timings # -add_bench(timings TRUE) +ADD_BENCH(timings TRUE) if(cppadcg_FOUND) - add_bench(timings-cg TRUE) + ADD_BENCH(timings-cg TRUE) target_link_libraries(timings-cg PUBLIC ${CMAKE_DL_LIBS} ${cppad_LIBRARY}) endif(cppadcg_FOUND) if(BUILD_WITH_OPENMP_SUPPORT) - add_bench(timings-parallel TRUE) + ADD_BENCH(timings-parallel TRUE) endif(BUILD_WITH_OPENMP_SUPPORT) # timings # -add_bench(timings-cholesky TRUE) +ADD_BENCH(timings-cholesky TRUE) # timings derivatives -add_bench(timings-derivatives TRUE) +ADD_BENCH(timings-derivatives TRUE) if(CPPAD_FOUND) # timings-cppad-jit - add_bench(timings-cppad-jit TRUE) + ADD_BENCH(timings-cppad-jit TRUE) target_link_libraries(timings-derivatives PUBLIC ${cppad_LIBRARY}) target_link_libraries(timings-cppad-jit PUBLIC ${cppad_LIBRARY} ${CMAKE_DL_LIBS}) - target_compile_definitions(timings-cppad-jit - PUBLIC PINOCCHIO_CXX_COMPILER=\"${CMAKE_CXX_COMPILER}\") + target_compile_definitions( + timings-cppad-jit + PUBLIC PINOCCHIO_CXX_COMPILER=\"${CMAKE_CXX_COMPILER}\" + ) endif() # timings-eigen # -add_bench(timings-eigen) -modernize_target_link_libraries( +ADD_BENCH(timings-eigen) +MODERNIZE_TARGET_LINK_LIBRARIES( timings-eigen SCOPE PUBLIC TARGETS Eigen3::Eigen - INCLUDE_DIRS ${EIGEN3_INCLUDE_DIR}) + INCLUDE_DIRS ${EIGEN3_INCLUDE_DIR} +) # timings-geometry # if(URDFDOM_FOUND AND hpp-fcl_FOUND) - add_bench(timings-geometry TRUE) + ADD_BENCH(timings-geometry TRUE) endif(URDFDOM_FOUND AND hpp-fcl_FOUND) # timings-jacobian # -add_bench(timings-jacobian TRUE) +ADD_BENCH(timings-jacobian TRUE) # timings-contact-dynamics # -add_bench(timings-delassus-operations TRUE) -add_bench(timings-contact-dynamics TRUE) -add_bench(timings-constrained-dynamics-derivatives TRUE) +ADD_BENCH(timings-delassus-operations TRUE) +ADD_BENCH(timings-contact-dynamics TRUE) +ADD_BENCH(timings-constrained-dynamics-derivatives TRUE) diff --git a/bindings/CMakeLists.txt b/bindings/CMakeLists.txt index b92c77e82b..274f920b04 100644 --- a/bindings/CMakeLists.txt +++ b/bindings/CMakeLists.txt @@ -4,7 +4,5 @@ add_subdirectory(python) if(BUILD_PYTHON_INTERFACE) - set(PYWRAP - ${PYWRAP} - PARENT_SCOPE) + set(PYWRAP ${PYWRAP} PARENT_SCOPE) endif(BUILD_PYTHON_INTERFACE) diff --git a/bindings/python/CMakeLists.txt b/bindings/python/CMakeLists.txt index 41fe8e28f3..c9d2fac140 100644 --- a/bindings/python/CMakeLists.txt +++ b/bindings/python/CMakeLists.txt @@ -5,14 +5,16 @@ include(${JRL_CMAKE_MODULES}/python-helpers.cmake) include(${JRL_CMAKE_MODULES}/stubs.cmake) -set(CMAKE_MODULE_PATH "${JRL_CMAKE_MODULES}/find-external/GMP" - "${JRL_CMAKE_MODULES}/find-external/MPFR" ${CMAKE_MODULE_PATH}) +set( + CMAKE_MODULE_PATH + "${JRL_CMAKE_MODULES}/find-external/GMP" + "${JRL_CMAKE_MODULES}/find-external/MPFR" + ${CMAKE_MODULE_PATH} +) # --- PYTHON TARGET --- # set(PYWRAP ${PROJECT_NAME}_pywrap) -set(PYWRAP - ${PYWRAP} - PARENT_SCOPE) +set(PYWRAP ${PYWRAP} PARENT_SCOPE) # --- COMPILE WRAPPER make_directory("${${PROJECT_NAME}_BINARY_DIR}/bindings/python/${PROJECT_NAME}") @@ -51,54 +53,59 @@ function(PINOCCHIO_PYTHON_BINDINGS_SPECIFIC_TYPE scalar_name) # loaded (see https://github.com/stack-of-tasks/pinocchio/issues/2462). set_target_properties( ${PYTHON_LIB_NAME} - PROPERTIES PREFIX "" - DEFINE_SYMBOL "${PYWRAP}_EXPORTS" - CXX_VISIBILITY_PRESET hidden - VISIBILITY_INLINES_HIDDEN ON) + PROPERTIES + PREFIX "" + DEFINE_SYMBOL "${PYWRAP}_EXPORTS" + CXX_VISIBILITY_PRESET hidden + VISIBILITY_INLINES_HIDDEN ON + ) # Do not report: # # * -Wconversion as the BOOST_PYTHON_FUNCTION_OVERLOADS implicitly converts. # * -Wcomment as latex equations have multi-line comments. # * -Wself-assign-overloaded as bp::self operations trigger this (Clang only). - cxx_flags_by_compiler_frontend( + CXX_FLAGS_BY_COMPILER_FRONTEND( GNU -Wno-conversion -Wno-comment -Wno-self-assign-overloaded OUTPUT PRIVATE_OPTIONS - FILTER) + FILTER + ) target_compile_options(${PYTHON_LIB_NAME} PRIVATE ${PRIVATE_OPTIONS}) set(PINOCCHIO_PYTHON_CONTEXT_FILE_VALUE "pinocchio/bindings/python/context/${scalar_name}.hpp") target_compile_definitions( ${PYTHON_LIB_NAME} - PRIVATE PINOCCHIO_PYTHON_CONTEXT_FILE="${PINOCCHIO_PYTHON_CONTEXT_FILE_VALUE}" - PINOCCHIO_PYTHON_MODULE_NAME=${PYTHON_LIB_NAME}) + PRIVATE + PINOCCHIO_PYTHON_CONTEXT_FILE="${PINOCCHIO_PYTHON_CONTEXT_FILE_VALUE}" + PINOCCHIO_PYTHON_MODULE_NAME=${PYTHON_LIB_NAME} + ) set_target_properties(${PYTHON_LIB_NAME} PROPERTIES VERSION ${PROJECT_VERSION}) if(BUILD_WITH_COMMIT_VERSION) - tag_library_version(${PYTHON_LIB_NAME}) + TAG_LIBRARY_VERSION(${PYTHON_LIB_NAME}) endif(BUILD_WITH_COMMIT_VERSION) - add_header_group(${PYTHON_LIB_NAME}_HEADERS) - add_source_group(${PYTHON_LIB_NAME}_SOURCES) + ADD_HEADER_GROUP(${PYTHON_LIB_NAME}_HEADERS) + ADD_SOURCE_GROUP(${PYTHON_LIB_NAME}_SOURCES) - modernize_target_link_libraries( - ${PYTHON_LIB_NAME} - SCOPE PUBLIC - TARGETS eigenpy::eigenpy) + MODERNIZE_TARGET_LINK_LIBRARIES(${PYTHON_LIB_NAME} SCOPE PUBLIC TARGETS eigenpy::eigenpy) target_link_libraries(${PYTHON_LIB_NAME} PUBLIC ${PROJECT_NAME}) if(BUILD_WITH_URDF_SUPPORT) # Link directly against console_bridge since we bind some enums and call # console_bridge::setLogLevel function. - modernize_target_link_libraries( + MODERNIZE_TARGET_LINK_LIBRARIES( ${PYTHON_LIB_NAME} SCOPE PUBLIC TARGETS console_bridge::console_bridge LIBRARIES ${console_bridge_LIBRARIES} - INCLUDE_DIRS ${console_bridge_INCLUDE_DIRS}) + INCLUDE_DIRS ${console_bridge_INCLUDE_DIRS} + ) endif() if(BUILD_WITH_HPP_FCL_SUPPORT) - target_compile_definitions(${PYTHON_LIB_NAME} - PRIVATE -DPINOCCHIO_PYTHON_INTERFACE_WITH_HPP_FCL_PYTHON_BINDINGS) + target_compile_definitions( + ${PYTHON_LIB_NAME} + PRIVATE -DPINOCCHIO_PYTHON_INTERFACE_WITH_HPP_FCL_PYTHON_BINDINGS + ) endif() if(WIN32) target_link_libraries(${PYTHON_LIB_NAME} PUBLIC ${PYTHON_LIBRARY}) @@ -108,22 +115,25 @@ function(PINOCCHIO_PYTHON_BINDINGS_SPECIFIC_TYPE scalar_name) set_target_properties( ${PYTHON_LIB_NAME} - PROPERTIES PREFIX "" - SUFFIX ${PYTHON_EXT_SUFFIX} - OUTPUT_NAME "${PYTHON_LIB_NAME}" - LIBRARY_OUTPUT_DIRECTORY "${PROJECT_BINARY_DIR}/bindings/python/${PROJECT_NAME}" - # On Windows, shared library are treat as binary - RUNTIME_OUTPUT_DIRECTORY "${PROJECT_BINARY_DIR}/bindings/python/${PROJECT_NAME}") + PROPERTIES + PREFIX "" + SUFFIX ${PYTHON_EXT_SUFFIX} + OUTPUT_NAME "${PYTHON_LIB_NAME}" + LIBRARY_OUTPUT_DIRECTORY "${PROJECT_BINARY_DIR}/bindings/python/${PROJECT_NAME}" + # On Windows, shared library are treat as binary + RUNTIME_OUTPUT_DIRECTORY "${PROJECT_BINARY_DIR}/bindings/python/${PROJECT_NAME}" + ) if(UNIX) - get_relative_rpath(${${PYWRAP}_INSTALL_DIR} ${PYWRAP}_INSTALL_RPATH) + GET_RELATIVE_RPATH(${${PYWRAP}_INSTALL_DIR} ${PYWRAP}_INSTALL_RPATH) set_target_properties(${PYTHON_LIB_NAME} PROPERTIES INSTALL_RPATH "${${PYWRAP}_INSTALL_RPATH}") endif() install( TARGETS ${PYTHON_LIB_NAME} EXPORT ${TARGETS_EXPORT_NAME} - DESTINATION ${PINOCCHIO_PYTHON_INSTALL_DIR}) + DESTINATION ${PINOCCHIO_PYTHON_INSTALL_DIR} + ) endfunction() function(INSTALL_PYTHON_FILES) @@ -140,7 +150,7 @@ function(INSTALL_PYTHON_FILES) endif() foreach(f ${ARGS_FILES}) - python_build(${SOURCE_PATH} ${f}) + PYTHON_BUILD(${SOURCE_PATH} ${f}) install(FILES ${SOURCE_PATH}/${f} DESTINATION ${INSTALL_PATH}) endforeach() endfunction() @@ -149,7 +159,7 @@ if(BUILD_PYTHON_INTERFACE) add_custom_target(${PROJECT_NAME}-python) set_target_properties(${PROJECT_NAME}-python PROPERTIES EXCLUDE_FROM_DEFAULT_BUILD True) - python_build_get_target(python_build_target) + PYTHON_BUILD_GET_TARGET(python_build_target) add_dependencies(${PROJECT_NAME}-python ${python_build_target}) set(PKG_CONFIG_PYWRAP_REQUIRES "eigenpy >= 2.6.5") @@ -160,30 +170,34 @@ if(BUILD_PYTHON_INTERFACE) endif() set(PINOCCHIO_PYTHON_INSTALL_DIR ${ABSOLUTE_PYTHON_SITELIB}/${PROJECT_NAME}) - pinocchio_python_bindings_specific_type(default) + PINOCCHIO_PYTHON_BINDINGS_SPECIFIC_TYPE(default) set(PYTHON_LIB_NAME "${PYWRAP}_default") set(STUBGEN_DEPENDENCIES "${PYWRAP}_default") if(BUILD_WITH_AUTODIFF_SUPPORT) - pinocchio_python_bindings_specific_type(cppad cppad) + PINOCCHIO_PYTHON_BINDINGS_SPECIFIC_TYPE(cppad cppad) # CPPAD_DEBUG_AND_RELEASE allow to mix debug and release versions of CppAD in the same program. # This can happen when Pinocchio is build in Debug mode and pycppad is build in Release mode. # See # https://coin-or.github.io/CppAD/doc/preprocessor.htm#Documented%20Here.CPPAD_DEBUG_AND_RELEASE. target_compile_definitions( - ${PYWRAP}_cppad PRIVATE PYCPPAD_EXCLUDE_EIGEN_NUMTRAITS_SPECIALIZATION - CPPAD_DEBUG_AND_RELEASE) - target_include_directories(${PYWRAP}_cppad SYSTEM - PUBLIC $) + ${PYWRAP}_cppad + PRIVATE PYCPPAD_EXCLUDE_EIGEN_NUMTRAITS_SPECIALIZATION CPPAD_DEBUG_AND_RELEASE + ) + target_include_directories( + ${PYWRAP}_cppad + SYSTEM + PUBLIC $ + ) target_link_libraries(${PYWRAP}_cppad PUBLIC ${cppad_LIBRARY}) list(APPEND STUBGEN_DEPENDENCIES "${PYWRAP}_cppad") # --- INSTALL SCRIPTS - install_python_files(MODULE cppad FILES __init__.py) + INSTALL_PYTHON_FILES(MODULE cppad FILES __init__.py) endif(BUILD_WITH_AUTODIFF_SUPPORT) if(BUILD_WITH_CODEGEN_SUPPORT) - pinocchio_python_bindings_specific_type(cppadcg cppadcg) + PINOCCHIO_PYTHON_BINDINGS_SPECIFIC_TYPE(cppadcg cppadcg) # On osx, use default visiblitiy because of an issue with thread_local storage defined in # cppad/cg/cg.hpp header (see @@ -194,80 +208,89 @@ if(BUILD_PYTHON_INTERFACE) # CPPAD_DEBUG_AND_RELEASE allow to mix debug and release versions of CppAD in the same program. target_compile_definitions( - ${PYWRAP}_cppadcg PRIVATE PYCPPAD_EXCLUDE_EIGEN_NUMTRAITS_SPECIALIZATION - CPPAD_DEBUG_AND_RELEASE) - target_include_directories(${PYWRAP}_cppadcg SYSTEM - PUBLIC $) + ${PYWRAP}_cppadcg + PRIVATE PYCPPAD_EXCLUDE_EIGEN_NUMTRAITS_SPECIALIZATION CPPAD_DEBUG_AND_RELEASE + ) + target_include_directories( + ${PYWRAP}_cppadcg + SYSTEM + PUBLIC $ + ) target_link_libraries(${PYWRAP}_cppadcg PUBLIC ${cppadcg_LIBRARY} ${cppad_LIBRARY}) list(APPEND STUBGEN_DEPENDENCIES "${PYWRAP}_cppadcg") # --- INSTALL SCRIPTS - install_python_files(MODULE cppadcg FILES __init__.py) + INSTALL_PYTHON_FILES(MODULE cppadcg FILES __init__.py) endif(BUILD_WITH_CODEGEN_SUPPORT) if(BUILD_WITH_CASADI_SUPPORT) - pinocchio_python_bindings_specific_type(casadi) + PINOCCHIO_PYTHON_BINDINGS_SPECIFIC_TYPE(casadi) target_link_libraries(${PYWRAP}_casadi PUBLIC casadi) list(APPEND STUBGEN_DEPENDENCIES "${PYWRAP}_casadi") # --- INSTALL SCRIPTS - install_python_files(MODULE casadi FILES __init__.py) + INSTALL_PYTHON_FILES(MODULE casadi FILES __init__.py) endif(BUILD_WITH_CASADI_SUPPORT) if(BUILD_PYTHON_BINDINGS_WITH_BOOST_MPFR_SUPPORT) find_package(GMP REQUIRED 6.0.0) find_package(MPFR REQUIRED 4.0.0) - pinocchio_python_bindings_specific_type(mpfr) + PINOCCHIO_PYTHON_BINDINGS_SPECIFIC_TYPE(mpfr) target_link_libraries(${PYWRAP}_mpfr PRIVATE gmp mpfr) list(APPEND STUBGEN_DEPENDENCIES "${PYWRAP}_mpfr") # --- INSTALL SCRIPTS - install_python_files(MODULE mpfr FILES __init__.py) + INSTALL_PYTHON_FILES(MODULE mpfr FILES __init__.py) endif(BUILD_PYTHON_BINDINGS_WITH_BOOST_MPFR_SUPPORT) # --- INSTALL SCRIPTS - install_python_files( - FILES __init__.py - deprecated.py - deprecation.py - utils.py - robot_wrapper.py - romeo_wrapper.py - explog.py - shortcuts.py - windows_dll_manager.py) + INSTALL_PYTHON_FILES( + FILES + __init__.py + deprecated.py + deprecation.py + utils.py + robot_wrapper.py + romeo_wrapper.py + explog.py + shortcuts.py + windows_dll_manager.py + ) # --- INSTALL DERIVATIVE SCRIPTS - install_python_files(MODULE derivative FILES xm.py dcrba.py lambdas.py) + INSTALL_PYTHON_FILES(MODULE derivative FILES xm.py dcrba.py lambdas.py) # --- INSTALL VISUALIZATION SCRIPTS - install_python_files( + INSTALL_PYTHON_FILES( MODULE visualize - FILES __init__.py - base_visualizer.py - gepetto_visualizer.py - meshcat_visualizer.py - panda3d_visualizer.py - rviz_visualizer.py - visualizers.py) + FILES + __init__.py + base_visualizer.py + gepetto_visualizer.py + meshcat_visualizer.py + panda3d_visualizer.py + rviz_visualizer.py + visualizers.py + ) # --- STUBS --- # if(GENERATE_PYTHON_STUBS) - python_build_get_target(python_build_target_name) - load_stubgen() + PYTHON_BUILD_GET_TARGET(python_build_target_name) + LOAD_STUBGEN() # Set PYWRAP and PROJECT_NAME as stubs dependencies. # # PROJECT_NAME is mandatory (even if it's a PYWRAP dependency) to find PROJECT_NAME name DLL on # windows. - generate_stubs( + GENERATE_STUBS( ${CMAKE_CURRENT_BINARY_DIR} ${PROJECT_NAME} ${ABSOLUTE_PYTHON_SITELIB} ${PYWRAP}_default ${PROJECT_NAME}_default ${STUBGEN_DEPENDENCIES} - ${python_build_target_name}) + ${python_build_target_name} + ) endif(GENERATE_PYTHON_STUBS) # --- PACKAGING --- # @@ -283,8 +306,9 @@ if(BUILD_PYTHON_INTERFACE) set(_PKG_CONFIG_PYWRAP_LIBS "-L\${libdir} -l${PYWRAP}") if(APPLE) - set(_PKG_CONFIG_PYWRAP_LIBS - "${_PKG_CONFIG_PYWRAP_LIBS} -Wl,-undefined,dynamic_lookup,${Boost_${UPPERCOMPONENT}_LIBRARY}" + set( + _PKG_CONFIG_PYWRAP_LIBS + "${_PKG_CONFIG_PYWRAP_LIBS} -Wl,-undefined,dynamic_lookup,${Boost_${UPPERCOMPONENT}_LIBRARY}" ) else(APPLE) set(_PKG_CONFIG_PYWRAP_LIBS "${_PKG_CONFIG_PYWRAP_LIBS} ${LIBINCL_KW}boost_python") @@ -299,13 +323,16 @@ if(BUILD_PYTHON_INTERFACE) set(_PKG_CONFIG_PYWRAP_CFLAGS "${_PKG_CONFIG_PYWRAP_CFLAGS} ${cflags}") endforeach() - configure_file("${CMAKE_CURRENT_SOURCE_DIR}/pinocchiopy.pc.cmake" - "${CMAKE_CURRENT_BINARY_DIR}/pinocchiopy.pc") + configure_file( + "${CMAKE_CURRENT_SOURCE_DIR}/pinocchiopy.pc.cmake" + "${CMAKE_CURRENT_BINARY_DIR}/pinocchiopy.pc" + ) install( FILES "${CMAKE_CURRENT_BINARY_DIR}/pinocchiopy.pc" DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig - PERMISSIONS OWNER_READ GROUP_READ WORLD_READ OWNER_WRITE) + PERMISSIONS OWNER_READ GROUP_READ WORLD_READ OWNER_WRITE + ) if(DOXYGEN_FOUND AND DOXYGEN_VERSION VERSION_GREATER 1.8.17) set(DOXYGEN_GENERATE_HTML YES) @@ -313,7 +340,11 @@ if(BUILD_PYTHON_INTERFACE) set(DOXYGEN_PROJECT_NAME "Pinocchio PyBind11 helpers.") set(_source_headers_root "../../include/${PROJECT_NAME}/bindings/python") doxygen_add_docs( - doc_pybind11 ${_source_headers_root}/pybind11.hpp ${_source_headers_root}/pybind11-all.hpp - USE_STAMP_FILE COMMENT "Generating documentation of the PyBind11 helpers.") + doc_pybind11 + ${_source_headers_root}/pybind11.hpp + ${_source_headers_root}/pybind11-all.hpp + USE_STAMP_FILE + COMMENT "Generating documentation of the PyBind11 helpers." + ) endif() endif(BUILD_PYTHON_INTERFACE) diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt index bbb2e5427a..4439d14342 100644 --- a/examples/CMakeLists.txt +++ b/examples/CMakeLists.txt @@ -3,7 +3,7 @@ # # Compute flags outside the macro to avoid recomputing it for each tests -cxx_flags_by_compiler_frontend(MSVC _USE_MATH_DEFINES OUTPUT EXAMPLE_PRIVATE_DEFINITIONS) +CXX_FLAGS_BY_COMPILER_FRONTEND(MSVC _USE_MATH_DEFINES OUTPUT EXAMPLE_PRIVATE_DEFINITIONS) function(ADD_PINOCCHIO_CPP_EXAMPLE EXAMPLE) set(options PARSERS CPPAD CPPADCG CASADI) @@ -13,7 +13,7 @@ function(ADD_PINOCCHIO_CPP_EXAMPLE EXAMPLE) get_filename_component(EXAMPLE_NAME ${EXAMPLE} NAME) set(EXAMPLE_NAME "${PROJECT_NAME}-example-cpp-${EXAMPLE_NAME}") - add_unit_test(${EXAMPLE_NAME} "${EXAMPLE}.cpp") + ADD_UNIT_TEST(${EXAMPLE_NAME} "${EXAMPLE}.cpp") target_link_libraries(${EXAMPLE_NAME} PUBLIC ${PROJECT_NAME}) if(example_PARSERS) @@ -32,14 +32,17 @@ function(ADD_PINOCCHIO_CPP_EXAMPLE EXAMPLE) target_link_libraries(${EXAMPLE_NAME} PUBLIC ${PROJECT_NAME}_casadi) endif() - target_compile_definitions(${EXAMPLE_NAME} PRIVATE ${EXAMPLE_PRIVATE_DEFINITIONS} - PINOCCHIO_MODEL_DIR="${PINOCCHIO_MODEL_DIR}") + target_compile_definitions( + ${EXAMPLE_NAME} + PRIVATE ${EXAMPLE_PRIVATE_DEFINITIONS} PINOCCHIO_MODEL_DIR="${PINOCCHIO_MODEL_DIR}" + ) # There is no RPATH in Windows, then we must use the PATH to find the DLL if(WIN32) string(REPLACE ";" "\\\;" _PATH "$ENV{PATH}") - set(ENV_VARIABLES - "PATH=${_PATH}\\\;${PROJECT_BINARY_DIR}/src\\\;${PROJECT_BINARY_DIR}/bindings/python/pinocchio" + set( + ENV_VARIABLES + "PATH=${_PATH}\\\;${PROJECT_BINARY_DIR}/src\\\;${PROJECT_BINARY_DIR}/bindings/python/pinocchio" ) set_tests_properties(${EXAMPLE_NAME} PROPERTIES ENVIRONMENT "${ENV_VARIABLES}") endif() @@ -71,9 +74,15 @@ if(BUILD_WITH_COLLISION_SUPPORT) endif() if(BUILD_PYTHON_INTERFACE) - set(${PROJECT_NAME}_PYTHON_EXAMPLES - inverse-kinematics inverse-kinematics-3d overview-simple kinematics-derivatives - forward-dynamics-derivatives inverse-dynamics-derivatives) + set( + ${PROJECT_NAME}_PYTHON_EXAMPLES + inverse-kinematics + inverse-kinematics-3d + overview-simple + kinematics-derivatives + forward-dynamics-derivatives + inverse-dynamics-derivatives + ) if(BUILD_WITH_URDF_SUPPORT) list( @@ -83,12 +92,18 @@ if(BUILD_PYTHON_INTERFACE) gepetto-viewer build-reduced-model robot-wrapper-viewer - geometry-models) + geometry-models + ) endif() if(BUILD_WITH_COLLISION_SUPPORT) - list(APPEND ${PROJECT_NAME}_PYTHON_EXAMPLES sample-model-viewer display-shapes - simulation-pendulum) + list( + APPEND + ${PROJECT_NAME}_PYTHON_EXAMPLES + sample-model-viewer + display-shapes + simulation-pendulum + ) if(BUILD_WITH_URDF_SUPPORT) list( APPEND @@ -98,7 +113,8 @@ if(BUILD_PYTHON_INTERFACE) collisions collision-with-point-clouds append-urdf-model-with-another-model - simulation-contact-dynamics) + simulation-contact-dynamics + ) if(PYTHON_VERSION_MAJOR EQUAL 3) list(APPEND ${PROJECT_NAME}_PYTHON_EXAMPLES static-contact-dynamics) endif() @@ -111,8 +127,8 @@ if(BUILD_PYTHON_INTERFACE) foreach(EXAMPLE ${${PROJECT_NAME}_PYTHON_EXAMPLES}) set(EXAMPLE_NAME "${PROJECT_NAME}-example-py-${EXAMPLE}") - add_python_unit_test("${EXAMPLE_NAME}" "examples/${EXAMPLE}.py" "bindings/python") - add_windows_dll_path_to_test(${EXAMPLE_NAME}) + ADD_PYTHON_UNIT_TEST("${EXAMPLE_NAME}" "examples/${EXAMPLE}.py" "bindings/python") + ADD_WINDOWS_DLL_PATH_TO_TEST(${EXAMPLE_NAME}) endforeach() endif() diff --git a/examples/casadi/CMakeLists.txt b/examples/casadi/CMakeLists.txt index d3a334636c..cd875e817a 100644 --- a/examples/casadi/CMakeLists.txt +++ b/examples/casadi/CMakeLists.txt @@ -7,12 +7,10 @@ function(ADD_PINOCCHIO_CPP_CASADI_EXAMPLE EXAMPLE) endfunction() if(BUILD_WITH_CASADI_SUPPORT) - add_pinocchio_cpp_casadi_example(casadi-aba) add_pinocchio_cpp_casadi_example(casadi-rnea) if(BUILD_PYTHON_INTERFACE) - set(${PROJECT_NAME}_CASADI_PYTHON_EXAMPLES quadrotor-ocp) if(BUILD_WITH_COLLISION_SUPPORT) list(APPEND ${PROJECT_NAME}_CASADI_PYTHON_EXAMPLES cartpole) @@ -20,8 +18,8 @@ if(BUILD_WITH_CASADI_SUPPORT) foreach(EXAMPLE ${${PROJECT_NAME}_CASADI_PYTHON_EXAMPLES}) set(EXAMPLE_NAME "${PROJECT_NAME}-example-py-casadi-${EXAMPLE}") - add_python_unit_test(${EXAMPLE_NAME} "examples/casadi/${EXAMPLE}.py" "bindings/python") - add_windows_dll_path_to_test(${EXAMPLE_NAME}) + ADD_PYTHON_UNIT_TEST(${EXAMPLE_NAME} "examples/casadi/${EXAMPLE}.py" "bindings/python") + ADD_WINDOWS_DLL_PATH_TO_TEST(${EXAMPLE_NAME}) endforeach() endif() endif() diff --git a/examples/codegen/CMakeLists.txt b/examples/codegen/CMakeLists.txt index 4a1a423ee7..4851f84e78 100644 --- a/examples/codegen/CMakeLists.txt +++ b/examples/codegen/CMakeLists.txt @@ -2,17 +2,18 @@ # Copyright (c) 2020-2023 INRIA # -if(cppadcg_FOUND - AND BUILD_WITH_CODEGEN_SUPPORT - AND BUILD_WITH_URDF_SUPPORT) +if(cppadcg_FOUND AND BUILD_WITH_CODEGEN_SUPPORT AND BUILD_WITH_URDF_SUPPORT) function(ADD_PINOCCHIO_CPP_CODEGEN_EXAMPLE EXAMPLE) add_pinocchio_cpp_example( ${EXAMPLE} CPPADCG - PARSERS) + PARSERS + ) target_link_libraries(${PROJECT_NAME}-example-cpp-${EXAMPLE} PUBLIC ${CMAKE_DL_LIBS}) - target_compile_definitions(${PROJECT_NAME}-example-cpp-${EXAMPLE} - PUBLIC PINOCCHIO_CXX_COMPILER=\"${CMAKE_CXX_COMPILER}\") + target_compile_definitions( + ${PROJECT_NAME}-example-cpp-${EXAMPLE} + PUBLIC PINOCCHIO_CXX_COMPILER=\"${CMAKE_CXX_COMPILER}\" + ) endfunction() add_pinocchio_cpp_codegen_example(codegen-crba) @@ -23,9 +24,8 @@ if(cppadcg_FOUND foreach(EXAMPLE ${${PROJECT_NAME}_CODEGEN_PYTHON_EXAMPLES}) set(EXAMPLE_NAME "${PROJECT_NAME}-example-py-${EXAMPLE}") - add_python_unit_test(${EXAMPLE_NAME} "examples/codegen/${EXAMPLE}.py" "bindings/python") - add_windows_dll_path_to_test(${EXAMPLE_NAME}) + ADD_PYTHON_UNIT_TEST(${EXAMPLE_NAME} "examples/codegen/${EXAMPLE}.py" "bindings/python") + ADD_WINDOWS_DLL_PATH_TO_TEST(${EXAMPLE_NAME}) endforeach() endif() - endif() diff --git a/examples/cppad/CMakeLists.txt b/examples/cppad/CMakeLists.txt index 988eabb246..6e9d9794dc 100644 --- a/examples/cppad/CMakeLists.txt +++ b/examples/cppad/CMakeLists.txt @@ -6,8 +6,10 @@ if(BUILD_WITH_AUTODIFF_SUPPORT) function(ADD_PINOCCHIO_CPP_AUTODIFF_EXAMPLE EXAMPLE) include_directories(SYSTEM ${cppadcg_INCLUDE_DIR}) add_pinocchio_cpp_example(${EXAMPLE}) - target_link_libraries(${PROJECT_NAME}-example-cpp-${EXAMPLE} PUBLIC ${CMAKE_DL_LIBS} - ${cppad_LIBRARY}) + target_link_libraries( + ${PROJECT_NAME}-example-cpp-${EXAMPLE} + PUBLIC ${CMAKE_DL_LIBS} ${cppad_LIBRARY} + ) endfunction() add_pinocchio_cpp_autodiff_example(autodiff-rnea) @@ -17,9 +19,8 @@ if(BUILD_WITH_AUTODIFF_SUPPORT) foreach(EXAMPLE ${${PROJECT_NAME}_AUTODIFF_PYTHON_EXAMPLES}) set(EXAMPLE_NAME "${PROJECT_NAME}-example-py-${EXAMPLE}") - add_python_unit_test(${EXAMPLE_NAME} "examples/cppad/${EXAMPLE}.py" "bindings/python") - add_windows_dll_path_to_test(${EXAMPLE_NAME}) + ADD_PYTHON_UNIT_TEST(${EXAMPLE_NAME} "examples/cppad/${EXAMPLE}.py" "bindings/python") + ADD_WINDOWS_DLL_PATH_TO_TEST(${EXAMPLE_NAME}) endforeach() endif() - endif() diff --git a/sources.cmake b/sources.cmake index f8cd400628..41b32597aa 100644 --- a/sources.cmake +++ b/sources.cmake @@ -2,635 +2,693 @@ set(${PROJECT_NAME}_CORE_SOURCES) -set(${PROJECT_NAME}_CORE_PUBLIC_HEADERS - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/aba-derivatives.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/aba-derivatives.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/aba.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/aba.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/admm-solver.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/admm-solver.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/center-of-mass-derivatives.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/center-of-mass-derivatives.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/center-of-mass.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/center-of-mass.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/centroidal-derivatives.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/centroidal-derivatives.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/centroidal.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/centroidal.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/check.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/check.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/cholesky.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/cholesky.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/compute-all-terms.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/compute-all-terms.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/constrained-dynamics-derivatives.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/constrained-dynamics-derivatives.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/constrained-dynamics.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/constrained-dynamics.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/constrained-problem-data.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/constraints/coulomb-friction-cone.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/constraints/visitors/constraint-model-visitor.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/constraints/constraint-data-base.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/constraints/constraint-data-generic.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/constraints/constraint-model-base.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/constraints/constraint-model-generic.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/constraints/constraints.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/constraints/fwd.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/contact-cholesky.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/contact-cholesky.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/contact-dynamics.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/contact-dynamics.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/contact.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/contact.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/contact-info.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/contact-jacobian.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/contact-jacobian.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/contact-solver-base.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/contact-solver-utils.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/contact-inverse-dynamics.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/copy.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/crba.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/crba.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/default-check.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/delassus.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/delassus.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/delassus-operartor-ref.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/delassus-operator-base.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/delassus-operator-dense.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/delassus-operator-rigid-body.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/delassus-operator-sparse.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/energy.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/energy.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/frames-derivatives.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/frames-derivatives.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/frames.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/frames.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/fwd.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/geometry.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/geometry.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/impulse-dynamics-derivatives.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/impulse-dynamics-derivatives.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/impulse-dynamics.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/impulse-dynamics.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/jacobian.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/jacobian.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/joint-configuration.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/joint-configuration.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/kinematics-derivatives.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/kinematics-derivatives.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/kinematics.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/kinematics.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/model.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/model.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/pgs-solver.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/pgs-solver.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/proximal.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/pv.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/pv.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/regressor.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/regressor.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/rnea-derivatives.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/rnea-derivatives.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/rnea.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/rnea.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/rnea-second-order-derivatives.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/rnea-second-order-derivatives.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/utils/force.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/utils/motion.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/autodiff/casadi-algo.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/autodiff/casadi.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/autodiff/casadi/math/matrix.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/autodiff/casadi/math/quaternion.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/autodiff/casadi/math/triangular-matrix.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/autodiff/casadi/spatial/se3-tpl.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/autodiff/casadi/utils/static-if.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/autodiff/cppad/algorithm/aba.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/autodiff/cppad.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/autodiff/cppad/math/eigen_plugin.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/autodiff/cppad/math/quaternion.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/autodiff/cppad/spatial/log.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/autodiff/cppad/spatial/se3-tpl.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/autodiff/cppad/utils/static-if.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/codegen/code-generator-algo.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/codegen/code-generator-base.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/codegen/cppadcg.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/container/aligned-vector.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/container/boost-container-limits.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/context/casadi.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/context/cppad.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/context/cppadcg.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/context/default.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/context/generic.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/context.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/core/binary-op.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/core/unary-op.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/deprecated-macros.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/deprecated-namespaces.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/deprecation.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/eigen-macros.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/fwd.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/macros.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/unsupported.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/math/casadi.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/math/comparison-operators.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/math/cppadcg.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/math/cppad.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/math/eigenvalues.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/math/fwd.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/math/gram-schmidt-orthonormalisation.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/math/lanczos-decomposition.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/math/matrix-block.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/math/matrix.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/math/multiprecision.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/math/multiprecision-mpfr.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/math/quaternion.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/math/rotation.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/math/rpy.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/math/rpy.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/math/sign.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/math/sincos.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/math/taylor-expansion.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/math/tensor.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/math/triangular-matrix.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/math/tridiagonal-matrix.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/data.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/data.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/fcl.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/force-set.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/frame.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/fwd.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/geometry.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/geometry.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/geometry-object-filter.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/geometry-object.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/geometry-object.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/instance-filter.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/fwd.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-base.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-basic-visitors.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-basic-visitors.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-collection.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-common-operations.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-composite.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-composite.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-data-base.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-free-flyer.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-generic.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-helical.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-helical-unaligned.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-mimic.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-model-base.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-planar.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-prismatic.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-prismatic-unaligned.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-revolute.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-revolute-unaligned.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-revolute-unbounded.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-revolute-unbounded-unaligned.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joints.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-spherical.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-spherical-ZYX.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-translation.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-universal.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint-motion-subspace-base.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint-motion-subspace-generic.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint-motion-subspace.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/liegroup/cartesian-product.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/liegroup/cartesian-product-variant.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/liegroup/cartesian-product-variant.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/liegroup/fwd.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/liegroup/liegroup-algo.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/liegroup/liegroup-algo.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/liegroup/liegroup-base.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/liegroup/liegroup-base.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/liegroup/liegroup-collection.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/liegroup/liegroup-generic.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/liegroup/liegroup.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/liegroup/liegroup-variant-visitors.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/liegroup/liegroup-variant-visitors.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/liegroup/special-euclidean.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/liegroup/special-orthogonal.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/liegroup/vector-space.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/model.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/model.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/model-item.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/pool/fwd.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/pool/geometry.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/pool/model.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/visitor/fusion.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/visitor.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/visitor/joint-binary-visitor.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/visitor/joint-unary-visitor.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/sample-models.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/sample-models.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/aligned-vector.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/archive.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/data.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/eigen.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/csv.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/fcl.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/force.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/frame.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/fwd.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/geometry.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/inertia.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/joints-data.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/joints.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/joints-model.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/joints-motion.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/joints-motion-subspace.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/joints-transform.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/model.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/motion.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/se3.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/serializable.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/spatial.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/static-buffer.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/symmetric3.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/vector.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/act-on-set.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/act-on-set.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/cartesian-axis.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/classic-acceleration.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/explog.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/explog-quaternion.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/force-base.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/force-dense.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/force.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/force-ref.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/force-tpl.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/fwd.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/inertia.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/log.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/log.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/motion-base.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/motion-dense.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/motion.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/motion-ref.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/motion-tpl.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/motion-zero.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/se3-base.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/se3.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/se3-tpl.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/skew.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/spatial-axis.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/symmetric3.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/utils/axis-label.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/utils/cast.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/utils/check.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/utils/eigen-fix.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/utils/file-io.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/utils/helpers.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/utils/openmp.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/utils/shared-ptr.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/utils/static-if.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/utils/string-generator.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/utils/string.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/utils/timer2.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/utils/timer.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/utils/version.hpp) - -set(${PROJECT_NAME}_PARALLEL_PUBLIC_HEADERS - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/parallel/aba.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/parallel/omp.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/parallel/rnea.hpp) - -set(${PROJECT_NAME}_COLLISION_TEMPLATE_INSTANTIATION_SOURCES - ${PROJECT_SOURCE_DIR}/src/collision/collision.cpp - ${PROJECT_SOURCE_DIR}/src/collision/distance.cpp) - -set(${PROJECT_NAME}_COLLISION_TEMPLATE_INSTANTIATION_PUBLIC_HEADERS - ${PROJECT_SOURCE_DIR}/include/pinocchio/collision/collision.txx - ${PROJECT_SOURCE_DIR}/include/pinocchio/collision/distance.txx) - -set(${PROJECT_NAME}_COLLISION_PUBLIC_HEADERS - ${PROJECT_SOURCE_DIR}/include/pinocchio/collision/collision.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/collision/collision.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/collision/broadphase-callbacks.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/collision/broadphase-callbacks.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/collision/broadphase.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/collision/broadphase.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/collision/distance.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/collision/distance.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/collision/broadphase-manager-base.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/collision/broadphase-manager.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/collision/broadphase-manager.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/collision/tree-broadphase-manager.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/collision/tree-broadphase-manager.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/collision/fcl-pinocchio-conversions.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/collision/pool/fwd.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/collision/pool/broadphase-manager.hpp - # Deprecated header - ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/fcl-pinocchio-conversions.hpp) - -set(${PROJECT_NAME}_COLLISION_PARALLEL_PUBLIC_HEADERS - ${PROJECT_SOURCE_DIR}/include/pinocchio/collision/parallel/broadphase.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/collision/parallel/geometry.hpp - # Deprecated header - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/parallel/geometry.hpp) - -set(${PROJECT_NAME}_PARSERS_SOURCES - ${PROJECT_SOURCE_DIR}/src/utils/file-explorer.cpp - ${PROJECT_SOURCE_DIR}/src/parsers/mjcf/mjcf-graph.cpp - ${PROJECT_SOURCE_DIR}/src/parsers/mjcf/mjcf-graph-geom.cpp) - -set(${PROJECT_NAME}_PARSERS_PUBLIC_HEADERS - ${PROJECT_SOURCE_DIR}/include/pinocchio/parsers/meshloader-fwd.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/parsers/srdf.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/parsers/srdf.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/parsers/utils.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/utils/file-explorer.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/parsers/mjcf.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/parsers/mjcf/model.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/parsers/mjcf/geometry.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/parsers/mjcf/mjcf-graph.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/parsers/sample-models.hpp) - -set(${PROJECT_NAME}_URDF_SOURCES - ${PROJECT_SOURCE_DIR}/src/parsers/urdf/model.cpp - ${PROJECT_SOURCE_DIR}/src/parsers/urdf/geometry.cpp - ${PROJECT_SOURCE_DIR}/src/parsers/urdf/utils.cpp) - -set(${PROJECT_NAME}_URDF_PUBLIC_HEADERS - ${PROJECT_SOURCE_DIR}/include/pinocchio/parsers/urdf.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/parsers/urdf/model.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/parsers/urdf/geometry.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/parsers/urdf/utils.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/parsers/urdf/types.hpp) - -set(${PROJECT_NAME}_SDF_SOURCES ${PROJECT_SOURCE_DIR}/src/parsers/sdf/model.cpp - ${PROJECT_SOURCE_DIR}/src/parsers/sdf/geometry.cpp) - -set(${PROJECT_NAME}_SDF_PUBLIC_HEADERS - ${PROJECT_SOURCE_DIR}/include/pinocchio/parsers/sdf.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/parsers/sdf/model.hxx - ${PROJECT_SOURCE_DIR}/include/pinocchio/parsers/sdf/geometry.hxx) - -set(${PROJECT_NAME}_PYTHON_PARSER_PUBLIC_HEADERS - ${PROJECT_SOURCE_DIR}/include/pinocchio/parsers/python.hpp) +set( + ${PROJECT_NAME}_CORE_PUBLIC_HEADERS + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/aba-derivatives.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/aba-derivatives.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/aba.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/aba.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/admm-solver.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/admm-solver.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/center-of-mass-derivatives.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/center-of-mass-derivatives.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/center-of-mass.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/center-of-mass.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/centroidal-derivatives.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/centroidal-derivatives.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/centroidal.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/centroidal.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/check.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/check.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/cholesky.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/cholesky.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/compute-all-terms.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/compute-all-terms.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/constrained-dynamics-derivatives.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/constrained-dynamics-derivatives.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/constrained-dynamics.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/constrained-dynamics.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/constrained-problem-data.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/constraints/coulomb-friction-cone.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/constraints/visitors/constraint-model-visitor.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/constraints/constraint-data-base.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/constraints/constraint-data-generic.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/constraints/constraint-model-base.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/constraints/constraint-model-generic.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/constraints/constraints.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/constraints/fwd.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/contact-cholesky.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/contact-cholesky.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/contact-dynamics.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/contact-dynamics.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/contact.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/contact.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/contact-info.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/contact-jacobian.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/contact-jacobian.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/contact-solver-base.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/contact-solver-utils.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/contact-inverse-dynamics.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/copy.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/crba.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/crba.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/default-check.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/delassus.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/delassus.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/delassus-operartor-ref.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/delassus-operator-base.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/delassus-operator-dense.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/delassus-operator-rigid-body.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/delassus-operator-sparse.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/energy.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/energy.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/frames-derivatives.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/frames-derivatives.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/frames.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/frames.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/fwd.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/geometry.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/geometry.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/impulse-dynamics-derivatives.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/impulse-dynamics-derivatives.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/impulse-dynamics.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/impulse-dynamics.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/jacobian.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/jacobian.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/joint-configuration.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/joint-configuration.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/kinematics-derivatives.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/kinematics-derivatives.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/kinematics.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/kinematics.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/model.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/model.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/pgs-solver.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/pgs-solver.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/proximal.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/pv.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/pv.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/regressor.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/regressor.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/rnea-derivatives.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/rnea-derivatives.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/rnea.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/rnea.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/rnea-second-order-derivatives.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/rnea-second-order-derivatives.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/utils/force.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/utils/motion.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/autodiff/casadi-algo.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/autodiff/casadi.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/autodiff/casadi/math/matrix.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/autodiff/casadi/math/quaternion.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/autodiff/casadi/math/triangular-matrix.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/autodiff/casadi/spatial/se3-tpl.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/autodiff/casadi/utils/static-if.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/autodiff/cppad/algorithm/aba.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/autodiff/cppad.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/autodiff/cppad/math/eigen_plugin.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/autodiff/cppad/math/quaternion.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/autodiff/cppad/spatial/log.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/autodiff/cppad/spatial/se3-tpl.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/autodiff/cppad/utils/static-if.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/codegen/code-generator-algo.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/codegen/code-generator-base.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/codegen/cppadcg.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/container/aligned-vector.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/container/boost-container-limits.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/context/casadi.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/context/cppad.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/context/cppadcg.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/context/default.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/context/generic.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/context.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/core/binary-op.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/core/unary-op.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/deprecated-macros.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/deprecated-namespaces.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/deprecation.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/eigen-macros.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/fwd.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/macros.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/unsupported.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/math/casadi.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/math/comparison-operators.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/math/cppadcg.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/math/cppad.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/math/eigenvalues.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/math/fwd.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/math/gram-schmidt-orthonormalisation.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/math/lanczos-decomposition.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/math/matrix-block.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/math/matrix.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/math/multiprecision.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/math/multiprecision-mpfr.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/math/quaternion.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/math/rotation.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/math/rpy.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/math/rpy.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/math/sign.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/math/sincos.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/math/taylor-expansion.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/math/tensor.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/math/triangular-matrix.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/math/tridiagonal-matrix.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/data.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/data.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/fcl.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/force-set.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/frame.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/fwd.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/geometry.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/geometry.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/geometry-object-filter.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/geometry-object.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/geometry-object.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/instance-filter.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/fwd.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-base.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-basic-visitors.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-basic-visitors.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-collection.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-common-operations.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-composite.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-composite.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-data-base.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-free-flyer.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-generic.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-helical.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-helical-unaligned.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-mimic.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-model-base.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-planar.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-prismatic.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-prismatic-unaligned.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-revolute.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-revolute-unaligned.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-revolute-unbounded.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-revolute-unbounded-unaligned.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joints.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-spherical.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-spherical-ZYX.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-translation.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint/joint-universal.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint-motion-subspace-base.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint-motion-subspace-generic.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/joint-motion-subspace.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/liegroup/cartesian-product.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/liegroup/cartesian-product-variant.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/liegroup/cartesian-product-variant.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/liegroup/fwd.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/liegroup/liegroup-algo.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/liegroup/liegroup-algo.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/liegroup/liegroup-base.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/liegroup/liegroup-base.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/liegroup/liegroup-collection.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/liegroup/liegroup-generic.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/liegroup/liegroup.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/liegroup/liegroup-variant-visitors.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/liegroup/liegroup-variant-visitors.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/liegroup/special-euclidean.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/liegroup/special-orthogonal.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/liegroup/vector-space.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/model.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/model.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/model-item.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/pool/fwd.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/pool/geometry.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/pool/model.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/visitor/fusion.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/visitor.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/visitor/joint-binary-visitor.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/visitor/joint-unary-visitor.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/sample-models.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/sample-models.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/aligned-vector.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/archive.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/data.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/eigen.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/csv.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/fcl.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/force.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/frame.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/fwd.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/geometry.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/inertia.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/joints-data.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/joints.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/joints-model.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/joints-motion.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/joints-motion-subspace.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/joints-transform.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/model.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/motion.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/se3.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/serializable.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/spatial.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/static-buffer.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/symmetric3.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/serialization/vector.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/act-on-set.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/act-on-set.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/cartesian-axis.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/classic-acceleration.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/explog.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/explog-quaternion.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/force-base.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/force-dense.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/force.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/force-ref.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/force-tpl.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/fwd.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/inertia.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/log.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/log.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/motion-base.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/motion-dense.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/motion.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/motion-ref.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/motion-tpl.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/motion-zero.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/se3-base.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/se3.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/se3-tpl.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/skew.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/spatial-axis.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/symmetric3.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/utils/axis-label.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/utils/cast.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/utils/check.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/utils/eigen-fix.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/utils/file-io.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/utils/helpers.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/utils/openmp.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/utils/shared-ptr.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/utils/static-if.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/utils/string-generator.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/utils/string.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/utils/timer2.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/utils/timer.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/utils/version.hpp +) + +set( + ${PROJECT_NAME}_PARALLEL_PUBLIC_HEADERS + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/parallel/aba.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/parallel/omp.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/parallel/rnea.hpp +) + +set( + ${PROJECT_NAME}_COLLISION_TEMPLATE_INSTANTIATION_SOURCES + ${PROJECT_SOURCE_DIR}/src/collision/collision.cpp + ${PROJECT_SOURCE_DIR}/src/collision/distance.cpp +) + +set( + ${PROJECT_NAME}_COLLISION_TEMPLATE_INSTANTIATION_PUBLIC_HEADERS + ${PROJECT_SOURCE_DIR}/include/pinocchio/collision/collision.txx + ${PROJECT_SOURCE_DIR}/include/pinocchio/collision/distance.txx +) + +set( + ${PROJECT_NAME}_COLLISION_PUBLIC_HEADERS + ${PROJECT_SOURCE_DIR}/include/pinocchio/collision/collision.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/collision/collision.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/collision/broadphase-callbacks.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/collision/broadphase-callbacks.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/collision/broadphase.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/collision/broadphase.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/collision/distance.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/collision/distance.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/collision/broadphase-manager-base.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/collision/broadphase-manager.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/collision/broadphase-manager.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/collision/tree-broadphase-manager.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/collision/tree-broadphase-manager.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/collision/fcl-pinocchio-conversions.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/collision/pool/fwd.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/collision/pool/broadphase-manager.hpp + # Deprecated header + ${PROJECT_SOURCE_DIR}/include/pinocchio/spatial/fcl-pinocchio-conversions.hpp +) + +set( + ${PROJECT_NAME}_COLLISION_PARALLEL_PUBLIC_HEADERS + ${PROJECT_SOURCE_DIR}/include/pinocchio/collision/parallel/broadphase.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/collision/parallel/geometry.hpp + # Deprecated header + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/parallel/geometry.hpp +) + +set( + ${PROJECT_NAME}_PARSERS_SOURCES + ${PROJECT_SOURCE_DIR}/src/utils/file-explorer.cpp + ${PROJECT_SOURCE_DIR}/src/parsers/mjcf/mjcf-graph.cpp + ${PROJECT_SOURCE_DIR}/src/parsers/mjcf/mjcf-graph-geom.cpp +) + +set( + ${PROJECT_NAME}_PARSERS_PUBLIC_HEADERS + ${PROJECT_SOURCE_DIR}/include/pinocchio/parsers/meshloader-fwd.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/parsers/srdf.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/parsers/srdf.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/parsers/utils.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/utils/file-explorer.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/parsers/mjcf.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/parsers/mjcf/model.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/parsers/mjcf/geometry.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/parsers/mjcf/mjcf-graph.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/parsers/sample-models.hpp +) + +set( + ${PROJECT_NAME}_URDF_SOURCES + ${PROJECT_SOURCE_DIR}/src/parsers/urdf/model.cpp + ${PROJECT_SOURCE_DIR}/src/parsers/urdf/geometry.cpp + ${PROJECT_SOURCE_DIR}/src/parsers/urdf/utils.cpp +) + +set( + ${PROJECT_NAME}_URDF_PUBLIC_HEADERS + ${PROJECT_SOURCE_DIR}/include/pinocchio/parsers/urdf.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/parsers/urdf/model.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/parsers/urdf/geometry.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/parsers/urdf/utils.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/parsers/urdf/types.hpp +) + +set( + ${PROJECT_NAME}_SDF_SOURCES + ${PROJECT_SOURCE_DIR}/src/parsers/sdf/model.cpp + ${PROJECT_SOURCE_DIR}/src/parsers/sdf/geometry.cpp +) + +set( + ${PROJECT_NAME}_SDF_PUBLIC_HEADERS + ${PROJECT_SOURCE_DIR}/include/pinocchio/parsers/sdf.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/parsers/sdf/model.hxx + ${PROJECT_SOURCE_DIR}/include/pinocchio/parsers/sdf/geometry.hxx +) + +set( + ${PROJECT_NAME}_PYTHON_PARSER_PUBLIC_HEADERS + ${PROJECT_SOURCE_DIR}/include/pinocchio/parsers/python.hpp +) set(${PROJECT_NAME}_PYTHON_PARSER_SOURCES ${PROJECT_SOURCE_DIR}/src/parsers/python/model.cpp) set(${PROJECT_NAME}_EXTRA_SOURCES ${PROJECT_SOURCE_DIR}/src/extra/reachable-workspace.cpp) -set(${PROJECT_NAME}_EXTRA_PUBLIC_HEADERS - ${PROJECT_SOURCE_DIR}/include/pinocchio/extra/reachable-workspace.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/extra/reachable-workspace.hxx) +set( + ${PROJECT_NAME}_EXTRA_PUBLIC_HEADERS + ${PROJECT_SOURCE_DIR}/include/pinocchio/extra/reachable-workspace.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/extra/reachable-workspace.hxx +) set(_binary_headers_root ${${PROJECT_NAME}_BINARY_DIR}/include/pinocchio) -set(${PROJECT_NAME}_CORE_GENERATED_PUBLIC_HEADERS - ${_binary_headers_root}/config.hpp ${_binary_headers_root}/deprecated.hpp - ${_binary_headers_root}/warning.hpp) - -set(${PROJECT_NAME}_TEMPLATE_INSTANTIATION_PUBLIC_HEADERS - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/aba-derivatives.txx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/contact-cholesky.txx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/contact-dynamics.txx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/frames-derivatives.txx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/regressor.txx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/joint-configuration.txx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/model.txx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/proximal.txx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/cholesky.txx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/rnea.txx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/jacobian.txx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/geometry.txx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/center-of-mass.txx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/energy.txx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/aba.txx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/frames.txx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/centroidal.txx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/constrained-dynamics-derivatives.txx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/contact-jacobian.txx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/crba.txx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/constrained-dynamics.txx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/centroidal-derivatives.txx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/rnea-derivatives.txx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/impulse-dynamics.txx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/compute-all-terms.txx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/kinematics.txx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/center-of-mass-derivatives.txx - ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/kinematics-derivatives.txx - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/model.txx - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/data.txx - ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/sample-models.txx) - -set(${PROJECT_NAME}_TEMPLATE_INSTANTIATION_SOURCES - ${PROJECT_SOURCE_DIR}/src/algorithm/cholesky.cpp - ${PROJECT_SOURCE_DIR}/src/algorithm/aba.cpp - ${PROJECT_SOURCE_DIR}/src/algorithm/regressor.cpp - ${PROJECT_SOURCE_DIR}/src/algorithm/contact-dynamics.cpp - ${PROJECT_SOURCE_DIR}/src/algorithm/frames-derivatives.cpp - ${PROJECT_SOURCE_DIR}/src/algorithm/impulse-dynamics.cpp - ${PROJECT_SOURCE_DIR}/src/algorithm/model.cpp - ${PROJECT_SOURCE_DIR}/src/algorithm/constrained-dynamics.cpp - ${PROJECT_SOURCE_DIR}/src/algorithm/rnea-derivatives.cpp - ${PROJECT_SOURCE_DIR}/src/algorithm/compute-all-terms.cpp - ${PROJECT_SOURCE_DIR}/src/algorithm/jacobian.cpp - ${PROJECT_SOURCE_DIR}/src/algorithm/energy.cpp - ${PROJECT_SOURCE_DIR}/src/algorithm/centroidal-derivatives.cpp - ${PROJECT_SOURCE_DIR}/src/algorithm/frames.cpp - ${PROJECT_SOURCE_DIR}/src/algorithm/constrained-dynamics-derivatives.cpp - ${PROJECT_SOURCE_DIR}/src/algorithm/center-of-mass.cpp - ${PROJECT_SOURCE_DIR}/src/algorithm/geometry.cpp - ${PROJECT_SOURCE_DIR}/src/algorithm/kinematics.cpp - ${PROJECT_SOURCE_DIR}/src/algorithm/rnea.cpp - ${PROJECT_SOURCE_DIR}/src/algorithm/centroidal.cpp - ${PROJECT_SOURCE_DIR}/src/algorithm/aba-derivatives.cpp - ${PROJECT_SOURCE_DIR}/src/algorithm/crba.cpp - ${PROJECT_SOURCE_DIR}/src/algorithm/contact-cholesky.cpp - ${PROJECT_SOURCE_DIR}/src/algorithm/joint-configuration.cpp - ${PROJECT_SOURCE_DIR}/src/algorithm/center-of-mass-derivatives.cpp - ${PROJECT_SOURCE_DIR}/src/algorithm/proximal.cpp - ${PROJECT_SOURCE_DIR}/src/algorithm/kinematics-derivatives.cpp - ${PROJECT_SOURCE_DIR}/src/algorithm/contact-jacobian.cpp - ${PROJECT_SOURCE_DIR}/src/multibody/model.cpp - ${PROJECT_SOURCE_DIR}/src/multibody/data.cpp - ${PROJECT_SOURCE_DIR}/src/multibody/sample-models.cpp) +set( + ${PROJECT_NAME}_CORE_GENERATED_PUBLIC_HEADERS + ${_binary_headers_root}/config.hpp + ${_binary_headers_root}/deprecated.hpp + ${_binary_headers_root}/warning.hpp +) + +set( + ${PROJECT_NAME}_TEMPLATE_INSTANTIATION_PUBLIC_HEADERS + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/aba-derivatives.txx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/contact-cholesky.txx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/contact-dynamics.txx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/frames-derivatives.txx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/regressor.txx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/joint-configuration.txx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/model.txx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/proximal.txx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/cholesky.txx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/rnea.txx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/jacobian.txx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/geometry.txx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/center-of-mass.txx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/energy.txx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/aba.txx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/frames.txx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/centroidal.txx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/constrained-dynamics-derivatives.txx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/contact-jacobian.txx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/crba.txx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/constrained-dynamics.txx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/centroidal-derivatives.txx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/rnea-derivatives.txx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/impulse-dynamics.txx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/compute-all-terms.txx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/kinematics.txx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/center-of-mass-derivatives.txx + ${PROJECT_SOURCE_DIR}/include/pinocchio/algorithm/kinematics-derivatives.txx + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/model.txx + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/data.txx + ${PROJECT_SOURCE_DIR}/include/pinocchio/multibody/sample-models.txx +) + +set( + ${PROJECT_NAME}_TEMPLATE_INSTANTIATION_SOURCES + ${PROJECT_SOURCE_DIR}/src/algorithm/cholesky.cpp + ${PROJECT_SOURCE_DIR}/src/algorithm/aba.cpp + ${PROJECT_SOURCE_DIR}/src/algorithm/regressor.cpp + ${PROJECT_SOURCE_DIR}/src/algorithm/contact-dynamics.cpp + ${PROJECT_SOURCE_DIR}/src/algorithm/frames-derivatives.cpp + ${PROJECT_SOURCE_DIR}/src/algorithm/impulse-dynamics.cpp + ${PROJECT_SOURCE_DIR}/src/algorithm/model.cpp + ${PROJECT_SOURCE_DIR}/src/algorithm/constrained-dynamics.cpp + ${PROJECT_SOURCE_DIR}/src/algorithm/rnea-derivatives.cpp + ${PROJECT_SOURCE_DIR}/src/algorithm/compute-all-terms.cpp + ${PROJECT_SOURCE_DIR}/src/algorithm/jacobian.cpp + ${PROJECT_SOURCE_DIR}/src/algorithm/energy.cpp + ${PROJECT_SOURCE_DIR}/src/algorithm/centroidal-derivatives.cpp + ${PROJECT_SOURCE_DIR}/src/algorithm/frames.cpp + ${PROJECT_SOURCE_DIR}/src/algorithm/constrained-dynamics-derivatives.cpp + ${PROJECT_SOURCE_DIR}/src/algorithm/center-of-mass.cpp + ${PROJECT_SOURCE_DIR}/src/algorithm/geometry.cpp + ${PROJECT_SOURCE_DIR}/src/algorithm/kinematics.cpp + ${PROJECT_SOURCE_DIR}/src/algorithm/rnea.cpp + ${PROJECT_SOURCE_DIR}/src/algorithm/centroidal.cpp + ${PROJECT_SOURCE_DIR}/src/algorithm/aba-derivatives.cpp + ${PROJECT_SOURCE_DIR}/src/algorithm/crba.cpp + ${PROJECT_SOURCE_DIR}/src/algorithm/contact-cholesky.cpp + ${PROJECT_SOURCE_DIR}/src/algorithm/joint-configuration.cpp + ${PROJECT_SOURCE_DIR}/src/algorithm/center-of-mass-derivatives.cpp + ${PROJECT_SOURCE_DIR}/src/algorithm/proximal.cpp + ${PROJECT_SOURCE_DIR}/src/algorithm/kinematics-derivatives.cpp + ${PROJECT_SOURCE_DIR}/src/algorithm/contact-jacobian.cpp + ${PROJECT_SOURCE_DIR}/src/multibody/model.cpp + ${PROJECT_SOURCE_DIR}/src/multibody/data.cpp + ${PROJECT_SOURCE_DIR}/src/multibody/sample-models.cpp +) # Define Pinocchio Python binding sources and headers -set(${PROJECT_NAME}_BINDINGS_PYTHON_PUBLIC_HEADERS - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/spatial/explog.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/spatial/classic-acceleration.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/spatial/symmetric3.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/spatial/motion.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/spatial/force.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/spatial/inertia.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/spatial/se3.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/algorithm/contact-info.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/algorithm/contact-cholesky.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/algorithm/contact-solver-base.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/algorithm/delassus-operator.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/algorithm/proximal.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/algorithm/algorithms.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/algorithm/constraints/coulomb-friction-cone.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/context.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/pybind11-all.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/pybind11.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/utils/constant.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/utils/version.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/utils/pickle-vector.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/utils/macros.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/utils/path.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/utils/std-vector.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/utils/printable.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/utils/dependencies.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/utils/conversions.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/utils/address.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/utils/copyable.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/utils/registration.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/utils/pickle.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/utils/pickle-map.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/utils/list.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/utils/std-aligned-vector.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/utils/eigen.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/utils/comparable.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/utils/std-map.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/utils/cast.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/utils/deprecation.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/utils/namespace.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/context/cppadcg.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/context/cppad.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/context/casadi.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/context/default.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/context/mpfr.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/context/generic.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/fwd.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/serialization/serialization.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/serialization/serializable.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/math/tridiagonal-matrix.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/math/lanczos-decomposition.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/math/multiprecision/boost/number.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/collision/broadphase-manager-base.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/collision/geometry-functors.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/collision/tree-broadphase-manager.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/multibody/data.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/multibody/frame.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/multibody/geometry-model.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/multibody/joint/joint.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/multibody/model.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/multibody/joint/joint-model.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/multibody/joint/joint-derived.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/multibody/joint/joints-models.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/multibody/joint/joints-variant.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/multibody/joint/joints-datas.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/multibody/joint/joint-data.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/multibody/liegroups.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/multibody/geometry-data.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/multibody/geometry-object.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/parsers/urdf.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/parsers/sdf.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/parsers/mjcf.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/parsers/srdf.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/extra/extras.hpp) - -set(${PROJECT_NAME}_BINDINGS_PYTHON_SOURCES - ${PROJECT_SOURCE_DIR}/bindings/python/spatial/expose-symmetric3.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/spatial/expose-force.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/spatial/expose-inertia.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/spatial/expose-SE3.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/spatial/expose-motion.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/spatial/expose-explog.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/spatial/expose-skew.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-impulse-dynamics.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-model.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-centroidal.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-aba.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-algorithms.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/admm-solver.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/pgs-solver.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-com.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-frames.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-energy.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-contact-dynamics.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-constrained-dynamics-derivatives.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-rnea-derivatives.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-kinematics.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-geometry.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-aba-derivatives.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-contact-solvers.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-contact-inverse-dynamics.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-joints.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-constrained-dynamics.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-rnea.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-contact-jacobian.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/constraints/expose-cones.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-cholesky.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-regressor.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-kinematics-derivatives.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-cat.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-frames-derivatives.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-centroidal-derivatives.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-jacobian.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-delassus.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-impulse-dynamics-derivatives.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-kinematic-regressor.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-crba.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/module.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/utils/version.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/utils/dependencies.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/utils/conversions.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/utils/path.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/math/expose-linalg.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/math/expose-tridiagonal-matrix.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/math/expose-lanczos-decomposition.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/math/expose-rpy.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/math/expose-eigen-types.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/serialization/serialization.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/multibody/expose-model.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/multibody/expose-liegroups.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/multibody/expose-geometry.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/multibody/expose-frame.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/multibody/expose-data.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/multibody/joint/expose-joints.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/multibody/sample-models.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/parsers/sdf/model.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/parsers/sdf/geometry.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/parsers/expose-parsers.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/parsers/urdf/console-bridge.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/parsers/urdf/model.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/parsers/urdf/geometry.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/parsers/srdf.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/parsers/mjcf/model.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/parsers/mjcf/geometry.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/extra/expose-extras.cpp) - -set(${PROJECT_NAME}_BINDINGS_PYTHON_HPP_FCL_SOURCES - ${PROJECT_SOURCE_DIR}/bindings/python/collision/expose-broadphase.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/collision/expose-broadphase-callbacks.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/collision/expose-collision.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/collision/expose-fcl.cpp) - -set(${PROJECT_NAME}_BINDINGS_PYTHON_HPP_FCL_PUBLIC_HEADERS - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/collision/fcl/transform.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/collision/broadphase-manager.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/collision/collision.hpp) - -set(${PROJECT_NAME}_BINDINGS_PYTHON_PARALLEL_SOURCES - ${PROJECT_SOURCE_DIR}/bindings/python/multibody/pool/expose-pool.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/parallel/aba.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/parallel/expose-parallel.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/parallel/rnea.cpp) - -set(${PROJECT_NAME}_BINDINGS_PYTHON_PARALLEL_PUBLIC_HEADERS - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/multibody/pool/model.hpp) - -set(${PROJECT_NAME}_BINDINGS_PYTHON_HPP_FCL_PARALLEL_SOURCES - ${PROJECT_SOURCE_DIR}/bindings/python/collision/parallel/expose-parallel.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/collision/parallel/geometry.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/collision/parallel/broadphase.cpp - ${PROJECT_SOURCE_DIR}/bindings/python/collision/pool/expose-pool.cpp) - -set(${PROJECT_NAME}_BINDINGS_PYTHON_HPP_FCL_PARALLEL_PUBLIC_HEADERS - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/collision/pool/geometry.hpp - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/collision/pool/broadphase-manager.hpp) - -set(${PROJECT_NAME}_BINDINGS_PYTHON_EXTRA_SOURCES - ${PROJECT_SOURCE_DIR}/bindings/python/extra/expose-reachable-workspace.cpp) - -set(${PROJECT_NAME}_BINDINGS_PYTHON_EXTRA_MPFR_PUBLIC_HEADERS - ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/math/multiprecision/boost/number.hpp) - -set(${PROJECT_NAME}_BINDINGS_PYTHON_EXTRA_MPFR_SOURCES - ${PROJECT_SOURCE_DIR}/bindings/python/extra/mpfr/boost_number.cpp) +set( + ${PROJECT_NAME}_BINDINGS_PYTHON_PUBLIC_HEADERS + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/spatial/explog.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/spatial/classic-acceleration.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/spatial/symmetric3.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/spatial/motion.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/spatial/force.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/spatial/inertia.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/spatial/se3.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/algorithm/contact-info.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/algorithm/contact-cholesky.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/algorithm/contact-solver-base.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/algorithm/delassus-operator.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/algorithm/proximal.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/algorithm/algorithms.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/algorithm/constraints/coulomb-friction-cone.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/context.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/pybind11-all.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/pybind11.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/utils/constant.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/utils/version.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/utils/pickle-vector.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/utils/macros.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/utils/path.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/utils/std-vector.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/utils/printable.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/utils/dependencies.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/utils/conversions.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/utils/address.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/utils/copyable.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/utils/registration.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/utils/pickle.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/utils/pickle-map.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/utils/list.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/utils/std-aligned-vector.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/utils/eigen.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/utils/comparable.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/utils/std-map.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/utils/cast.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/utils/deprecation.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/utils/namespace.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/context/cppadcg.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/context/cppad.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/context/casadi.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/context/default.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/context/mpfr.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/context/generic.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/fwd.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/serialization/serialization.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/serialization/serializable.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/math/tridiagonal-matrix.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/math/lanczos-decomposition.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/math/multiprecision/boost/number.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/collision/broadphase-manager-base.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/collision/geometry-functors.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/collision/tree-broadphase-manager.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/multibody/data.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/multibody/frame.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/multibody/geometry-model.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/multibody/joint/joint.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/multibody/model.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/multibody/joint/joint-model.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/multibody/joint/joint-derived.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/multibody/joint/joints-models.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/multibody/joint/joints-variant.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/multibody/joint/joints-datas.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/multibody/joint/joint-data.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/multibody/liegroups.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/multibody/geometry-data.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/multibody/geometry-object.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/parsers/urdf.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/parsers/sdf.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/parsers/mjcf.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/parsers/srdf.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/extra/extras.hpp +) + +set( + ${PROJECT_NAME}_BINDINGS_PYTHON_SOURCES + ${PROJECT_SOURCE_DIR}/bindings/python/spatial/expose-symmetric3.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/spatial/expose-force.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/spatial/expose-inertia.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/spatial/expose-SE3.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/spatial/expose-motion.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/spatial/expose-explog.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/spatial/expose-skew.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-impulse-dynamics.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-model.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-centroidal.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-aba.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-algorithms.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/admm-solver.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/pgs-solver.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-com.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-frames.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-energy.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-contact-dynamics.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-constrained-dynamics-derivatives.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-rnea-derivatives.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-kinematics.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-geometry.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-aba-derivatives.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-contact-solvers.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-contact-inverse-dynamics.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-joints.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-constrained-dynamics.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-rnea.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-contact-jacobian.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/constraints/expose-cones.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-cholesky.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-regressor.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-kinematics-derivatives.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-cat.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-frames-derivatives.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-centroidal-derivatives.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-jacobian.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-delassus.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-impulse-dynamics-derivatives.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-kinematic-regressor.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/expose-crba.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/module.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/utils/version.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/utils/dependencies.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/utils/conversions.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/utils/path.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/math/expose-linalg.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/math/expose-tridiagonal-matrix.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/math/expose-lanczos-decomposition.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/math/expose-rpy.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/math/expose-eigen-types.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/serialization/serialization.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/multibody/expose-model.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/multibody/expose-liegroups.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/multibody/expose-geometry.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/multibody/expose-frame.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/multibody/expose-data.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/multibody/joint/expose-joints.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/multibody/sample-models.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/parsers/sdf/model.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/parsers/sdf/geometry.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/parsers/expose-parsers.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/parsers/urdf/console-bridge.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/parsers/urdf/model.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/parsers/urdf/geometry.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/parsers/srdf.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/parsers/mjcf/model.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/parsers/mjcf/geometry.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/extra/expose-extras.cpp +) + +set( + ${PROJECT_NAME}_BINDINGS_PYTHON_HPP_FCL_SOURCES + ${PROJECT_SOURCE_DIR}/bindings/python/collision/expose-broadphase.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/collision/expose-broadphase-callbacks.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/collision/expose-collision.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/collision/expose-fcl.cpp +) + +set( + ${PROJECT_NAME}_BINDINGS_PYTHON_HPP_FCL_PUBLIC_HEADERS + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/collision/fcl/transform.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/collision/broadphase-manager.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/collision/collision.hpp +) + +set( + ${PROJECT_NAME}_BINDINGS_PYTHON_PARALLEL_SOURCES + ${PROJECT_SOURCE_DIR}/bindings/python/multibody/pool/expose-pool.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/parallel/aba.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/parallel/expose-parallel.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/algorithm/parallel/rnea.cpp +) + +set( + ${PROJECT_NAME}_BINDINGS_PYTHON_PARALLEL_PUBLIC_HEADERS + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/multibody/pool/model.hpp +) + +set( + ${PROJECT_NAME}_BINDINGS_PYTHON_HPP_FCL_PARALLEL_SOURCES + ${PROJECT_SOURCE_DIR}/bindings/python/collision/parallel/expose-parallel.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/collision/parallel/geometry.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/collision/parallel/broadphase.cpp + ${PROJECT_SOURCE_DIR}/bindings/python/collision/pool/expose-pool.cpp +) + +set( + ${PROJECT_NAME}_BINDINGS_PYTHON_HPP_FCL_PARALLEL_PUBLIC_HEADERS + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/collision/pool/geometry.hpp + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/collision/pool/broadphase-manager.hpp +) + +set( + ${PROJECT_NAME}_BINDINGS_PYTHON_EXTRA_SOURCES + ${PROJECT_SOURCE_DIR}/bindings/python/extra/expose-reachable-workspace.cpp +) + +set( + ${PROJECT_NAME}_BINDINGS_PYTHON_EXTRA_MPFR_PUBLIC_HEADERS + ${PROJECT_SOURCE_DIR}/include/pinocchio/bindings/python/math/multiprecision/boost/number.hpp +) + +set( + ${PROJECT_NAME}_BINDINGS_PYTHON_EXTRA_MPFR_SOURCES + ${PROJECT_SOURCE_DIR}/bindings/python/extra/mpfr/boost_number.cpp +) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 500d657f15..7ad64b873f 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -14,42 +14,48 @@ add_library(${PROJECT_NAME}_headers INTERFACE) # Enforce the preprocessed version of boost::list and boost::vector This information is redundant # with the content of include/pinocchio/container/boost-container-limits.hpp but it avoids any # compilation issue. -target_compile_definitions(${PROJECT_NAME}_headers INTERFACE BOOST_MPL_LIMIT_LIST_SIZE=30 - BOOST_MPL_LIMIT_VECTOR_SIZE=30) +target_compile_definitions( + ${PROJECT_NAME}_headers + INTERFACE BOOST_MPL_LIMIT_LIST_SIZE=30 BOOST_MPL_LIMIT_VECTOR_SIZE=30 +) if(INITIALIZE_WITH_NAN) target_compile_definitions(${PROJECT_NAME}_headers INTERFACE EIGEN_INITIALIZE_MATRICES_BY_NAN) endif() if(CHECK_RUNTIME_MALLOC) - target_compile_definitions(${PROJECT_NAME}_headers INTERFACE PINOCCHIO_EIGEN_CHECK_MALLOC - EIGEN_RUNTIME_NO_MALLOC) + target_compile_definitions( + ${PROJECT_NAME}_headers + INTERFACE PINOCCHIO_EIGEN_CHECK_MALLOC EIGEN_RUNTIME_NO_MALLOC + ) endif(CHECK_RUNTIME_MALLOC) -modernize_target_link_libraries( +MODERNIZE_TARGET_LINK_LIBRARIES( ${PROJECT_NAME}_headers SCOPE INTERFACE TARGETS Eigen3::Eigen - INCLUDE_DIRS ${EIGEN3_INCLUDE_DIR}) -modernize_target_link_libraries( + INCLUDE_DIRS ${EIGEN3_INCLUDE_DIR} +) +MODERNIZE_TARGET_LINK_LIBRARIES( ${PROJECT_NAME}_headers SCOPE INTERFACE TARGETS Boost::boost Boost::serialization LIBRARIES ${Boost_SERIALIZATION_LIBRARY} - INCLUDE_DIRS ${Boost_INCLUDE_DIRS}) + INCLUDE_DIRS ${Boost_INCLUDE_DIRS} +) target_include_directories( ${PROJECT_NAME}_headers - INTERFACE $ $ - $) + INTERFACE + $ + $ + $ +) -cxx_flags_by_compiler_frontend( - MSVC "/bigobj" - OUTPUT PUBLIC_OPTIONS - FILTER) +CXX_FLAGS_BY_COMPILER_FRONTEND(MSVC "/bigobj" OUTPUT PUBLIC_OPTIONS FILTER) target_compile_options(${PROJECT_NAME}_headers INTERFACE ${PUBLIC_OPTIONS}) -cxx_flags_by_compiler_frontend(MSVC "NOMINMAX" OUTPUT PUBLIC_DEFINITIONS) +CXX_FLAGS_BY_COMPILER_FRONTEND(MSVC "NOMINMAX" OUTPUT PUBLIC_DEFINITIONS) target_compile_definitions(${PROJECT_NAME}_headers INTERFACE ${PUBLIC_DEFINITIONS}) install( @@ -57,7 +63,8 @@ install( EXPORT ${TARGETS_EXPORT_NAME} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} - RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}) + RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} +) # Define a compiled target This functions take sources and scalar type to use function(PINOCCHIO_TARGET target_name) @@ -78,9 +85,7 @@ function(PINOCCHIO_TARGET target_name) # Export PUBLIC scope to caller if(ARGS_LIBRARY_PUBLIC_SCOPE) - set(${ARGS_LIBRARY_PUBLIC_SCOPE} - ${LIBRARY_PUBLIC_SCOPE} - PARENT_SCOPE) + set(${ARGS_LIBRARY_PUBLIC_SCOPE} ${LIBRARY_PUBLIC_SCOPE} PARENT_SCOPE) endif() add_library(${LIB_NAME} ${LIBRARY_TYPE}) @@ -90,16 +95,17 @@ function(PINOCCHIO_TARGET target_name) # INSTALL_RPATH and VERSION on an INTERFACE target. if(NOT ARGS_INTERFACE OR CMAKE_VERSION GREATER 3.16) target_sources(${LIB_NAME} PRIVATE ${ARGS_SOURCES}) - target_sources( - ${LIB_NAME} PRIVATE ${${PROJECT_NAME}_CORE_PUBLIC_HEADERS}) # For IDE to get includes part of - # the project automatically. + target_sources(${LIB_NAME} PRIVATE ${${PROJECT_NAME}_CORE_PUBLIC_HEADERS}) # For IDE to get includes part of + # the project automatically. set_target_properties( ${LIB_NAME} - PROPERTIES LINKER_LANGUAGE CXX - INSTALL_RPATH "\$ORIGIN" - VERSION ${PROJECT_VERSION} - CXX_VISIBILITY_PRESET hidden - VISIBILITY_INLINES_HIDDEN ON) + PROPERTIES + LINKER_LANGUAGE CXX + INSTALL_RPATH "\$ORIGIN" + VERSION ${PROJECT_VERSION} + CXX_VISIBILITY_PRESET hidden + VISIBILITY_INLINES_HIDDEN ON + ) endif() if(ENABLE_TEMPLATE_INSTANTIATION AND NOT ARGS_INTERFACE) @@ -107,16 +113,20 @@ function(PINOCCHIO_TARGET target_name) target_compile_definitions( ${LIB_NAME} PUBLIC PINOCCHIO_ENABLE_TEMPLATE_INSTANTIATION - PRIVATE PINOCCHIO_CONTEXT_FILE="${PINOCCHIO_CONTEXT_FILE_VALUE}") + PRIVATE PINOCCHIO_CONTEXT_FILE="${PINOCCHIO_CONTEXT_FILE_VALUE}" + ) endif() target_include_directories( - ${LIB_NAME} ${LIBRARY_PUBLIC_SCOPE} $ + ${LIB_NAME} + ${LIBRARY_PUBLIC_SCOPE} + $ $ - $) + $ + ) if(BUILD_WITH_COMMIT_VERSION) - tag_library_version(${LIB_NAME}) + TAG_LIBRARY_VERSION(${LIB_NAME}) endif() install( @@ -124,66 +134,61 @@ function(PINOCCHIO_TARGET target_name) EXPORT ${TARGETS_EXPORT_NAME} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} - RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}) + RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} + ) endfunction() # Define a template instantiation target function(PINOCCHIO_SPECIFIC_TYPE scalar_name scope) set(LIB_NAME "${PROJECT_NAME}_${scalar_name}") if(ENABLE_TEMPLATE_INSTANTIATION) - pinocchio_target( + PINOCCHIO_TARGET( ${LIB_NAME} SCALAR ${scalar_name} SOURCES ${${PROJECT_NAME}_CORE_SOURCES} - LIBRARY_PUBLIC_SCOPE PUBLIC_SCOPE) + LIBRARY_PUBLIC_SCOPE PUBLIC_SCOPE + ) # By default DEFINE_SYMBOL add -D${LIB_NAME}_EXPORTS. Don't use ${LIB_NAME}_EXPORTS define since # pinocchio/config.hpp use pinocchio_EXPORTS. This allow to use the same DLLAPI define for all # template instantiation libraries. set_target_properties(${LIB_NAME} PROPERTIES DEFINE_SYMBOL "${PROJECT_NAME}_EXPORTS") - set(${scope} - ${PUBLIC_SCOPE} - PARENT_SCOPE) + set(${scope} ${PUBLIC_SCOPE} PARENT_SCOPE) else() - pinocchio_target( + PINOCCHIO_TARGET( ${LIB_NAME} SCALAR ${scalar_name} SOURCES ${${PROJECT_NAME}_CORE_SOURCES} LIBRARY_PUBLIC_SCOPE PUBLIC_SCOPE - INTERFACE) - set(${scope} - ${PUBLIC_SCOPE} - PARENT_SCOPE) + INTERFACE + ) + set(${scope} ${PUBLIC_SCOPE} PARENT_SCOPE) endif() endfunction() function(PINOCCHIO_CONFIG directory lib_name) string(TOUPPER ${lib_name} upper_lib_name) - generate_configuration_header_v2( - INCLUDE_DIR - ${PROJECT_BINARY_DIR}/include - HEADER_DIR - pinocchio/${directory} - FILENAME - config.hpp - LIBRARY_NAME - ${upper_lib_name} - EXPORT_SYMBOL - ${lib_name}_EXPORTS) + GENERATE_CONFIGURATION_HEADER_V2( + INCLUDE_DIR ${PROJECT_BINARY_DIR}/include + HEADER_DIR pinocchio/${directory} + FILENAME config.hpp + LIBRARY_NAME ${upper_lib_name} + EXPORT_SYMBOL ${lib_name}_EXPORTS + ) endfunction() -add_source_group(${PROJECT_NAME}_CORE_SOURCES) -add_source_group(${PROJECT_NAME}_PARSERS_SOURCES) -add_source_group(${PROJECT_NAME}_EXTRA_SOURCES) -add_header_group(${PROJECT_NAME}_CORE_PUBLIC_HEADERS) -add_header_group(${PROJECT_NAME}_PARSERS_PUBLIC_HEADERS) -add_header_group(${PROJECT_NAME}_COLLISION_PUBLIC_HEADERS) -add_header_group(${PROJECT_NAME}_EXTRA_PUBLIC_HEADERS) -add_header_group(${PROJECT_NAME}_CORE_GENERATED_PUBLIC_HEADERS) +ADD_SOURCE_GROUP(${PROJECT_NAME}_CORE_SOURCES) +ADD_SOURCE_GROUP(${PROJECT_NAME}_PARSERS_SOURCES) +ADD_SOURCE_GROUP(${PROJECT_NAME}_EXTRA_SOURCES) +ADD_HEADER_GROUP(${PROJECT_NAME}_CORE_PUBLIC_HEADERS) +ADD_HEADER_GROUP(${PROJECT_NAME}_PARSERS_PUBLIC_HEADERS) +ADD_HEADER_GROUP(${PROJECT_NAME}_COLLISION_PUBLIC_HEADERS) +ADD_HEADER_GROUP(${PROJECT_NAME}_EXTRA_PUBLIC_HEADERS) +ADD_HEADER_GROUP(${PROJECT_NAME}_CORE_GENERATED_PUBLIC_HEADERS) # Define the default target (double). # # This target will also have hpp-fcl and workspace module in it. -pinocchio_specific_type(default DEFAULT_SCOPE) +PINOCCHIO_SPECIFIC_TYPE(default DEFAULT_SCOPE) # Some core library algorithms have different behavior if PINOCCHIO_WITH_HPP_FCL is defined. Since # some are template instantiated, or some user can link only on pinocchio_default, we muste define @@ -191,22 +196,26 @@ pinocchio_specific_type(default DEFAULT_SCOPE) if(BUILD_WITH_HPP_FCL_SUPPORT) target_compile_definitions(pinocchio_default PUBLIC PINOCCHIO_WITH_HPP_FCL) target_include_directories( - pinocchio_default PUBLIC $) - + pinocchio_default + PUBLIC $ + ) endif() # Define the extra target This target hold extra algorithms. if(BUILD_WITH_EXTRA_SUPPORT) set(EXTRA_LIB_NAME "${PROJECT_NAME}_extra") - pinocchio_target( + PINOCCHIO_TARGET( ${EXTRA_LIB_NAME} SCALAR default - SOURCES ${${PROJECT_NAME}_EXTRA_SOURCES} ${${PROJECT_NAME}_EXTRA_PUBLIC_HEADERS}) - pinocchio_config(extra ${EXTRA_LIB_NAME}) + SOURCES ${${PROJECT_NAME}_EXTRA_SOURCES} ${${PROJECT_NAME}_EXTRA_PUBLIC_HEADERS} + ) + PINOCCHIO_CONFIG(extra ${EXTRA_LIB_NAME}) - target_link_libraries(${EXTRA_LIB_NAME} PUBLIC ${PROJECT_NAME}_default Qhull::qhullcpp - Qhull::qhull_r) + target_link_libraries( + ${EXTRA_LIB_NAME} + PUBLIC ${PROJECT_NAME}_default Qhull::qhullcpp Qhull::qhull_r + ) target_compile_definitions(${EXTRA_LIB_NAME} PUBLIC PINOCCHIO_WITH_EXTRA_SUPPORT) endif() @@ -215,11 +224,12 @@ endif() if(BUILD_WITH_OPENMP_SUPPORT) set(PARALLEL_LIB_NAME "${PROJECT_NAME}_parallel") - pinocchio_target( + PINOCCHIO_TARGET( ${PARALLEL_LIB_NAME} SCALAR default SOURCES ${${PROJECT_NAME}_PARALLEL_PUBLIC_HEADERS} - INTERFACE) + INTERFACE + ) target_link_libraries(${PARALLEL_LIB_NAME} INTERFACE ${PROJECT_NAME}_default OpenMP::OpenMP_CXX) endif() @@ -228,11 +238,12 @@ endif() if(BUILD_WITH_HPP_FCL_SUPPORT) set(COLLISION_LIB_NAME "${PROJECT_NAME}_collision") - pinocchio_target( + PINOCCHIO_TARGET( ${COLLISION_LIB_NAME} SCALAR default - SOURCES ${${PROJECT_NAME}_COLLISION_SOURCES} ${${PROJECT_NAME}_COLLISION_PUBLIC_HEADERS}) - pinocchio_config(collision ${COLLISION_LIB_NAME}) + SOURCES ${${PROJECT_NAME}_COLLISION_SOURCES} ${${PROJECT_NAME}_COLLISION_PUBLIC_HEADERS} + ) + PINOCCHIO_CONFIG(collision ${COLLISION_LIB_NAME}) target_compile_definitions(${COLLISION_LIB_NAME} PUBLIC PINOCCHIO_WITH_HPP_FCL) target_link_libraries(${COLLISION_LIB_NAME} PUBLIC ${PROJECT_NAME}_default hpp-fcl::hpp-fcl) @@ -241,14 +252,17 @@ if(BUILD_WITH_HPP_FCL_SUPPORT) if(BUILD_WITH_OPENMP_SUPPORT) set(COLLISION_PARALLEL_LIB_NAME "${PROJECT_NAME}_collision_parallel") - pinocchio_target( + PINOCCHIO_TARGET( ${COLLISION_PARALLEL_LIB_NAME} SCALAR default SOURCES ${${PROJECT_NAME}_COLLISION_PARALLEL_PUBLIC_HEADERS} - INTERFACE) + INTERFACE + ) - target_link_libraries(${COLLISION_PARALLEL_LIB_NAME} INTERFACE ${COLLISION_LIB_NAME} - OpenMP::OpenMP_CXX) + target_link_libraries( + ${COLLISION_PARALLEL_LIB_NAME} + INTERFACE ${COLLISION_LIB_NAME} OpenMP::OpenMP_CXX + ) endif() endif() @@ -258,31 +272,35 @@ endif() if(BUILD_WITH_PARSERS_SUPPORT) set(PARSERS_LIB_NAME "${PROJECT_NAME}_parsers") - pinocchio_target( + PINOCCHIO_TARGET( ${PARSERS_LIB_NAME} SCALAR default - SOURCES ${${PROJECT_NAME}_PARSERS_SOURCES} ${${PROJECT_NAME}_PARSERS_PUBLIC_HEADERS}) - pinocchio_config(parsers ${PARSERS_LIB_NAME}) + SOURCES ${${PROJECT_NAME}_PARSERS_SOURCES} ${${PROJECT_NAME}_PARSERS_PUBLIC_HEADERS} + ) + PINOCCHIO_CONFIG(parsers ${PARSERS_LIB_NAME}) target_link_libraries(${PARSERS_LIB_NAME} PUBLIC ${PROJECT_NAME}_default) if(BUILD_WITH_HPP_FCL_SUPPORT) target_link_libraries(${PARSERS_LIB_NAME} PUBLIC ${PROJECT_NAME}_collision) endif() - modernize_target_link_libraries( + MODERNIZE_TARGET_LINK_LIBRARIES( ${PARSERS_LIB_NAME} SCOPE PUBLIC TARGETS Boost::filesystem LIBRARIES ${Boost_FILESYSTEM_LIBRARY}} - INCLUDE_DIRS ${Boost_INCLUDE_DIRS}) + INCLUDE_DIRS ${Boost_INCLUDE_DIRS} + ) # Special care of urdfdom version if(BUILD_WITH_URDF_SUPPORT) target_compile_definitions(${PARSERS_LIB_NAME} PUBLIC PINOCCHIO_WITH_URDFDOM) if(${urdfdom_VERSION} VERSION_LESS "0.3.0") - target_compile_definitions(${PARSERS_LIB_NAME} - PRIVATE PINOCCHIO_URDFDOM_COLLISION_WITH_GROUP_NAME) + target_compile_definitions( + ${PARSERS_LIB_NAME} + PRIVATE PINOCCHIO_URDFDOM_COLLISION_WITH_GROUP_NAME + ) endif() # defines types from version 0.4.0 if(NOT ${urdfdom_VERSION} VERSION_LESS "0.4.0") @@ -293,12 +311,13 @@ if(BUILD_WITH_PARSERS_SUPPORT) target_compile_definitions(${PARSERS_LIB_NAME} PRIVATE PINOCCHIO_URDFDOM_USE_STD_SHARED_PTR) endif() - modernize_target_link_libraries( + MODERNIZE_TARGET_LINK_LIBRARIES( ${PARSERS_LIB_NAME} SCOPE PUBLIC TARGETS urdfdom::urdf_parser LIBRARIES ${urdfdom_LIBRARIES} - INCLUDE_DIRS ${urdfdom_INCLUDE_DIRS}) + INCLUDE_DIRS ${urdfdom_INCLUDE_DIRS} + ) endif() if(BUILD_WITH_SDF_SUPPORT) @@ -310,45 +329,57 @@ endif() # Define cppad codegen target. if(BUILD_WITH_CODEGEN_SUPPORT) - pinocchio_specific_type(cppadcg CPPADCG_SCOPE) + PINOCCHIO_SPECIFIC_TYPE(cppadcg CPPADCG_SCOPE) # CPPAD_DEBUG_AND_RELEASE allow to mix debug and release versions of CppAD in the same program. # This can happen when Pinocchio is build in Debug mode using another library using cppad. target_compile_definitions(${PROJECT_NAME}_cppadcg PUBLIC CPPAD_DEBUG_AND_RELEASE) - target_include_directories(${PROJECT_NAME}_cppadcg SYSTEM ${CPPADCG_SCOPE} - $) - target_link_libraries(${PROJECT_NAME}_cppadcg ${CPPADCG_SCOPE} ${cppadcg_LIBRARY} - ${cppad_LIBRARY}) + target_include_directories( + ${PROJECT_NAME}_cppadcg + SYSTEM + ${CPPADCG_SCOPE} + $ + ) + target_link_libraries( + ${PROJECT_NAME}_cppadcg + ${CPPADCG_SCOPE} + ${cppadcg_LIBRARY} + ${cppad_LIBRARY} + ) endif() # Define cppad target. if(BUILD_WITH_AUTODIFF_SUPPORT) - pinocchio_specific_type(cppad CPPAD_SCOPE) + PINOCCHIO_SPECIFIC_TYPE(cppad CPPAD_SCOPE) # CPPAD_DEBUG_AND_RELEASE allow to mix debug and release versions of CppAD in the same program. # This can happen when Pinocchio is build in Debug mode using another library using cppad. target_compile_definitions(${PROJECT_NAME}_cppad PUBLIC CPPAD_DEBUG_AND_RELEASE) - target_include_directories(${PROJECT_NAME}_cppad SYSTEM ${CPPAD_SCOPE} - $) + target_include_directories( + ${PROJECT_NAME}_cppad + SYSTEM + ${CPPAD_SCOPE} + $ + ) target_link_libraries(${PROJECT_NAME}_cppad ${CPPAD_SCOPE} ${cppad_LIBRARY}) endif() # Define casadi target. if(BUILD_WITH_CASADI_SUPPORT) - pinocchio_specific_type(casadi CASADI_SCOPE) + PINOCCHIO_SPECIFIC_TYPE(casadi CASADI_SCOPE) target_link_libraries(${PROJECT_NAME}_casadi ${CASADI_SCOPE} casadi) endif() if(BUILD_WITH_PYTHON_PARSER_SUPPORT) set(PYTHON_PARSER_LIB_NAME "${PROJECT_NAME}_python_parser") - pinocchio_target( + PINOCCHIO_TARGET( ${PYTHON_PARSER_LIB_NAME} SCALAR default - SOURCES ${${PROJECT_NAME}_PYTHON_PARSER_SOURCES} - ${${PROJECT_NAME}_PYTHON_PARSER_PUBLIC_HEADERS}) - pinocchio_config(python_parser ${PYTHON_PARSER_LIB_NAME}) + SOURCES ${${PROJECT_NAME}_PYTHON_PARSER_SOURCES} ${${PROJECT_NAME}_PYTHON_PARSER_PUBLIC_HEADERS} + ) + PINOCCHIO_CONFIG(python_parser ${PYTHON_PARSER_LIB_NAME}) target_link_libraries(${PYTHON_PARSER_LIB_NAME} PUBLIC ${PROJECT_NAME}_default Python3::Python) - target_link_boost_python(${PYTHON_PARSER_LIB_NAME} PUBLIC) + TARGET_LINK_BOOST_PYTHON(${PYTHON_PARSER_LIB_NAME} PUBLIC) endif() # Define main target (default, parsers, extra). @@ -378,4 +409,5 @@ install( EXPORT ${TARGETS_EXPORT_NAME} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} - RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}) + RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} +) diff --git a/unittest/CMakeLists.txt b/unittest/CMakeLists.txt index 5518dc1b48..0d33ac1880 100644 --- a/unittest/CMakeLists.txt +++ b/unittest/CMakeLists.txt @@ -8,62 +8,64 @@ # --- MACROS ------------------------------------------------------------------ function(ADD_TEST_CFLAGS target) - get_cpp_test_name(${target} ${CMAKE_CURRENT_SOURCE_DIR} test_name) + GET_CPP_TEST_NAME(${target} ${CMAKE_CURRENT_SOURCE_DIR} test_name) foreach(ARG ${ARGN}) - set_property( - TARGET ${test_name} - APPEND_STRING - PROPERTY COMPILE_FLAGS "${ARG} ") + set_property(TARGET ${test_name} APPEND_STRING PROPERTY COMPILE_FLAGS "${ARG} ") endforeach() endfunction() # Compute flags outside the macro to avoid recomputing it for each tests -cxx_flags_by_compiler_frontend(MSVC _USE_MATH_DEFINES OUTPUT TEST_PRIVATE_DEFINITIONS) +CXX_FLAGS_BY_COMPILER_FRONTEND(MSVC _USE_MATH_DEFINES OUTPUT TEST_PRIVATE_DEFINITIONS) function(GET_CPP_TEST_NAME name src_dir full_test_name) string(REPLACE "${PINOCCHIO_UNIT_TEST_DIR}" "" prefix_name "${src_dir}") string(REGEX REPLACE "[/]" "-" prefix_name "${prefix_name}-") - set(${full_test_name} - "${PROJECT_NAME}-test-cpp${prefix_name}${name}" - PARENT_SCOPE) + set(${full_test_name} "${PROJECT_NAME}-test-cpp${prefix_name}${name}" PARENT_SCOPE) endfunction() set(PINOCCHIO_UNIT_TEST_DIR ${CMAKE_CURRENT_SOURCE_DIR}) function(ADD_PINOCCHIO_UNIT_TEST name) - set(options - HEADER_ONLY - PARSERS - EXTRA - COLLISION - PARALLEL - PYTHON_PARSER - PARSERS_OPTIONAL - EXTRA_OPTIONAL - COLLISION_OPTIONAL - PARALLEL_OPTIONAL) + set( + options + HEADER_ONLY + PARSERS + EXTRA + COLLISION + PARALLEL + PYTHON_PARSER + PARSERS_OPTIONAL + EXTRA_OPTIONAL + COLLISION_OPTIONAL + PARALLEL_OPTIONAL + ) set(oneValueArgs) set(multiValueArgs PACKAGES) cmake_parse_arguments(unit_test "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN}) set(PKGS ${unit_test_PACKAGES}) - get_cpp_test_name(${name} ${CMAKE_CURRENT_SOURCE_DIR} TEST_NAME) - add_unit_test(${TEST_NAME} ${name}.cpp) + GET_CPP_TEST_NAME(${name} ${CMAKE_CURRENT_SOURCE_DIR} TEST_NAME) + ADD_UNIT_TEST(${TEST_NAME} ${name}.cpp) set(MODULE_NAME "${NAME}Test") string(REPLACE "-" "_" MODULE_NAME ${MODULE_NAME}) target_compile_definitions( ${TEST_NAME} - PRIVATE ${TEST_PRIVATE_DEFINITIONS} BOOST_TEST_DYN_LINK BOOST_TEST_MODULE=${MODULE_NAME} - PINOCCHIO_MODEL_DIR=\"${PINOCCHIO_MODEL_DIR}\") + PRIVATE + ${TEST_PRIVATE_DEFINITIONS} + BOOST_TEST_DYN_LINK + BOOST_TEST_MODULE=${MODULE_NAME} + PINOCCHIO_MODEL_DIR=\"${PINOCCHIO_MODEL_DIR}\" + ) # There is no RPATH in Windows, then we must use the PATH to find the DLL if(WIN32) string(REPLACE ";" "\\\;" _PATH "$ENV{PATH}") - set(ENV_VARIABLES - "PATH=${_PATH}\\\;${PROJECT_BINARY_DIR}/src\\\;${PROJECT_BINARY_DIR}/bindings/python/pinocchio" + set( + ENV_VARIABLES + "PATH=${_PATH}\\\;${PROJECT_BINARY_DIR}/src\\\;${PROJECT_BINARY_DIR}/bindings/python/pinocchio" ) set_tests_properties(${TEST_NAME} PROPERTIES ENVIRONMENT "${ENV_VARIABLES}") endif() @@ -96,9 +98,9 @@ function(ADD_PINOCCHIO_UNIT_TEST name) if(unit_test_PYTHON_PARSER) target_link_libraries(${TEST_NAME} PUBLIC ${PROJECT_NAME}_python_parser) - add_windows_dll_path_to_test(${TEST_NAME}) + ADD_WINDOWS_DLL_PATH_TO_TEST(${TEST_NAME}) get_test_property(${TEST_NAME} ENVIRONMENT ENV_VARIABLES) - compute_pythonpath(PYTHON_ENV_VARIABLES "bindings/python") + COMPUTE_PYTHONPATH(PYTHON_ENV_VARIABLES "bindings/python") list(APPEND ENV_VARIABLES ${PYTHON_ENV_VARIABLES}) if(WIN32) # This line is mandatory because of Github action. The test run well on Windows + Conda. This @@ -110,11 +112,12 @@ function(ADD_PINOCCHIO_UNIT_TEST name) set_tests_properties(${TEST_NAME} PROPERTIES ENVIRONMENT "${ENV_VARIABLES}") endif() - modernize_target_link_libraries( + MODERNIZE_TARGET_LINK_LIBRARIES( ${TEST_NAME} SCOPE PRIVATE TARGETS Boost::unit_test_framework - LIBRARIES ${Boost_UNIT_TEST_FRAMEWORK_LIBRARY}) + LIBRARIES ${Boost_UNIT_TEST_FRAMEWORK_LIBRARY} + ) if(PKGS) target_link_libraries(${TEST_NAME} PRIVATE ${PKGS}) @@ -123,7 +126,7 @@ endfunction() macro(ADD_PINOCCHIO_PARALLEL_UNIT_TEST NAME) if(BUILD_WITH_OPENMP_SUPPORT) - add_pinocchio_unit_test(${ARGV} PARALLEL) + ADD_PINOCCHIO_UNIT_TEST(${ARGV} PARALLEL) endif() endmacro() @@ -131,116 +134,91 @@ endmacro() find_package(Boost COMPONENTS unit_test_framework) # Header only -add_pinocchio_unit_test(macros HEADER_ONLY) +ADD_PINOCCHIO_UNIT_TEST(macros HEADER_ONLY) # Math components -add_pinocchio_unit_test(eigen-basic-op) -add_pinocchio_unit_test(eigen-tensor) -add_pinocchio_unit_test(sincos) -add_pinocchio_unit_test(quaternion) -add_pinocchio_unit_test(rpy) -add_pinocchio_unit_test(rotation) -add_pinocchio_unit_test(vector) -add_pinocchio_unit_test(eigenvalues) -add_pinocchio_unit_test(tridiagonal-matrix) +ADD_PINOCCHIO_UNIT_TEST(eigen-basic-op) +ADD_PINOCCHIO_UNIT_TEST(eigen-tensor) +ADD_PINOCCHIO_UNIT_TEST(sincos) +ADD_PINOCCHIO_UNIT_TEST(quaternion) +ADD_PINOCCHIO_UNIT_TEST(rpy) +ADD_PINOCCHIO_UNIT_TEST(rotation) +ADD_PINOCCHIO_UNIT_TEST(vector) +ADD_PINOCCHIO_UNIT_TEST(eigenvalues) +ADD_PINOCCHIO_UNIT_TEST(tridiagonal-matrix) # TOOD This test contains an undefined behavior and is not stable. Reactivte the test when the fix # is merged. # add_pinocchio_unit_test(lanczos-decomposition) -add_pinocchio_unit_test(gram-schmidt-orthonormalisation) +ADD_PINOCCHIO_UNIT_TEST(gram-schmidt-orthonormalisation) # Derivatives algo -add_pinocchio_unit_test(kinematics-derivatives) -add_pinocchio_unit_test(frames-derivatives) -add_pinocchio_unit_test(rnea-derivatives) -add_pinocchio_unit_test(aba-derivatives) -add_pinocchio_unit_test(centroidal-derivatives) -add_pinocchio_unit_test(center-of-mass-derivatives) -add_pinocchio_unit_test(constrained-dynamics-derivatives) -add_pinocchio_unit_test(rnea-second-order-derivatives) +ADD_PINOCCHIO_UNIT_TEST(kinematics-derivatives) +ADD_PINOCCHIO_UNIT_TEST(frames-derivatives) +ADD_PINOCCHIO_UNIT_TEST(rnea-derivatives) +ADD_PINOCCHIO_UNIT_TEST(aba-derivatives) +ADD_PINOCCHIO_UNIT_TEST(centroidal-derivatives) +ADD_PINOCCHIO_UNIT_TEST(center-of-mass-derivatives) +ADD_PINOCCHIO_UNIT_TEST(constrained-dynamics-derivatives) +ADD_PINOCCHIO_UNIT_TEST(rnea-second-order-derivatives) # Pinocchio features -add_pinocchio_unit_test(spatial) -add_pinocchio_unit_test(symmetric) -add_pinocchio_unit_test(aba) -add_pinocchio_parallel_unit_test(parallel-aba) -add_pinocchio_unit_test(rnea) -add_pinocchio_parallel_unit_test(parallel-rnea) -add_pinocchio_unit_test(crba) -add_pinocchio_unit_test(centroidal) -add_pinocchio_unit_test(com) -add_pinocchio_unit_test(joint-jacobian) -add_pinocchio_unit_test(cholesky) -add_pinocchio_unit_test(constrained-dynamics) -add_pinocchio_unit_test(contact-models) -add_pinocchio_unit_test(contact-dynamics) -add_pinocchio_unit_test(contact-inverse-dynamics) -add_pinocchio_unit_test(closed-loop-dynamics) -add_pinocchio_unit_test(sample-models COLLISION_OPTIONAL) -add_pinocchio_unit_test(kinematics) +ADD_PINOCCHIO_UNIT_TEST(spatial) +ADD_PINOCCHIO_UNIT_TEST(symmetric) +ADD_PINOCCHIO_UNIT_TEST(aba) +ADD_PINOCCHIO_PARALLEL_UNIT_TEST(parallel-aba) +ADD_PINOCCHIO_UNIT_TEST(rnea) +ADD_PINOCCHIO_PARALLEL_UNIT_TEST(parallel-rnea) +ADD_PINOCCHIO_UNIT_TEST(crba) +ADD_PINOCCHIO_UNIT_TEST(centroidal) +ADD_PINOCCHIO_UNIT_TEST(com) +ADD_PINOCCHIO_UNIT_TEST(joint-jacobian) +ADD_PINOCCHIO_UNIT_TEST(cholesky) +ADD_PINOCCHIO_UNIT_TEST(constrained-dynamics) +ADD_PINOCCHIO_UNIT_TEST(contact-models) +ADD_PINOCCHIO_UNIT_TEST(contact-dynamics) +ADD_PINOCCHIO_UNIT_TEST(contact-inverse-dynamics) +ADD_PINOCCHIO_UNIT_TEST(closed-loop-dynamics) +ADD_PINOCCHIO_UNIT_TEST(sample-models COLLISION_OPTIONAL) +ADD_PINOCCHIO_UNIT_TEST(kinematics) # Test for unstable features TODO fix and reactivate these tests in next version # ADD_PINOCCHIO_UNIT_TEST(delassus) ADD_PINOCCHIO_UNIT_TEST(pv-solver) -add_pinocchio_unit_test(impulse-dynamics-derivatives) +ADD_PINOCCHIO_UNIT_TEST(impulse-dynamics-derivatives) if(BUILD_WITH_SDF_SUPPORT) - add_pinocchio_unit_test(contact-dynamics-derivatives PARSERS) + ADD_PINOCCHIO_UNIT_TEST(contact-dynamics-derivatives PARSERS) else() - add_pinocchio_unit_test(contact-dynamics-derivatives) + ADD_PINOCCHIO_UNIT_TEST(contact-dynamics-derivatives) endif() -add_pinocchio_unit_test(constraint-variants) -add_pinocchio_unit_test(impulse-dynamics) +ADD_PINOCCHIO_UNIT_TEST(constraint-variants) +ADD_PINOCCHIO_UNIT_TEST(impulse-dynamics) -add_pinocchio_unit_test( - mjcf - PARSERS - COLLISION_OPTIONAL) +ADD_PINOCCHIO_UNIT_TEST(mjcf PARSERS COLLISION_OPTIONAL) if(BUILD_WITH_URDF_SUPPORT) - add_pinocchio_unit_test( - urdf - PARSERS - COLLISION_OPTIONAL) + ADD_PINOCCHIO_UNIT_TEST(urdf PARSERS COLLISION_OPTIONAL) - add_pinocchio_unit_test(value PARSERS) + ADD_PINOCCHIO_UNIT_TEST(value PARSERS) if(BUILD_WITH_HPP_FCL_SUPPORT) - add_pinocchio_unit_test(geometry-object COLLISION) - add_pinocchio_unit_test( - geometry-model - PARSERS - COLLISION) - add_pinocchio_unit_test( - geometry-algorithms - PARSERS - COLLISION) - add_pinocchio_unit_test( - broadphase - PARSERS - COLLISION) - add_pinocchio_unit_test( - tree-broadphase - PARSERS - COLLISION) - add_pinocchio_parallel_unit_test(parallel-geometry PARSERS COLLISION) - add_pinocchio_unit_test( - srdf - PARSERS - COLLISION) + ADD_PINOCCHIO_UNIT_TEST(geometry-object COLLISION) + ADD_PINOCCHIO_UNIT_TEST(geometry-model PARSERS COLLISION) + ADD_PINOCCHIO_UNIT_TEST(geometry-algorithms PARSERS COLLISION) + ADD_PINOCCHIO_UNIT_TEST(broadphase PARSERS COLLISION) + ADD_PINOCCHIO_UNIT_TEST(tree-broadphase PARSERS COLLISION) + ADD_PINOCCHIO_PARALLEL_UNIT_TEST(parallel-geometry PARSERS COLLISION) + ADD_PINOCCHIO_UNIT_TEST(srdf PARSERS COLLISION) endif() endif() if(BUILD_WITH_SDF_SUPPORT) - add_pinocchio_unit_test(sdf PARSERS) + ADD_PINOCCHIO_UNIT_TEST(sdf PARSERS) endif() if(BUILD_WITH_EXTRA_SUPPORT) - add_pinocchio_unit_test( - reachable-workspace - PARSERS - EXTRA - COLLISION_OPTIONAL) + ADD_PINOCCHIO_UNIT_TEST(reachable-workspace PARSERS EXTRA COLLISION_OPTIONAL) endif() if(BUILD_WITH_PYTHON_PARSER_SUPPORT) - add_pinocchio_unit_test(python_parser PYTHON_PARSER) + ADD_PINOCCHIO_UNIT_TEST(python_parser PYTHON_PARSER) endif() if(BUILD_PYTHON_INTERFACE) @@ -248,68 +226,72 @@ if(BUILD_PYTHON_INTERFACE) endif() # Test over the joints -add_pinocchio_unit_test(all-joints) -add_pinocchio_unit_test(joint-revolute) -add_pinocchio_unit_test(joint-prismatic) -add_pinocchio_unit_test(joint-planar) -add_pinocchio_unit_test(joint-free-flyer) -add_pinocchio_unit_test(joint-spherical) -add_pinocchio_unit_test(joint-translation) -add_pinocchio_unit_test(joint-generic) -add_pinocchio_unit_test(joint-composite) -add_pinocchio_unit_test(joint-mimic) -add_pinocchio_unit_test(joint-helical) -add_pinocchio_unit_test(joint-universal) +ADD_PINOCCHIO_UNIT_TEST(all-joints) +ADD_PINOCCHIO_UNIT_TEST(joint-revolute) +ADD_PINOCCHIO_UNIT_TEST(joint-prismatic) +ADD_PINOCCHIO_UNIT_TEST(joint-planar) +ADD_PINOCCHIO_UNIT_TEST(joint-free-flyer) +ADD_PINOCCHIO_UNIT_TEST(joint-spherical) +ADD_PINOCCHIO_UNIT_TEST(joint-translation) +ADD_PINOCCHIO_UNIT_TEST(joint-generic) +ADD_PINOCCHIO_UNIT_TEST(joint-composite) +ADD_PINOCCHIO_UNIT_TEST(joint-mimic) +ADD_PINOCCHIO_UNIT_TEST(joint-helical) +ADD_PINOCCHIO_UNIT_TEST(joint-universal) # Main corpus -add_pinocchio_unit_test(model COLLISION_OPTIONAL) -add_pinocchio_unit_test(data) -add_pinocchio_unit_test(joint-motion-subspace) -add_pinocchio_unit_test(compute-all-terms) -add_pinocchio_unit_test(energy) -add_pinocchio_unit_test(frames) +ADD_PINOCCHIO_UNIT_TEST(model COLLISION_OPTIONAL) +ADD_PINOCCHIO_UNIT_TEST(data) +ADD_PINOCCHIO_UNIT_TEST(joint-motion-subspace) +ADD_PINOCCHIO_UNIT_TEST(compute-all-terms) +ADD_PINOCCHIO_UNIT_TEST(energy) +ADD_PINOCCHIO_UNIT_TEST(frames) if(NOT MSVC AND NOT MSVC_VERSION) - add_pinocchio_unit_test(joint-configurations) + ADD_PINOCCHIO_UNIT_TEST(joint-configurations) endif() -add_pinocchio_unit_test(explog) -add_pinocchio_unit_test(finite-differences) -add_pinocchio_unit_test(visitor) -add_pinocchio_unit_test(algo-check) +ADD_PINOCCHIO_UNIT_TEST(explog) +ADD_PINOCCHIO_UNIT_TEST(finite-differences) +ADD_PINOCCHIO_UNIT_TEST(visitor) +ADD_PINOCCHIO_UNIT_TEST(algo-check) # Warning ignore with pragma doesn't work for a part of this test, so we ignore two warning globally -cxx_flags_by_compiler_frontend( +CXX_FLAGS_BY_COMPILER_FRONTEND( GNU -Wno-maybe-uninitialized -Wuse-after-free=0 OUTPUT LIEGROUPS_OPTIONS - FILTER) -add_pinocchio_unit_test(liegroups) -add_test_cflags(liegroups ${LIEGROUPS_OPTIONS}) - -add_pinocchio_unit_test(cartesian-product-liegroups) -add_pinocchio_unit_test(regressor) -add_pinocchio_unit_test(version) -add_pinocchio_unit_test(copy) -add_pinocchio_unit_test(contact-cholesky) -add_pinocchio_unit_test(classic-acceleration) -add_pinocchio_unit_test(coulomb-friction-cone) + FILTER +) +ADD_PINOCCHIO_UNIT_TEST(liegroups) +ADD_TEST_CFLAGS(liegroups ${LIEGROUPS_OPTIONS}) + +ADD_PINOCCHIO_UNIT_TEST(cartesian-product-liegroups) +ADD_PINOCCHIO_UNIT_TEST(regressor) +ADD_PINOCCHIO_UNIT_TEST(version) +ADD_PINOCCHIO_UNIT_TEST(copy) +ADD_PINOCCHIO_UNIT_TEST(contact-cholesky) +ADD_PINOCCHIO_UNIT_TEST(classic-acceleration) +ADD_PINOCCHIO_UNIT_TEST(coulomb-friction-cone) # Serialization make_directory("${CMAKE_CURRENT_BINARY_DIR}/serialization-data") -add_pinocchio_unit_test(serialization COLLISION_OPTIONAL) -add_test_cflags( +ADD_PINOCCHIO_UNIT_TEST(serialization COLLISION_OPTIONAL) +ADD_TEST_CFLAGS( serialization - "-DTEST_SERIALIZATION_FOLDER=\\\"${CMAKE_CURRENT_BINARY_DIR}/serialization-data\\\"") -add_pinocchio_unit_test(csv) -add_test_cflags( - csv "-DTEST_SERIALIZATION_FOLDER=\\\"${CMAKE_CURRENT_BINARY_DIR}/serialization-data\\\"") + "-DTEST_SERIALIZATION_FOLDER=\\\"${CMAKE_CURRENT_BINARY_DIR}/serialization-data\\\"" +) +ADD_PINOCCHIO_UNIT_TEST(csv) +ADD_TEST_CFLAGS( + csv + "-DTEST_SERIALIZATION_FOLDER=\\\"${CMAKE_CURRENT_BINARY_DIR}/serialization-data\\\"" +) add_subdirectory(algorithm) # Multiprecision arithmetic if(BUILD_ADVANCED_TESTING) - add_pinocchio_unit_test(multiprecision) + ADD_PINOCCHIO_UNIT_TEST(multiprecision) if(MPFR_FOUND) - add_pinocchio_unit_test(multiprecision-mpfr PACKAGES mpfr gmp) + ADD_PINOCCHIO_UNIT_TEST(multiprecision-mpfr PACKAGES mpfr gmp) endif() endif() diff --git a/unittest/algorithm/utils/CMakeLists.txt b/unittest/algorithm/utils/CMakeLists.txt index 220bc47f37..ce0290012b 100644 --- a/unittest/algorithm/utils/CMakeLists.txt +++ b/unittest/algorithm/utils/CMakeLists.txt @@ -1,2 +1,2 @@ -add_pinocchio_unit_test(motion) -add_pinocchio_unit_test(force) +ADD_PINOCCHIO_UNIT_TEST(motion) +ADD_PINOCCHIO_UNIT_TEST(force) diff --git a/unittest/casadi/CMakeLists.txt b/unittest/casadi/CMakeLists.txt index 74f48ba6bb..c615908933 100644 --- a/unittest/casadi/CMakeLists.txt +++ b/unittest/casadi/CMakeLists.txt @@ -3,8 +3,8 @@ # macro(ADD_CASADI_UNIT_TEST name) - add_pinocchio_unit_test(${name} PACKAGES casadi) - get_cpp_test_name(${name} ${CMAKE_CURRENT_SOURCE_DIR} TEST_NAME) + ADD_PINOCCHIO_UNIT_TEST(${name} PACKAGES casadi) + GET_CPP_TEST_NAME(${name} ${CMAKE_CURRENT_SOURCE_DIR} TEST_NAME) set_tests_properties(${TEST_NAME} PROPERTIES TIMEOUT 3000) add_dependencies(${PROJECT_NAME}-test-casadi ${TEST_NAME}) endmacro() @@ -13,17 +13,17 @@ if(BUILD_WITH_CASADI_SUPPORT) add_custom_target(${PROJECT_NAME}-test-casadi) set_target_properties(${PROJECT_NAME}-test-casadi PROPERTIES EXCLUDE_FROM_DEFAULT_BUILD True) - add_casadi_unit_test(basic) - add_casadi_unit_test(spatial) - add_casadi_unit_test(explog) - add_casadi_unit_test(joints) - add_casadi_unit_test(algorithms) + ADD_CASADI_UNIT_TEST(basic) + ADD_CASADI_UNIT_TEST(spatial) + ADD_CASADI_UNIT_TEST(explog) + ADD_CASADI_UNIT_TEST(joints) + ADD_CASADI_UNIT_TEST(algorithms) if(BUILD_ADVANCED_TESTING) - add_casadi_unit_test(aba) - add_casadi_unit_test(constraint-dynamics-derivatives) - add_casadi_unit_test(constraint-dynamics) - add_casadi_unit_test(aba-derivatives) + ADD_CASADI_UNIT_TEST(aba) + ADD_CASADI_UNIT_TEST(constraint-dynamics-derivatives) + ADD_CASADI_UNIT_TEST(constraint-dynamics) + ADD_CASADI_UNIT_TEST(aba-derivatives) endif() - add_casadi_unit_test(integrate-derivatives) - add_casadi_unit_test(rnea-derivatives) + ADD_CASADI_UNIT_TEST(integrate-derivatives) + ADD_CASADI_UNIT_TEST(rnea-derivatives) endif() diff --git a/unittest/cppad/CMakeLists.txt b/unittest/cppad/CMakeLists.txt index 93d099512d..a6b2ce97ad 100644 --- a/unittest/cppad/CMakeLists.txt +++ b/unittest/cppad/CMakeLists.txt @@ -5,8 +5,8 @@ # Automatic differentiation macro(ADD_CPPAD_UNIT_TEST name) include_directories(SYSTEM ${cppad_INCLUDE_DIR}) - add_pinocchio_unit_test(${name} PACKAGES ${cppad_LIBRARY}) - get_cpp_test_name(${name} ${CMAKE_CURRENT_SOURCE_DIR} TEST_NAME) + ADD_PINOCCHIO_UNIT_TEST(${name} PACKAGES ${cppad_LIBRARY}) + GET_CPP_TEST_NAME(${name} ${CMAKE_CURRENT_SOURCE_DIR} TEST_NAME) add_dependencies(${PROJECT_NAME}-test-cpp-cppad ${TEST_NAME}) endmacro() @@ -14,10 +14,10 @@ if(BUILD_WITH_AUTODIFF_SUPPORT) add_custom_target(${PROJECT_NAME}-test-cpp-cppad) set_target_properties(${PROJECT_NAME}-test-cpp-cppad PROPERTIES EXCLUDE_FROM_DEFAULT_BUILD True) - add_cppad_unit_test(basic) - add_cppad_unit_test(spatial) - add_cppad_unit_test(joints) - add_cppad_unit_test(algorithms) - add_cppad_unit_test(derivatives) - add_cppad_unit_test(joint-configurations) + ADD_CPPAD_UNIT_TEST(basic) + ADD_CPPAD_UNIT_TEST(spatial) + ADD_CPPAD_UNIT_TEST(joints) + ADD_CPPAD_UNIT_TEST(algorithms) + ADD_CPPAD_UNIT_TEST(derivatives) + ADD_CPPAD_UNIT_TEST(joint-configurations) endif() diff --git a/unittest/cppadcg/CMakeLists.txt b/unittest/cppadcg/CMakeLists.txt index ea8c7e1e0c..ff783a67a6 100644 --- a/unittest/cppadcg/CMakeLists.txt +++ b/unittest/cppadcg/CMakeLists.txt @@ -1,8 +1,8 @@ macro(ADD_CPPADCG_UNIT_TEST name) include_directories(SYSTEM ${cppad_INCLUDE_DIR}) include_directories(SYSTEM ${cppadcodegen_INCLUDE_DIR}) - add_pinocchio_unit_test(${name} PACKAGES ${cppad_LIBRARY} ${CMAKE_DL_LIBS}) - get_cpp_test_name(${name} ${CMAKE_CURRENT_SOURCE_DIR} TEST_NAME) + ADD_PINOCCHIO_UNIT_TEST(${name} PACKAGES ${cppad_LIBRARY} ${CMAKE_DL_LIBS}) + GET_CPP_TEST_NAME(${name} ${CMAKE_CURRENT_SOURCE_DIR} TEST_NAME) add_dependencies(${PROJECT_NAME}-test-cpp-cppadcg ${TEST_NAME}) target_compile_definitions(${TEST_NAME} PUBLIC PINOCCHIO_CXX_COMPILER=\"${CMAKE_CXX_COMPILER}\") endmacro() @@ -10,13 +10,15 @@ endmacro() if(BUILD_WITH_AUTODIFF_SUPPORT) if(BUILD_WITH_CODEGEN_SUPPORT) add_custom_target(${PROJECT_NAME}-test-cpp-cppadcg) - set_target_properties(${PROJECT_NAME}-test-cpp-cppadcg PROPERTIES EXCLUDE_FROM_DEFAULT_BUILD - True) + set_target_properties( + ${PROJECT_NAME}-test-cpp-cppadcg + PROPERTIES EXCLUDE_FROM_DEFAULT_BUILD True + ) - add_cppadcg_unit_test(basic) + ADD_CPPADCG_UNIT_TEST(basic) if(BUILD_ADVANCED_TESTING) - add_cppadcg_unit_test(algorithms) - add_cppadcg_unit_test(joint-configurations) + ADD_CPPADCG_UNIT_TEST(algorithms) + ADD_CPPADCG_UNIT_TEST(joint-configurations) endif() endif() endif() diff --git a/unittest/packaging/external/CMakeLists.txt b/unittest/packaging/external/CMakeLists.txt index b8a1fcf168..6fab4608a7 100644 --- a/unittest/packaging/external/CMakeLists.txt +++ b/unittest/packaging/external/CMakeLists.txt @@ -12,19 +12,16 @@ FetchContent_Declare( GIT_REPOSITORY $ENV{PINOCCHIO_GIT_REPOSITORY} GIT_TAG $ENV{PINOCCHIO_GIT_TAG} GIT_SUBMODULES cmake - GIT_SHALLOW ON) + GIT_SHALLOW ON +) FetchContent_GetProperties(Pinocchio) if(NOT pinocchio_POPULATED) # name is lowercased FetchContent_Populate(Pinocchio) message(STATUS "pinocchio source dir: ${pinocchio_SOURCE_DIR}") message(STATUS "pinocchio binary dir: ${pinocchio_BINARY_DIR}") - set(BUILD_PYTHON_INTERFACE - OFF - CACHE INTERNAL "Build Python bindings") - set(BUILD_TESTING - OFF - CACHE INTERNAL "Build unit tests") + set(BUILD_PYTHON_INTERFACE OFF CACHE INTERNAL "Build Python bindings") + set(BUILD_TESTING OFF CACHE INTERNAL "Build unit tests") add_subdirectory(${pinocchio_SOURCE_DIR} ${pinocchio_BINARY_DIR}) # name is lowercased endif() # or simply FetchContent_MakeAvailable(Pinocchio) diff --git a/unittest/packaging/pkgconfig/CMakeLists.txt b/unittest/packaging/pkgconfig/CMakeLists.txt index 4b12379a1a..4a08307116 100644 --- a/unittest/packaging/pkgconfig/CMakeLists.txt +++ b/unittest/packaging/pkgconfig/CMakeLists.txt @@ -15,8 +15,10 @@ if("-DPINOCCHIO_WITH_URDFDOM" IN_LIST PINOCCHIO_CFLAGS) add_executable(load_urdf ../load_urdf.cpp) target_link_libraries(load_urdf PRIVATE ${PINOCCHIO_LDFLAGS}) target_include_directories(load_urdf SYSTEM PRIVATE ${PINOCCHIO_INCLUDE_DIRS}) - target_compile_definitions(load_urdf PRIVATE ${PINOCCHIO_CFLAGS_OTHER} - "PINOCCHIO_MODEL_DIR=\"${PINOCCHIO_MODEL_DIR}\"") + target_compile_definitions( + load_urdf + PRIVATE ${PINOCCHIO_CFLAGS_OTHER} "PINOCCHIO_MODEL_DIR=\"${PINOCCHIO_MODEL_DIR}\"" + ) endif() message(STATUS "LDFLAGS: ${PINOCCHIO_LDFLAGS}") diff --git a/unittest/python/CMakeLists.txt b/unittest/python/CMakeLists.txt index 40bc6c7e7c..507f6246bf 100644 --- a/unittest/python/CMakeLists.txt +++ b/unittest/python/CMakeLists.txt @@ -2,49 +2,51 @@ # Copyright (c) 2015-2023 CNRS INRIA # -set(${PROJECT_NAME}_PYTHON_TESTS - bindings - # Multibody - bindings_joint_composite - bindings_joints - bindings_model - bindings_data - bindings_geometry_model - bindings_liegroups - # Spatial - bindings_force - bindings_frame - bindings_inertia - bindings_spatial - bindings_motion - bindings_SE3 - explog - rpy - # Algo - bindings_com - bindings_kinematic_regressor - bindings_regressor - bindings_dynamics - bindings_kinematics - bindings_rnea - bindings_aba - bindings_joint_algorithms - # Algo derivatives - bindings_kinematics_derivatives - bindings_frame_derivatives - bindings_forward_dynamics_derivatives - bindings_inverse_dynamics_derivatives - bindings_centroidal_dynamics_derivatives - bindings_com_velocity_derivatives - # Parsers - bindings_sample_models - # Others - robot_wrapper - utils - serialization - version - bindings_std_vector - bindings_std_map) +set( + ${PROJECT_NAME}_PYTHON_TESTS + bindings + # Multibody + bindings_joint_composite + bindings_joints + bindings_model + bindings_data + bindings_geometry_model + bindings_liegroups + # Spatial + bindings_force + bindings_frame + bindings_inertia + bindings_spatial + bindings_motion + bindings_SE3 + explog + rpy + # Algo + bindings_com + bindings_kinematic_regressor + bindings_regressor + bindings_dynamics + bindings_kinematics + bindings_rnea + bindings_aba + bindings_joint_algorithms + # Algo derivatives + bindings_kinematics_derivatives + bindings_frame_derivatives + bindings_forward_dynamics_derivatives + bindings_inverse_dynamics_derivatives + bindings_centroidal_dynamics_derivatives + bindings_com_velocity_derivatives + # Parsers + bindings_sample_models + # Others + robot_wrapper + utils + serialization + version + bindings_std_vector + bindings_std_map +) if(BUILD_WITH_HPP_FCL_SUPPORT) set(${PROJECT_NAME}_PYTHON_TESTS ${${PROJECT_NAME}_PYTHON_TESTS} bindings_geometry_object) @@ -52,14 +54,19 @@ if(BUILD_WITH_HPP_FCL_SUPPORT) endif() if(urdfdom_FOUND) - set(${PROJECT_NAME}_PYTHON_TESTS ${${PROJECT_NAME}_PYTHON_TESTS} bindings_urdf - bindings_geometry_model_urdf bindings_contact_inverse_dynamics) + set( + ${PROJECT_NAME}_PYTHON_TESTS + ${${PROJECT_NAME}_PYTHON_TESTS} + bindings_urdf + bindings_geometry_model_urdf + bindings_contact_inverse_dynamics + ) endif(urdfdom_FOUND) foreach(TEST ${${PROJECT_NAME}_PYTHON_TESTS}) set(TEST_NAME "${PROJECT_NAME}-test-py-${TEST}") - add_python_unit_test(${TEST_NAME} "unittest/python/${TEST}.py" "bindings/python") - add_windows_dll_path_to_test(${TEST_NAME}) + ADD_PYTHON_UNIT_TEST(${TEST_NAME} "unittest/python/${TEST}.py" "bindings/python") + ADD_WINDOWS_DLL_PATH_TO_TEST(${TEST_NAME}) endforeach(TEST ${${PROJECT_NAME}_PYTHON_TESTS}) make_directory("${CMAKE_CURRENT_BINARY_DIR}/serialization-data") @@ -74,7 +81,7 @@ if(MEMORYCHECK_COMMAND AND MEMORYCHECK_COMMAND MATCHES ".*valgrind$") foreach(TEST ${${PROJECT_NAME}_PYTHON_MEMORYCHECK_TESTS}) set(TEST_NAME "${PROJECT_NAME}-test-py-memory-${TEST}") - add_python_memorycheck_unit_test_v2( + ADD_PYTHON_MEMORYCHECK_UNIT_TEST_V2( NAME ${TEST_NAME} SOURCE @@ -82,8 +89,9 @@ if(MEMORYCHECK_COMMAND AND MEMORYCHECK_COMMAND MATCHES ".*valgrind$") SUPP "unittest/python/${TEST}.supp" MODULES - "bindings/python") - add_windows_dll_path_to_test(${TEST_NAME}) + "bindings/python" + ) + ADD_WINDOWS_DLL_PATH_TO_TEST(${TEST_NAME}) endforeach() else() message(STATUS "Valgrind not found, memory checks are disabled") diff --git a/unittest/python/casadi/CMakeLists.txt b/unittest/python/casadi/CMakeLists.txt index b635845708..f613be401e 100644 --- a/unittest/python/casadi/CMakeLists.txt +++ b/unittest/python/casadi/CMakeLists.txt @@ -6,6 +6,6 @@ set(${PROJECT_NAME}_PYTHON_CASADI_TESTS bindings_main_algo) foreach(test ${${PROJECT_NAME}_PYTHON_CASADI_TESTS}) set(TEST_NAME "${PROJECT_NAME}-test-py-casadi-${test}") - add_python_unit_test(${TEST_NAME} "unittest/python/casadi/${test}.py" "bindings/python") - add_windows_dll_path_to_test(${TEST_NAME}) + ADD_PYTHON_UNIT_TEST(${TEST_NAME} "unittest/python/casadi/${test}.py" "bindings/python") + ADD_WINDOWS_DLL_PATH_TO_TEST(${TEST_NAME}) endforeach() diff --git a/unittest/python/pybind11/CMakeLists.txt b/unittest/python/pybind11/CMakeLists.txt index ecc8984dfa..f341f14c34 100644 --- a/unittest/python/pybind11/CMakeLists.txt +++ b/unittest/python/pybind11/CMakeLists.txt @@ -1,9 +1,6 @@ if(CMAKE_VERSION VERSION_GREATER 4.11) include(FetchContent) - FetchContent_Declare( - pybind11 - GIT_REPOSITORY https://github.com/pybind/pybind11 - GIT_TAG v2.10.0) + FetchContent_Declare(pybind11 GIT_REPOSITORY https://github.com/pybind/pybind11 GIT_TAG v2.10.0) FetchContent_GetProperties(pybind11) if(NOT pybind11_POPULATED) FetchContent_Populate(pybind11) @@ -32,7 +29,11 @@ if(CMAKE_VERSION VERSION_GREATER 4.11) target_compile_definitions(cpp2pybind11 PRIVATE -DNOMINMAX) endif(WIN32) - add_python_unit_test("test-py-cpp2pybind11" "unittest/python/pybind11/test-cpp2pybind11.py" - "bindings/python" "unittest/python/pybind11") + ADD_PYTHON_UNIT_TEST( + "test-py-cpp2pybind11" + "unittest/python/pybind11/test-cpp2pybind11.py" + "bindings/python" + "unittest/python/pybind11" + ) endif() endif() diff --git a/utils/CMakeLists.txt b/utils/CMakeLists.txt index 74988f237b..255a4354e8 100644 --- a/utils/CMakeLists.txt +++ b/utils/CMakeLists.txt @@ -6,7 +6,6 @@ # --- MACROS ------------------------------------------------------------------ # --- MACROS ------------------------------------------------------------------ macro(ADD_UTIL NAME UTIL_SRC) - if(BUILD_UTILS) add_executable(${NAME} "${UTIL_SRC}.cpp") else(BUILD_UTILS) @@ -20,7 +19,6 @@ macro(ADD_UTIL NAME UTIL_SRC) if(BUILD_UTILS) install(TARGETS ${NAME} DESTINATION bin) endif(BUILD_UTILS) - endmacro(ADD_UTIL) # --- RULES ------------------------------------------------------------------- @@ -29,5 +27,5 @@ endmacro(ADD_UTIL) add_custom_target(utils) if(urdfdom_FOUND) - add_util(pinocchio_read_model pinocchio_read_model) + ADD_UTIL(pinocchio_read_model pinocchio_read_model) endif(urdfdom_FOUND) From 2a9977afdd04f98ddcf3289fd28f32f8b3ee4e9d Mon Sep 17 00:00:00 2001 From: ManifoldFR Date: Wed, 12 Feb 2025 20:53:46 +0100 Subject: [PATCH 3/4] Update git-blame-ignore-revs --- .git-blame-ignore-revs | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.git-blame-ignore-revs b/.git-blame-ignore-revs index 5fc6723b30..8309e345bf 100644 --- a/.git-blame-ignore-revs +++ b/.git-blame-ignore-revs @@ -9,3 +9,6 @@ # pre-commit run -a (2024-09-04) d7c57794672df89734a80c40c0bd3166c7a984c6 + +# pre-commit run -a (2025-02-12) +9f7b29a448498699de547ea84ce5f1e8f2a6e8ea From 4b48ff8e01eacdc5f5e378cc54ba881834c7cdbb Mon Sep 17 00:00:00 2001 From: ManifoldFR Date: Wed, 12 Feb 2025 20:58:45 +0100 Subject: [PATCH 4/4] pre-commit config: checkout submodules to use the cmakemodules' definitions I keep forgetting to do this every single time... --- .pre-commit-config.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index cca6dbd65e..8e06069ee7 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -2,6 +2,7 @@ ci: autoupdate_branch: devel autofix_prs: false autoupdate_schedule: quarterly + submodules: true repos: - repo: https://github.com/pre-commit/mirrors-clang-format rev: v19.1.6