From d1fec1776963c0b18592cef5c2f28a2efedbb773 Mon Sep 17 00:00:00 2001 From: Joris Vaillant Date: Wed, 18 Oct 2023 14:22:02 +0200 Subject: [PATCH 01/13] Move all headers --- {src => include/pinocchio}/algorithm/aba-derivatives.hpp | 0 {src => include/pinocchio}/algorithm/aba-derivatives.hxx | 0 {src => include/pinocchio}/algorithm/aba.hpp | 0 {src => include/pinocchio}/algorithm/aba.hxx | 0 .../pinocchio}/algorithm/center-of-mass-derivatives.hpp | 0 .../pinocchio}/algorithm/center-of-mass-derivatives.hxx | 0 {src => include/pinocchio}/algorithm/center-of-mass.hpp | 0 {src => include/pinocchio}/algorithm/center-of-mass.hxx | 0 {src => include/pinocchio}/algorithm/centroidal-derivatives.hpp | 0 {src => include/pinocchio}/algorithm/centroidal-derivatives.hxx | 0 {src => include/pinocchio}/algorithm/centroidal.hpp | 0 {src => include/pinocchio}/algorithm/centroidal.hxx | 0 {src => include/pinocchio}/algorithm/check.hpp | 0 {src => include/pinocchio}/algorithm/check.hxx | 0 {src => include/pinocchio}/algorithm/cholesky.hpp | 0 {src => include/pinocchio}/algorithm/cholesky.hxx | 0 {src => include/pinocchio}/algorithm/compute-all-terms.hpp | 0 {src => include/pinocchio}/algorithm/compute-all-terms.hxx | 0 {src => include/pinocchio}/algorithm/contact-dynamics.hpp | 0 {src => include/pinocchio}/algorithm/contact-dynamics.hxx | 0 {src => include/pinocchio}/algorithm/copy.hpp | 0 {src => include/pinocchio}/algorithm/crba.hpp | 0 {src => include/pinocchio}/algorithm/crba.hxx | 0 {src => include/pinocchio}/algorithm/default-check.hpp | 0 {src => include/pinocchio}/algorithm/dynamics.hpp | 0 {src => include/pinocchio}/algorithm/energy.hpp | 0 {src => include/pinocchio}/algorithm/energy.hxx | 0 {src => include/pinocchio}/algorithm/frames-derivatives.hpp | 0 {src => include/pinocchio}/algorithm/frames-derivatives.hxx | 0 {src => include/pinocchio}/algorithm/frames.hpp | 0 {src => include/pinocchio}/algorithm/frames.hxx | 0 {src => include/pinocchio}/algorithm/geometry.hpp | 0 {src => include/pinocchio}/algorithm/geometry.hxx | 0 {src => include/pinocchio}/algorithm/jacobian.hpp | 0 {src => include/pinocchio}/algorithm/jacobian.hxx | 0 {src => include/pinocchio}/algorithm/joint-configuration.hpp | 0 {src => include/pinocchio}/algorithm/joint-configuration.hxx | 0 {src => include/pinocchio}/algorithm/kinematics-derivatives.hpp | 0 {src => include/pinocchio}/algorithm/kinematics-derivatives.hxx | 0 {src => include/pinocchio}/algorithm/kinematics.hpp | 0 {src => include/pinocchio}/algorithm/kinematics.hxx | 0 {src => include/pinocchio}/algorithm/model.hpp | 0 {src => include/pinocchio}/algorithm/model.hxx | 0 {src => include/pinocchio}/algorithm/parallel/aba.hpp | 0 {src => include/pinocchio}/algorithm/parallel/geometry.hpp | 0 {src => include/pinocchio}/algorithm/parallel/rnea.hpp | 0 {src => include/pinocchio}/algorithm/regressor.hpp | 0 {src => include/pinocchio}/algorithm/regressor.hxx | 0 {src => include/pinocchio}/algorithm/rnea-derivatives.hpp | 0 {src => include/pinocchio}/algorithm/rnea-derivatives.hxx | 0 .../pinocchio}/algorithm/rnea-second-order-derivatives.hpp | 0 .../pinocchio}/algorithm/rnea-second-order-derivatives.hxx | 0 {src => include/pinocchio}/algorithm/rnea.hpp | 0 {src => include/pinocchio}/algorithm/rnea.hxx | 0 {src => include/pinocchio}/autodiff/casadi.hpp | 0 {src => include/pinocchio}/autodiff/casadi/math/matrix.hpp | 0 {src => include/pinocchio}/autodiff/casadi/math/quaternion.hpp | 0 {src => include/pinocchio}/autodiff/casadi/spatial/se3-tpl.hpp | 0 {src => include/pinocchio}/autodiff/casadi/utils/static-if.hpp | 0 {src => include/pinocchio}/autodiff/cppad.hpp | 0 {src => include/pinocchio}/autodiff/cppad/algorithm/aba.hpp | 0 {src => include/pinocchio}/autodiff/cppad/math/eigen_plugin.hpp | 0 {src => include/pinocchio}/autodiff/cppad/math/quaternion.hpp | 0 {src => include/pinocchio}/autodiff/cppad/spatial/log.hxx | 0 {src => include/pinocchio}/autodiff/cppad/spatial/se3-tpl.hpp | 0 {src => include/pinocchio}/autodiff/cppad/utils/static-if.hpp | 0 .../pinocchio/bindings}/python/algorithm/algorithms.hpp | 0 {bindings => include/pinocchio/bindings}/python/fwd.hpp | 0 .../pinocchio/bindings}/python/multibody/data.hpp | 0 .../pinocchio/bindings}/python/multibody/fcl/transform.hpp | 0 .../pinocchio/bindings}/python/multibody/frame.hpp | 0 .../pinocchio/bindings}/python/multibody/geometry-data.hpp | 0 .../pinocchio/bindings}/python/multibody/geometry-model.hpp | 0 .../pinocchio/bindings}/python/multibody/geometry-object.hpp | 0 .../pinocchio/bindings}/python/multibody/joint/joint-derived.hpp | 0 .../pinocchio/bindings}/python/multibody/joint/joint.hpp | 0 .../pinocchio/bindings}/python/multibody/joint/joints-datas.hpp | 0 .../pinocchio/bindings}/python/multibody/joint/joints-models.hpp | 0 .../pinocchio/bindings}/python/multibody/joint/joints-variant.hpp | 0 .../pinocchio/bindings}/python/multibody/liegroups.hpp | 0 .../pinocchio/bindings}/python/multibody/model.hpp | 0 .../pinocchio/bindings}/python/multibody/pool/geometry.hpp | 0 .../pinocchio/bindings}/python/multibody/pool/model.hpp | 0 .../pinocchio/bindings}/python/parsers/python.hpp | 0 .../pinocchio/bindings}/python/parsers/sample-models.hpp | 0 {bindings => include/pinocchio/bindings}/python/parsers/srdf.hpp | 0 {bindings => include/pinocchio/bindings}/python/parsers/urdf.hpp | 0 {bindings => include/pinocchio/bindings}/python/pybind11-all.hpp | 0 {bindings => include/pinocchio/bindings}/python/pybind11.hpp | 0 .../pinocchio/bindings}/python/serialization/serializable.hpp | 0 .../pinocchio/bindings}/python/serialization/serialization.hpp | 0 .../pinocchio/bindings}/python/spatial/explog.hpp | 0 {bindings => include/pinocchio/bindings}/python/spatial/force.hpp | 0 .../pinocchio/bindings}/python/spatial/inertia.hpp | 0 .../pinocchio/bindings}/python/spatial/motion.hpp | 0 {bindings => include/pinocchio/bindings}/python/spatial/se3.hpp | 0 .../pinocchio/bindings}/python/utils/constant.hpp | 0 .../pinocchio/bindings}/python/utils/conversions.hpp | 0 .../pinocchio/bindings}/python/utils/copyable.hpp | 0 .../pinocchio/bindings}/python/utils/dependencies.hpp | 0 .../pinocchio/bindings}/python/utils/deprecation.hpp | 0 {bindings => include/pinocchio/bindings}/python/utils/eigen.hpp | 0 {bindings => include/pinocchio/bindings}/python/utils/list.hpp | 0 .../pinocchio/bindings}/python/utils/namespace.hpp | 0 .../pinocchio/bindings}/python/utils/pickle-map.hpp | 0 .../pinocchio/bindings}/python/utils/pickle-vector.hpp | 0 .../pinocchio/bindings}/python/utils/printable.hpp | 0 .../pinocchio/bindings}/python/utils/registration.hpp | 0 .../pinocchio/bindings}/python/utils/std-aligned-vector.hpp | 0 {bindings => include/pinocchio/bindings}/python/utils/std-map.hpp | 0 .../pinocchio/bindings}/python/utils/std-vector.hpp | 0 {bindings => include/pinocchio/bindings}/python/utils/version.hpp | 0 {src => include/pinocchio}/codegen/code-generator-algo.hpp | 0 {src => include/pinocchio}/codegen/code-generator-base.hpp | 0 {src => include/pinocchio}/codegen/cppadcg.hpp | 0 {src => include/pinocchio}/container/aligned-vector.hpp | 0 {src => include/pinocchio}/container/boost-container-limits.hpp | 0 {src => include/pinocchio}/core/binary-op.hpp | 0 {src => include/pinocchio}/core/unary-op.hpp | 0 {src => include/pinocchio}/deprecated-macros.hpp | 0 {src => include/pinocchio}/deprecated-namespaces.hpp | 0 {src => include/pinocchio}/deprecation.hpp | 0 {src => include/pinocchio}/eigen-macros.hpp | 0 {src => include/pinocchio}/fwd.hpp | 0 {src => include/pinocchio}/macros.hpp | 0 {src => include/pinocchio}/math/casadi.hpp | 0 {src => include/pinocchio}/math/comparison-operators.hpp | 0 {src => include/pinocchio}/math/cppad.hpp | 0 {src => include/pinocchio}/math/cppadcg.hpp | 0 {src => include/pinocchio}/math/fwd.hpp | 0 {src => include/pinocchio}/math/matrix-block.hpp | 0 {src => include/pinocchio}/math/matrix.hpp | 0 {src => include/pinocchio}/math/multiprecision-mpfr.hpp | 0 {src => include/pinocchio}/math/multiprecision.hpp | 0 {src => include/pinocchio}/math/quaternion.hpp | 0 {src => include/pinocchio}/math/rotation.hpp | 0 {src => include/pinocchio}/math/rpy.hpp | 0 {src => include/pinocchio}/math/rpy.hxx | 0 {src => include/pinocchio}/math/sign.hpp | 0 {src => include/pinocchio}/math/sincos.hpp | 0 {src => include/pinocchio}/math/taylor-expansion.hpp | 0 {src => include/pinocchio}/math/tensor.hpp | 0 {src => include/pinocchio}/multibody/constraint-base.hpp | 0 {src => include/pinocchio}/multibody/constraint-generic.hpp | 0 {src => include/pinocchio}/multibody/constraint.hpp | 0 {src => include/pinocchio}/multibody/data.hpp | 0 {src => include/pinocchio}/multibody/data.hxx | 0 {src => include/pinocchio}/multibody/fcl.hpp | 0 {src => include/pinocchio}/multibody/fcl.hxx | 0 {src => include/pinocchio}/multibody/force-set.hpp | 0 {src => include/pinocchio}/multibody/frame.hpp | 0 {src => include/pinocchio}/multibody/fwd.hpp | 0 {src => include/pinocchio}/multibody/geometry.hpp | 0 {src => include/pinocchio}/multibody/geometry.hxx | 0 {src => include/pinocchio}/multibody/joint/fwd.hpp | 0 {src => include/pinocchio}/multibody/joint/joint-base.hpp | 0 .../pinocchio}/multibody/joint/joint-basic-visitors.hpp | 0 .../pinocchio}/multibody/joint/joint-basic-visitors.hxx | 0 {src => include/pinocchio}/multibody/joint/joint-collection.hpp | 0 .../pinocchio}/multibody/joint/joint-common-operations.hpp | 0 {src => include/pinocchio}/multibody/joint/joint-composite.hpp | 0 {src => include/pinocchio}/multibody/joint/joint-composite.hxx | 0 {src => include/pinocchio}/multibody/joint/joint-data-base.hpp | 0 {src => include/pinocchio}/multibody/joint/joint-free-flyer.hpp | 0 {src => include/pinocchio}/multibody/joint/joint-generic.hpp | 0 {src => include/pinocchio}/multibody/joint/joint-mimic.hpp | 0 {src => include/pinocchio}/multibody/joint/joint-model-base.hpp | 0 {src => include/pinocchio}/multibody/joint/joint-planar.hpp | 0 .../pinocchio}/multibody/joint/joint-prismatic-unaligned.hpp | 0 {src => include/pinocchio}/multibody/joint/joint-prismatic.hpp | 0 .../pinocchio}/multibody/joint/joint-revolute-unaligned.hpp | 0 .../multibody/joint/joint-revolute-unbounded-unaligned.hpp | 0 .../pinocchio}/multibody/joint/joint-revolute-unbounded.hpp | 0 {src => include/pinocchio}/multibody/joint/joint-revolute.hpp | 0 .../pinocchio}/multibody/joint/joint-spherical-ZYX.hpp | 0 {src => include/pinocchio}/multibody/joint/joint-spherical.hpp | 0 {src => include/pinocchio}/multibody/joint/joint-translation.hpp | 0 {src => include/pinocchio}/multibody/joint/joints.hpp | 0 .../pinocchio}/multibody/liegroup/cartesian-product-variant.hpp | 0 .../pinocchio}/multibody/liegroup/cartesian-product-variant.hxx | 0 .../pinocchio}/multibody/liegroup/cartesian-product.hpp | 0 {src => include/pinocchio}/multibody/liegroup/fwd.hpp | 0 {src => include/pinocchio}/multibody/liegroup/liegroup-algo.hpp | 0 {src => include/pinocchio}/multibody/liegroup/liegroup-algo.hxx | 0 {src => include/pinocchio}/multibody/liegroup/liegroup-base.hpp | 0 {src => include/pinocchio}/multibody/liegroup/liegroup-base.hxx | 0 .../pinocchio}/multibody/liegroup/liegroup-collection.hpp | 0 .../pinocchio}/multibody/liegroup/liegroup-generic.hpp | 0 .../pinocchio}/multibody/liegroup/liegroup-variant-visitors.hpp | 0 .../pinocchio}/multibody/liegroup/liegroup-variant-visitors.hxx | 0 {src => include/pinocchio}/multibody/liegroup/liegroup.hpp | 0 .../pinocchio}/multibody/liegroup/special-euclidean.hpp | 0 .../pinocchio}/multibody/liegroup/special-orthogonal.hpp | 0 {src => include/pinocchio}/multibody/liegroup/vector-space.hpp | 0 {src => include/pinocchio}/multibody/model.hpp | 0 {src => include/pinocchio}/multibody/model.hxx | 0 {src => include/pinocchio}/multibody/pool/geometry.hpp | 0 {src => include/pinocchio}/multibody/pool/model.hpp | 0 {src => include/pinocchio}/multibody/visitor.hpp | 0 {src => include/pinocchio}/multibody/visitor/fusion.hpp | 0 .../pinocchio}/multibody/visitor/joint-binary-visitor.hpp | 0 .../pinocchio}/multibody/visitor/joint-unary-visitor.hpp | 0 {src => include/pinocchio}/parsers/sample-models.hpp | 0 {src => include/pinocchio}/parsers/sample-models.hxx | 0 {src => include/pinocchio}/parsers/srdf.hpp | 0 {src => include/pinocchio}/parsers/srdf.hxx | 0 {src => include/pinocchio}/parsers/urdf.hpp | 0 {src => include/pinocchio}/parsers/urdf/geometry.hxx | 0 {src => include/pinocchio}/parsers/urdf/model.hxx | 0 {src => include/pinocchio}/parsers/urdf/types.hpp | 0 {src => include/pinocchio}/parsers/urdf/utils.hpp | 0 {src => include/pinocchio}/parsers/utils.hpp | 0 {src => include/pinocchio}/serialization/aligned-vector.hpp | 0 {src => include/pinocchio}/serialization/archive.hpp | 0 {src => include/pinocchio}/serialization/data.hpp | 0 {src => include/pinocchio}/serialization/eigen.hpp | 0 {src => include/pinocchio}/serialization/force.hpp | 0 {src => include/pinocchio}/serialization/frame.hpp | 0 {src => include/pinocchio}/serialization/fwd.hpp | 0 {src => include/pinocchio}/serialization/geometry.hpp | 0 {src => include/pinocchio}/serialization/inertia.hpp | 0 {src => include/pinocchio}/serialization/joints-constraint.hpp | 0 {src => include/pinocchio}/serialization/joints-data.hpp | 0 {src => include/pinocchio}/serialization/joints-model.hpp | 0 {src => include/pinocchio}/serialization/joints-motion.hpp | 0 {src => include/pinocchio}/serialization/joints-transform.hpp | 0 {src => include/pinocchio}/serialization/joints.hpp | 0 {src => include/pinocchio}/serialization/model.hpp | 0 {src => include/pinocchio}/serialization/motion.hpp | 0 {src => include/pinocchio}/serialization/se3.hpp | 0 {src => include/pinocchio}/serialization/serializable.hpp | 0 {src => include/pinocchio}/serialization/spatial.hpp | 0 {src => include/pinocchio}/serialization/static-buffer.hpp | 0 {src => include/pinocchio}/serialization/symmetric3.hpp | 0 {src => include/pinocchio}/serialization/vector.hpp | 0 {src => include/pinocchio}/spatial/act-on-set.hpp | 0 {src => include/pinocchio}/spatial/act-on-set.hxx | 0 {src => include/pinocchio}/spatial/cartesian-axis.hpp | 0 {src => include/pinocchio}/spatial/explog-quaternion.hpp | 0 {src => include/pinocchio}/spatial/explog.hpp | 0 {src => include/pinocchio}/spatial/fcl-pinocchio-conversions.hpp | 0 {src => include/pinocchio}/spatial/force-base.hpp | 0 {src => include/pinocchio}/spatial/force-dense.hpp | 0 {src => include/pinocchio}/spatial/force-ref.hpp | 0 {src => include/pinocchio}/spatial/force-tpl.hpp | 0 {src => include/pinocchio}/spatial/force.hpp | 0 {src => include/pinocchio}/spatial/fwd.hpp | 0 {src => include/pinocchio}/spatial/inertia.hpp | 0 {src => include/pinocchio}/spatial/log.hpp | 0 {src => include/pinocchio}/spatial/log.hxx | 0 {src => include/pinocchio}/spatial/motion-base.hpp | 0 {src => include/pinocchio}/spatial/motion-dense.hpp | 0 {src => include/pinocchio}/spatial/motion-ref.hpp | 0 {src => include/pinocchio}/spatial/motion-tpl.hpp | 0 {src => include/pinocchio}/spatial/motion-zero.hpp | 0 {src => include/pinocchio}/spatial/motion.hpp | 0 {src => include/pinocchio}/spatial/se3-base.hpp | 0 {src => include/pinocchio}/spatial/se3-tpl.hpp | 0 {src => include/pinocchio}/spatial/se3.hpp | 0 {src => include/pinocchio}/spatial/skew.hpp | 0 {src => include/pinocchio}/spatial/spatial-axis.hpp | 0 {src => include/pinocchio}/spatial/symmetric3.hpp | 0 {src => include/pinocchio}/utils/axis-label.hpp | 0 {src => include/pinocchio}/utils/cast.hpp | 0 {src => include/pinocchio}/utils/eigen-fix.hpp | 0 {src => include/pinocchio}/utils/file-explorer.hpp | 0 {src => include/pinocchio}/utils/helpers.hpp | 0 {src => include/pinocchio}/utils/openmp.hpp | 0 {src => include/pinocchio}/utils/static-if.hpp | 0 {src => include/pinocchio}/utils/string-generator.hpp | 0 {src => include/pinocchio}/utils/timer.hpp | 0 {src => include/pinocchio}/utils/version.hpp | 0 272 files changed, 0 insertions(+), 0 deletions(-) rename {src => include/pinocchio}/algorithm/aba-derivatives.hpp (100%) rename {src => include/pinocchio}/algorithm/aba-derivatives.hxx (100%) rename {src => include/pinocchio}/algorithm/aba.hpp (100%) rename {src => include/pinocchio}/algorithm/aba.hxx (100%) rename {src => include/pinocchio}/algorithm/center-of-mass-derivatives.hpp (100%) rename {src => include/pinocchio}/algorithm/center-of-mass-derivatives.hxx (100%) rename {src => include/pinocchio}/algorithm/center-of-mass.hpp (100%) rename {src => include/pinocchio}/algorithm/center-of-mass.hxx (100%) rename {src => include/pinocchio}/algorithm/centroidal-derivatives.hpp (100%) rename {src => include/pinocchio}/algorithm/centroidal-derivatives.hxx (100%) rename {src => include/pinocchio}/algorithm/centroidal.hpp (100%) rename {src => include/pinocchio}/algorithm/centroidal.hxx (100%) rename {src => include/pinocchio}/algorithm/check.hpp (100%) rename {src => include/pinocchio}/algorithm/check.hxx (100%) rename {src => include/pinocchio}/algorithm/cholesky.hpp (100%) rename {src => include/pinocchio}/algorithm/cholesky.hxx (100%) rename {src => include/pinocchio}/algorithm/compute-all-terms.hpp (100%) rename {src => include/pinocchio}/algorithm/compute-all-terms.hxx (100%) rename {src => include/pinocchio}/algorithm/contact-dynamics.hpp (100%) rename {src => include/pinocchio}/algorithm/contact-dynamics.hxx (100%) rename {src => include/pinocchio}/algorithm/copy.hpp (100%) rename {src => include/pinocchio}/algorithm/crba.hpp (100%) rename {src => include/pinocchio}/algorithm/crba.hxx (100%) rename {src => include/pinocchio}/algorithm/default-check.hpp (100%) rename {src => include/pinocchio}/algorithm/dynamics.hpp (100%) rename {src => include/pinocchio}/algorithm/energy.hpp (100%) rename {src => include/pinocchio}/algorithm/energy.hxx (100%) rename {src => include/pinocchio}/algorithm/frames-derivatives.hpp (100%) rename {src => include/pinocchio}/algorithm/frames-derivatives.hxx (100%) rename {src => include/pinocchio}/algorithm/frames.hpp (100%) rename {src => include/pinocchio}/algorithm/frames.hxx (100%) rename {src => include/pinocchio}/algorithm/geometry.hpp (100%) rename {src => include/pinocchio}/algorithm/geometry.hxx (100%) rename {src => include/pinocchio}/algorithm/jacobian.hpp (100%) rename {src => include/pinocchio}/algorithm/jacobian.hxx (100%) rename {src => include/pinocchio}/algorithm/joint-configuration.hpp (100%) rename {src => include/pinocchio}/algorithm/joint-configuration.hxx (100%) rename {src => include/pinocchio}/algorithm/kinematics-derivatives.hpp (100%) rename {src => include/pinocchio}/algorithm/kinematics-derivatives.hxx (100%) rename {src => include/pinocchio}/algorithm/kinematics.hpp (100%) rename {src => include/pinocchio}/algorithm/kinematics.hxx (100%) rename {src => include/pinocchio}/algorithm/model.hpp (100%) rename {src => include/pinocchio}/algorithm/model.hxx (100%) rename {src => include/pinocchio}/algorithm/parallel/aba.hpp (100%) rename {src => include/pinocchio}/algorithm/parallel/geometry.hpp (100%) rename {src => include/pinocchio}/algorithm/parallel/rnea.hpp (100%) rename {src => include/pinocchio}/algorithm/regressor.hpp (100%) rename {src => include/pinocchio}/algorithm/regressor.hxx (100%) rename {src => include/pinocchio}/algorithm/rnea-derivatives.hpp (100%) rename {src => include/pinocchio}/algorithm/rnea-derivatives.hxx (100%) rename {src => include/pinocchio}/algorithm/rnea-second-order-derivatives.hpp (100%) rename {src => include/pinocchio}/algorithm/rnea-second-order-derivatives.hxx (100%) rename {src => include/pinocchio}/algorithm/rnea.hpp (100%) rename {src => include/pinocchio}/algorithm/rnea.hxx (100%) rename {src => include/pinocchio}/autodiff/casadi.hpp (100%) rename {src => include/pinocchio}/autodiff/casadi/math/matrix.hpp (100%) rename {src => include/pinocchio}/autodiff/casadi/math/quaternion.hpp (100%) rename {src => include/pinocchio}/autodiff/casadi/spatial/se3-tpl.hpp (100%) rename {src => include/pinocchio}/autodiff/casadi/utils/static-if.hpp (100%) rename {src => include/pinocchio}/autodiff/cppad.hpp (100%) rename {src => include/pinocchio}/autodiff/cppad/algorithm/aba.hpp (100%) rename {src => include/pinocchio}/autodiff/cppad/math/eigen_plugin.hpp (100%) rename {src => include/pinocchio}/autodiff/cppad/math/quaternion.hpp (100%) rename {src => include/pinocchio}/autodiff/cppad/spatial/log.hxx (100%) rename {src => include/pinocchio}/autodiff/cppad/spatial/se3-tpl.hpp (100%) rename {src => include/pinocchio}/autodiff/cppad/utils/static-if.hpp (100%) rename {bindings => include/pinocchio/bindings}/python/algorithm/algorithms.hpp (100%) rename {bindings => include/pinocchio/bindings}/python/fwd.hpp (100%) rename {bindings => include/pinocchio/bindings}/python/multibody/data.hpp (100%) rename {bindings => include/pinocchio/bindings}/python/multibody/fcl/transform.hpp (100%) rename {bindings => include/pinocchio/bindings}/python/multibody/frame.hpp (100%) rename {bindings => include/pinocchio/bindings}/python/multibody/geometry-data.hpp (100%) rename {bindings => include/pinocchio/bindings}/python/multibody/geometry-model.hpp (100%) rename {bindings => include/pinocchio/bindings}/python/multibody/geometry-object.hpp (100%) rename {bindings => include/pinocchio/bindings}/python/multibody/joint/joint-derived.hpp (100%) rename {bindings => include/pinocchio/bindings}/python/multibody/joint/joint.hpp (100%) rename {bindings => include/pinocchio/bindings}/python/multibody/joint/joints-datas.hpp (100%) rename {bindings => include/pinocchio/bindings}/python/multibody/joint/joints-models.hpp (100%) rename {bindings => include/pinocchio/bindings}/python/multibody/joint/joints-variant.hpp (100%) rename {bindings => include/pinocchio/bindings}/python/multibody/liegroups.hpp (100%) rename {bindings => include/pinocchio/bindings}/python/multibody/model.hpp (100%) rename {bindings => include/pinocchio/bindings}/python/multibody/pool/geometry.hpp (100%) rename {bindings => include/pinocchio/bindings}/python/multibody/pool/model.hpp (100%) rename {bindings => include/pinocchio/bindings}/python/parsers/python.hpp (100%) rename {bindings => include/pinocchio/bindings}/python/parsers/sample-models.hpp (100%) rename {bindings => include/pinocchio/bindings}/python/parsers/srdf.hpp (100%) rename {bindings => include/pinocchio/bindings}/python/parsers/urdf.hpp (100%) rename {bindings => include/pinocchio/bindings}/python/pybind11-all.hpp (100%) rename {bindings => include/pinocchio/bindings}/python/pybind11.hpp (100%) rename {bindings => include/pinocchio/bindings}/python/serialization/serializable.hpp (100%) mode change 100755 => 100644 rename {bindings => include/pinocchio/bindings}/python/serialization/serialization.hpp (100%) rename {bindings => include/pinocchio/bindings}/python/spatial/explog.hpp (100%) rename {bindings => include/pinocchio/bindings}/python/spatial/force.hpp (100%) rename {bindings => include/pinocchio/bindings}/python/spatial/inertia.hpp (100%) rename {bindings => include/pinocchio/bindings}/python/spatial/motion.hpp (100%) rename {bindings => include/pinocchio/bindings}/python/spatial/se3.hpp (100%) rename {bindings => include/pinocchio/bindings}/python/utils/constant.hpp (100%) rename {bindings => include/pinocchio/bindings}/python/utils/conversions.hpp (100%) rename {bindings => include/pinocchio/bindings}/python/utils/copyable.hpp (100%) rename {bindings => include/pinocchio/bindings}/python/utils/dependencies.hpp (100%) rename {bindings => include/pinocchio/bindings}/python/utils/deprecation.hpp (100%) rename {bindings => include/pinocchio/bindings}/python/utils/eigen.hpp (100%) rename {bindings => include/pinocchio/bindings}/python/utils/list.hpp (100%) rename {bindings => include/pinocchio/bindings}/python/utils/namespace.hpp (100%) rename {bindings => include/pinocchio/bindings}/python/utils/pickle-map.hpp (100%) rename {bindings => include/pinocchio/bindings}/python/utils/pickle-vector.hpp (100%) rename {bindings => include/pinocchio/bindings}/python/utils/printable.hpp (100%) rename {bindings => include/pinocchio/bindings}/python/utils/registration.hpp (100%) rename {bindings => include/pinocchio/bindings}/python/utils/std-aligned-vector.hpp (100%) rename {bindings => include/pinocchio/bindings}/python/utils/std-map.hpp (100%) rename {bindings => include/pinocchio/bindings}/python/utils/std-vector.hpp (100%) rename {bindings => include/pinocchio/bindings}/python/utils/version.hpp (100%) rename {src => include/pinocchio}/codegen/code-generator-algo.hpp (100%) rename {src => include/pinocchio}/codegen/code-generator-base.hpp (100%) rename {src => include/pinocchio}/codegen/cppadcg.hpp (100%) rename {src => include/pinocchio}/container/aligned-vector.hpp (100%) rename {src => include/pinocchio}/container/boost-container-limits.hpp (100%) rename {src => include/pinocchio}/core/binary-op.hpp (100%) rename {src => include/pinocchio}/core/unary-op.hpp (100%) rename {src => include/pinocchio}/deprecated-macros.hpp (100%) rename {src => include/pinocchio}/deprecated-namespaces.hpp (100%) rename {src => include/pinocchio}/deprecation.hpp (100%) rename {src => include/pinocchio}/eigen-macros.hpp (100%) rename {src => include/pinocchio}/fwd.hpp (100%) rename {src => include/pinocchio}/macros.hpp (100%) rename {src => include/pinocchio}/math/casadi.hpp (100%) rename {src => include/pinocchio}/math/comparison-operators.hpp (100%) rename {src => include/pinocchio}/math/cppad.hpp (100%) rename {src => include/pinocchio}/math/cppadcg.hpp (100%) rename {src => include/pinocchio}/math/fwd.hpp (100%) rename {src => include/pinocchio}/math/matrix-block.hpp (100%) rename {src => include/pinocchio}/math/matrix.hpp (100%) rename {src => include/pinocchio}/math/multiprecision-mpfr.hpp (100%) rename {src => include/pinocchio}/math/multiprecision.hpp (100%) rename {src => include/pinocchio}/math/quaternion.hpp (100%) rename {src => include/pinocchio}/math/rotation.hpp (100%) rename {src => include/pinocchio}/math/rpy.hpp (100%) rename {src => include/pinocchio}/math/rpy.hxx (100%) rename {src => include/pinocchio}/math/sign.hpp (100%) rename {src => include/pinocchio}/math/sincos.hpp (100%) rename {src => include/pinocchio}/math/taylor-expansion.hpp (100%) rename {src => include/pinocchio}/math/tensor.hpp (100%) rename {src => include/pinocchio}/multibody/constraint-base.hpp (100%) rename {src => include/pinocchio}/multibody/constraint-generic.hpp (100%) rename {src => include/pinocchio}/multibody/constraint.hpp (100%) rename {src => include/pinocchio}/multibody/data.hpp (100%) rename {src => include/pinocchio}/multibody/data.hxx (100%) rename {src => include/pinocchio}/multibody/fcl.hpp (100%) rename {src => include/pinocchio}/multibody/fcl.hxx (100%) rename {src => include/pinocchio}/multibody/force-set.hpp (100%) rename {src => include/pinocchio}/multibody/frame.hpp (100%) rename {src => include/pinocchio}/multibody/fwd.hpp (100%) rename {src => include/pinocchio}/multibody/geometry.hpp (100%) rename {src => include/pinocchio}/multibody/geometry.hxx (100%) rename {src => include/pinocchio}/multibody/joint/fwd.hpp (100%) rename {src => include/pinocchio}/multibody/joint/joint-base.hpp (100%) rename {src => include/pinocchio}/multibody/joint/joint-basic-visitors.hpp (100%) rename {src => include/pinocchio}/multibody/joint/joint-basic-visitors.hxx (100%) rename {src => include/pinocchio}/multibody/joint/joint-collection.hpp (100%) rename {src => include/pinocchio}/multibody/joint/joint-common-operations.hpp (100%) rename {src => include/pinocchio}/multibody/joint/joint-composite.hpp (100%) rename {src => include/pinocchio}/multibody/joint/joint-composite.hxx (100%) rename {src => include/pinocchio}/multibody/joint/joint-data-base.hpp (100%) rename {src => include/pinocchio}/multibody/joint/joint-free-flyer.hpp (100%) rename {src => include/pinocchio}/multibody/joint/joint-generic.hpp (100%) rename {src => include/pinocchio}/multibody/joint/joint-mimic.hpp (100%) rename {src => include/pinocchio}/multibody/joint/joint-model-base.hpp (100%) rename {src => include/pinocchio}/multibody/joint/joint-planar.hpp (100%) rename {src => include/pinocchio}/multibody/joint/joint-prismatic-unaligned.hpp (100%) rename {src => include/pinocchio}/multibody/joint/joint-prismatic.hpp (100%) rename {src => include/pinocchio}/multibody/joint/joint-revolute-unaligned.hpp (100%) rename {src => include/pinocchio}/multibody/joint/joint-revolute-unbounded-unaligned.hpp (100%) rename {src => include/pinocchio}/multibody/joint/joint-revolute-unbounded.hpp (100%) rename {src => include/pinocchio}/multibody/joint/joint-revolute.hpp (100%) rename {src => include/pinocchio}/multibody/joint/joint-spherical-ZYX.hpp (100%) rename {src => include/pinocchio}/multibody/joint/joint-spherical.hpp (100%) rename {src => include/pinocchio}/multibody/joint/joint-translation.hpp (100%) rename {src => include/pinocchio}/multibody/joint/joints.hpp (100%) rename {src => include/pinocchio}/multibody/liegroup/cartesian-product-variant.hpp (100%) rename {src => include/pinocchio}/multibody/liegroup/cartesian-product-variant.hxx (100%) rename {src => include/pinocchio}/multibody/liegroup/cartesian-product.hpp (100%) rename {src => include/pinocchio}/multibody/liegroup/fwd.hpp (100%) rename {src => include/pinocchio}/multibody/liegroup/liegroup-algo.hpp (100%) rename {src => include/pinocchio}/multibody/liegroup/liegroup-algo.hxx (100%) rename {src => include/pinocchio}/multibody/liegroup/liegroup-base.hpp (100%) rename {src => include/pinocchio}/multibody/liegroup/liegroup-base.hxx (100%) rename {src => include/pinocchio}/multibody/liegroup/liegroup-collection.hpp (100%) rename {src => include/pinocchio}/multibody/liegroup/liegroup-generic.hpp (100%) rename {src => include/pinocchio}/multibody/liegroup/liegroup-variant-visitors.hpp (100%) rename {src => include/pinocchio}/multibody/liegroup/liegroup-variant-visitors.hxx (100%) rename {src => include/pinocchio}/multibody/liegroup/liegroup.hpp (100%) rename {src => include/pinocchio}/multibody/liegroup/special-euclidean.hpp (100%) rename {src => include/pinocchio}/multibody/liegroup/special-orthogonal.hpp (100%) rename {src => include/pinocchio}/multibody/liegroup/vector-space.hpp (100%) rename {src => include/pinocchio}/multibody/model.hpp (100%) rename {src => include/pinocchio}/multibody/model.hxx (100%) rename {src => include/pinocchio}/multibody/pool/geometry.hpp (100%) rename {src => include/pinocchio}/multibody/pool/model.hpp (100%) rename {src => include/pinocchio}/multibody/visitor.hpp (100%) rename {src => include/pinocchio}/multibody/visitor/fusion.hpp (100%) rename {src => include/pinocchio}/multibody/visitor/joint-binary-visitor.hpp (100%) rename {src => include/pinocchio}/multibody/visitor/joint-unary-visitor.hpp (100%) rename {src => include/pinocchio}/parsers/sample-models.hpp (100%) rename {src => include/pinocchio}/parsers/sample-models.hxx (100%) rename {src => include/pinocchio}/parsers/srdf.hpp (100%) rename {src => include/pinocchio}/parsers/srdf.hxx (100%) rename {src => include/pinocchio}/parsers/urdf.hpp (100%) rename {src => include/pinocchio}/parsers/urdf/geometry.hxx (100%) rename {src => include/pinocchio}/parsers/urdf/model.hxx (100%) rename {src => include/pinocchio}/parsers/urdf/types.hpp (100%) rename {src => include/pinocchio}/parsers/urdf/utils.hpp (100%) rename {src => include/pinocchio}/parsers/utils.hpp (100%) rename {src => include/pinocchio}/serialization/aligned-vector.hpp (100%) rename {src => include/pinocchio}/serialization/archive.hpp (100%) rename {src => include/pinocchio}/serialization/data.hpp (100%) rename {src => include/pinocchio}/serialization/eigen.hpp (100%) rename {src => include/pinocchio}/serialization/force.hpp (100%) rename {src => include/pinocchio}/serialization/frame.hpp (100%) rename {src => include/pinocchio}/serialization/fwd.hpp (100%) mode change 100755 => 100644 rename {src => include/pinocchio}/serialization/geometry.hpp (100%) rename {src => include/pinocchio}/serialization/inertia.hpp (100%) rename {src => include/pinocchio}/serialization/joints-constraint.hpp (100%) rename {src => include/pinocchio}/serialization/joints-data.hpp (100%) rename {src => include/pinocchio}/serialization/joints-model.hpp (100%) rename {src => include/pinocchio}/serialization/joints-motion.hpp (100%) rename {src => include/pinocchio}/serialization/joints-transform.hpp (100%) rename {src => include/pinocchio}/serialization/joints.hpp (100%) rename {src => include/pinocchio}/serialization/model.hpp (100%) rename {src => include/pinocchio}/serialization/motion.hpp (100%) rename {src => include/pinocchio}/serialization/se3.hpp (100%) rename {src => include/pinocchio}/serialization/serializable.hpp (100%) rename {src => include/pinocchio}/serialization/spatial.hpp (100%) rename {src => include/pinocchio}/serialization/static-buffer.hpp (100%) rename {src => include/pinocchio}/serialization/symmetric3.hpp (100%) rename {src => include/pinocchio}/serialization/vector.hpp (100%) rename {src => include/pinocchio}/spatial/act-on-set.hpp (100%) rename {src => include/pinocchio}/spatial/act-on-set.hxx (100%) rename {src => include/pinocchio}/spatial/cartesian-axis.hpp (100%) rename {src => include/pinocchio}/spatial/explog-quaternion.hpp (100%) rename {src => include/pinocchio}/spatial/explog.hpp (100%) rename {src => include/pinocchio}/spatial/fcl-pinocchio-conversions.hpp (100%) rename {src => include/pinocchio}/spatial/force-base.hpp (100%) rename {src => include/pinocchio}/spatial/force-dense.hpp (100%) rename {src => include/pinocchio}/spatial/force-ref.hpp (100%) rename {src => include/pinocchio}/spatial/force-tpl.hpp (100%) rename {src => include/pinocchio}/spatial/force.hpp (100%) rename {src => include/pinocchio}/spatial/fwd.hpp (100%) rename {src => include/pinocchio}/spatial/inertia.hpp (100%) rename {src => include/pinocchio}/spatial/log.hpp (100%) rename {src => include/pinocchio}/spatial/log.hxx (100%) rename {src => include/pinocchio}/spatial/motion-base.hpp (100%) rename {src => include/pinocchio}/spatial/motion-dense.hpp (100%) rename {src => include/pinocchio}/spatial/motion-ref.hpp (100%) rename {src => include/pinocchio}/spatial/motion-tpl.hpp (100%) rename {src => include/pinocchio}/spatial/motion-zero.hpp (100%) rename {src => include/pinocchio}/spatial/motion.hpp (100%) rename {src => include/pinocchio}/spatial/se3-base.hpp (100%) rename {src => include/pinocchio}/spatial/se3-tpl.hpp (100%) rename {src => include/pinocchio}/spatial/se3.hpp (100%) rename {src => include/pinocchio}/spatial/skew.hpp (100%) rename {src => include/pinocchio}/spatial/spatial-axis.hpp (100%) rename {src => include/pinocchio}/spatial/symmetric3.hpp (100%) rename {src => include/pinocchio}/utils/axis-label.hpp (100%) rename {src => include/pinocchio}/utils/cast.hpp (100%) rename {src => include/pinocchio}/utils/eigen-fix.hpp (100%) rename {src => include/pinocchio}/utils/file-explorer.hpp (100%) rename {src => include/pinocchio}/utils/helpers.hpp (100%) rename {src => include/pinocchio}/utils/openmp.hpp (100%) rename {src => include/pinocchio}/utils/static-if.hpp (100%) rename {src => include/pinocchio}/utils/string-generator.hpp (100%) rename {src => include/pinocchio}/utils/timer.hpp (100%) rename {src => include/pinocchio}/utils/version.hpp (100%) diff --git a/src/algorithm/aba-derivatives.hpp b/include/pinocchio/algorithm/aba-derivatives.hpp similarity index 100% rename from src/algorithm/aba-derivatives.hpp rename to include/pinocchio/algorithm/aba-derivatives.hpp diff --git a/src/algorithm/aba-derivatives.hxx b/include/pinocchio/algorithm/aba-derivatives.hxx similarity index 100% rename from src/algorithm/aba-derivatives.hxx rename to include/pinocchio/algorithm/aba-derivatives.hxx diff --git a/src/algorithm/aba.hpp b/include/pinocchio/algorithm/aba.hpp similarity index 100% rename from src/algorithm/aba.hpp rename to include/pinocchio/algorithm/aba.hpp diff --git a/src/algorithm/aba.hxx b/include/pinocchio/algorithm/aba.hxx similarity index 100% rename from src/algorithm/aba.hxx rename to include/pinocchio/algorithm/aba.hxx diff --git a/src/algorithm/center-of-mass-derivatives.hpp b/include/pinocchio/algorithm/center-of-mass-derivatives.hpp similarity index 100% rename from src/algorithm/center-of-mass-derivatives.hpp rename to include/pinocchio/algorithm/center-of-mass-derivatives.hpp diff --git a/src/algorithm/center-of-mass-derivatives.hxx b/include/pinocchio/algorithm/center-of-mass-derivatives.hxx similarity index 100% rename from src/algorithm/center-of-mass-derivatives.hxx rename to include/pinocchio/algorithm/center-of-mass-derivatives.hxx diff --git a/src/algorithm/center-of-mass.hpp b/include/pinocchio/algorithm/center-of-mass.hpp similarity index 100% rename from src/algorithm/center-of-mass.hpp rename to include/pinocchio/algorithm/center-of-mass.hpp diff --git a/src/algorithm/center-of-mass.hxx b/include/pinocchio/algorithm/center-of-mass.hxx similarity index 100% rename from src/algorithm/center-of-mass.hxx rename to include/pinocchio/algorithm/center-of-mass.hxx diff --git a/src/algorithm/centroidal-derivatives.hpp b/include/pinocchio/algorithm/centroidal-derivatives.hpp similarity index 100% rename from src/algorithm/centroidal-derivatives.hpp rename to include/pinocchio/algorithm/centroidal-derivatives.hpp diff --git a/src/algorithm/centroidal-derivatives.hxx b/include/pinocchio/algorithm/centroidal-derivatives.hxx similarity index 100% rename from src/algorithm/centroidal-derivatives.hxx rename to include/pinocchio/algorithm/centroidal-derivatives.hxx diff --git a/src/algorithm/centroidal.hpp b/include/pinocchio/algorithm/centroidal.hpp similarity index 100% rename from src/algorithm/centroidal.hpp rename to include/pinocchio/algorithm/centroidal.hpp diff --git a/src/algorithm/centroidal.hxx b/include/pinocchio/algorithm/centroidal.hxx similarity index 100% rename from src/algorithm/centroidal.hxx rename to include/pinocchio/algorithm/centroidal.hxx diff --git a/src/algorithm/check.hpp b/include/pinocchio/algorithm/check.hpp similarity index 100% rename from src/algorithm/check.hpp rename to include/pinocchio/algorithm/check.hpp diff --git a/src/algorithm/check.hxx b/include/pinocchio/algorithm/check.hxx similarity index 100% rename from src/algorithm/check.hxx rename to include/pinocchio/algorithm/check.hxx diff --git a/src/algorithm/cholesky.hpp b/include/pinocchio/algorithm/cholesky.hpp similarity index 100% rename from src/algorithm/cholesky.hpp rename to include/pinocchio/algorithm/cholesky.hpp diff --git a/src/algorithm/cholesky.hxx b/include/pinocchio/algorithm/cholesky.hxx similarity index 100% rename from src/algorithm/cholesky.hxx rename to include/pinocchio/algorithm/cholesky.hxx diff --git a/src/algorithm/compute-all-terms.hpp b/include/pinocchio/algorithm/compute-all-terms.hpp similarity index 100% rename from src/algorithm/compute-all-terms.hpp rename to include/pinocchio/algorithm/compute-all-terms.hpp diff --git a/src/algorithm/compute-all-terms.hxx b/include/pinocchio/algorithm/compute-all-terms.hxx similarity index 100% rename from src/algorithm/compute-all-terms.hxx rename to include/pinocchio/algorithm/compute-all-terms.hxx diff --git a/src/algorithm/contact-dynamics.hpp b/include/pinocchio/algorithm/contact-dynamics.hpp similarity index 100% rename from src/algorithm/contact-dynamics.hpp rename to include/pinocchio/algorithm/contact-dynamics.hpp diff --git a/src/algorithm/contact-dynamics.hxx b/include/pinocchio/algorithm/contact-dynamics.hxx similarity index 100% rename from src/algorithm/contact-dynamics.hxx rename to include/pinocchio/algorithm/contact-dynamics.hxx diff --git a/src/algorithm/copy.hpp b/include/pinocchio/algorithm/copy.hpp similarity index 100% rename from src/algorithm/copy.hpp rename to include/pinocchio/algorithm/copy.hpp diff --git a/src/algorithm/crba.hpp b/include/pinocchio/algorithm/crba.hpp similarity index 100% rename from src/algorithm/crba.hpp rename to include/pinocchio/algorithm/crba.hpp diff --git a/src/algorithm/crba.hxx b/include/pinocchio/algorithm/crba.hxx similarity index 100% rename from src/algorithm/crba.hxx rename to include/pinocchio/algorithm/crba.hxx diff --git a/src/algorithm/default-check.hpp b/include/pinocchio/algorithm/default-check.hpp similarity index 100% rename from src/algorithm/default-check.hpp rename to include/pinocchio/algorithm/default-check.hpp diff --git a/src/algorithm/dynamics.hpp b/include/pinocchio/algorithm/dynamics.hpp similarity index 100% rename from src/algorithm/dynamics.hpp rename to include/pinocchio/algorithm/dynamics.hpp diff --git a/src/algorithm/energy.hpp b/include/pinocchio/algorithm/energy.hpp similarity index 100% rename from src/algorithm/energy.hpp rename to include/pinocchio/algorithm/energy.hpp diff --git a/src/algorithm/energy.hxx b/include/pinocchio/algorithm/energy.hxx similarity index 100% rename from src/algorithm/energy.hxx rename to include/pinocchio/algorithm/energy.hxx diff --git a/src/algorithm/frames-derivatives.hpp b/include/pinocchio/algorithm/frames-derivatives.hpp similarity index 100% rename from src/algorithm/frames-derivatives.hpp rename to include/pinocchio/algorithm/frames-derivatives.hpp diff --git a/src/algorithm/frames-derivatives.hxx b/include/pinocchio/algorithm/frames-derivatives.hxx similarity index 100% rename from src/algorithm/frames-derivatives.hxx rename to include/pinocchio/algorithm/frames-derivatives.hxx diff --git a/src/algorithm/frames.hpp b/include/pinocchio/algorithm/frames.hpp similarity index 100% rename from src/algorithm/frames.hpp rename to include/pinocchio/algorithm/frames.hpp diff --git a/src/algorithm/frames.hxx b/include/pinocchio/algorithm/frames.hxx similarity index 100% rename from src/algorithm/frames.hxx rename to include/pinocchio/algorithm/frames.hxx diff --git a/src/algorithm/geometry.hpp b/include/pinocchio/algorithm/geometry.hpp similarity index 100% rename from src/algorithm/geometry.hpp rename to include/pinocchio/algorithm/geometry.hpp diff --git a/src/algorithm/geometry.hxx b/include/pinocchio/algorithm/geometry.hxx similarity index 100% rename from src/algorithm/geometry.hxx rename to include/pinocchio/algorithm/geometry.hxx diff --git a/src/algorithm/jacobian.hpp b/include/pinocchio/algorithm/jacobian.hpp similarity index 100% rename from src/algorithm/jacobian.hpp rename to include/pinocchio/algorithm/jacobian.hpp diff --git a/src/algorithm/jacobian.hxx b/include/pinocchio/algorithm/jacobian.hxx similarity index 100% rename from src/algorithm/jacobian.hxx rename to include/pinocchio/algorithm/jacobian.hxx diff --git a/src/algorithm/joint-configuration.hpp b/include/pinocchio/algorithm/joint-configuration.hpp similarity index 100% rename from src/algorithm/joint-configuration.hpp rename to include/pinocchio/algorithm/joint-configuration.hpp diff --git a/src/algorithm/joint-configuration.hxx b/include/pinocchio/algorithm/joint-configuration.hxx similarity index 100% rename from src/algorithm/joint-configuration.hxx rename to include/pinocchio/algorithm/joint-configuration.hxx diff --git a/src/algorithm/kinematics-derivatives.hpp b/include/pinocchio/algorithm/kinematics-derivatives.hpp similarity index 100% rename from src/algorithm/kinematics-derivatives.hpp rename to include/pinocchio/algorithm/kinematics-derivatives.hpp diff --git a/src/algorithm/kinematics-derivatives.hxx b/include/pinocchio/algorithm/kinematics-derivatives.hxx similarity index 100% rename from src/algorithm/kinematics-derivatives.hxx rename to include/pinocchio/algorithm/kinematics-derivatives.hxx diff --git a/src/algorithm/kinematics.hpp b/include/pinocchio/algorithm/kinematics.hpp similarity index 100% rename from src/algorithm/kinematics.hpp rename to include/pinocchio/algorithm/kinematics.hpp diff --git a/src/algorithm/kinematics.hxx b/include/pinocchio/algorithm/kinematics.hxx similarity index 100% rename from src/algorithm/kinematics.hxx rename to include/pinocchio/algorithm/kinematics.hxx diff --git a/src/algorithm/model.hpp b/include/pinocchio/algorithm/model.hpp similarity index 100% rename from src/algorithm/model.hpp rename to include/pinocchio/algorithm/model.hpp diff --git a/src/algorithm/model.hxx b/include/pinocchio/algorithm/model.hxx similarity index 100% rename from src/algorithm/model.hxx rename to include/pinocchio/algorithm/model.hxx diff --git a/src/algorithm/parallel/aba.hpp b/include/pinocchio/algorithm/parallel/aba.hpp similarity index 100% rename from src/algorithm/parallel/aba.hpp rename to include/pinocchio/algorithm/parallel/aba.hpp diff --git a/src/algorithm/parallel/geometry.hpp b/include/pinocchio/algorithm/parallel/geometry.hpp similarity index 100% rename from src/algorithm/parallel/geometry.hpp rename to include/pinocchio/algorithm/parallel/geometry.hpp diff --git a/src/algorithm/parallel/rnea.hpp b/include/pinocchio/algorithm/parallel/rnea.hpp similarity index 100% rename from src/algorithm/parallel/rnea.hpp rename to include/pinocchio/algorithm/parallel/rnea.hpp diff --git a/src/algorithm/regressor.hpp b/include/pinocchio/algorithm/regressor.hpp similarity index 100% rename from src/algorithm/regressor.hpp rename to include/pinocchio/algorithm/regressor.hpp diff --git a/src/algorithm/regressor.hxx b/include/pinocchio/algorithm/regressor.hxx similarity index 100% rename from src/algorithm/regressor.hxx rename to include/pinocchio/algorithm/regressor.hxx diff --git a/src/algorithm/rnea-derivatives.hpp b/include/pinocchio/algorithm/rnea-derivatives.hpp similarity index 100% rename from src/algorithm/rnea-derivatives.hpp rename to include/pinocchio/algorithm/rnea-derivatives.hpp diff --git a/src/algorithm/rnea-derivatives.hxx b/include/pinocchio/algorithm/rnea-derivatives.hxx similarity index 100% rename from src/algorithm/rnea-derivatives.hxx rename to include/pinocchio/algorithm/rnea-derivatives.hxx diff --git a/src/algorithm/rnea-second-order-derivatives.hpp b/include/pinocchio/algorithm/rnea-second-order-derivatives.hpp similarity index 100% rename from src/algorithm/rnea-second-order-derivatives.hpp rename to include/pinocchio/algorithm/rnea-second-order-derivatives.hpp diff --git a/src/algorithm/rnea-second-order-derivatives.hxx b/include/pinocchio/algorithm/rnea-second-order-derivatives.hxx similarity index 100% rename from src/algorithm/rnea-second-order-derivatives.hxx rename to include/pinocchio/algorithm/rnea-second-order-derivatives.hxx diff --git a/src/algorithm/rnea.hpp b/include/pinocchio/algorithm/rnea.hpp similarity index 100% rename from src/algorithm/rnea.hpp rename to include/pinocchio/algorithm/rnea.hpp diff --git a/src/algorithm/rnea.hxx b/include/pinocchio/algorithm/rnea.hxx similarity index 100% rename from src/algorithm/rnea.hxx rename to include/pinocchio/algorithm/rnea.hxx diff --git a/src/autodiff/casadi.hpp b/include/pinocchio/autodiff/casadi.hpp similarity index 100% rename from src/autodiff/casadi.hpp rename to include/pinocchio/autodiff/casadi.hpp diff --git a/src/autodiff/casadi/math/matrix.hpp b/include/pinocchio/autodiff/casadi/math/matrix.hpp similarity index 100% rename from src/autodiff/casadi/math/matrix.hpp rename to include/pinocchio/autodiff/casadi/math/matrix.hpp diff --git a/src/autodiff/casadi/math/quaternion.hpp b/include/pinocchio/autodiff/casadi/math/quaternion.hpp similarity index 100% rename from src/autodiff/casadi/math/quaternion.hpp rename to include/pinocchio/autodiff/casadi/math/quaternion.hpp diff --git a/src/autodiff/casadi/spatial/se3-tpl.hpp b/include/pinocchio/autodiff/casadi/spatial/se3-tpl.hpp similarity index 100% rename from src/autodiff/casadi/spatial/se3-tpl.hpp rename to include/pinocchio/autodiff/casadi/spatial/se3-tpl.hpp diff --git a/src/autodiff/casadi/utils/static-if.hpp b/include/pinocchio/autodiff/casadi/utils/static-if.hpp similarity index 100% rename from src/autodiff/casadi/utils/static-if.hpp rename to include/pinocchio/autodiff/casadi/utils/static-if.hpp diff --git a/src/autodiff/cppad.hpp b/include/pinocchio/autodiff/cppad.hpp similarity index 100% rename from src/autodiff/cppad.hpp rename to include/pinocchio/autodiff/cppad.hpp diff --git a/src/autodiff/cppad/algorithm/aba.hpp b/include/pinocchio/autodiff/cppad/algorithm/aba.hpp similarity index 100% rename from src/autodiff/cppad/algorithm/aba.hpp rename to include/pinocchio/autodiff/cppad/algorithm/aba.hpp diff --git a/src/autodiff/cppad/math/eigen_plugin.hpp b/include/pinocchio/autodiff/cppad/math/eigen_plugin.hpp similarity index 100% rename from src/autodiff/cppad/math/eigen_plugin.hpp rename to include/pinocchio/autodiff/cppad/math/eigen_plugin.hpp diff --git a/src/autodiff/cppad/math/quaternion.hpp b/include/pinocchio/autodiff/cppad/math/quaternion.hpp similarity index 100% rename from src/autodiff/cppad/math/quaternion.hpp rename to include/pinocchio/autodiff/cppad/math/quaternion.hpp diff --git a/src/autodiff/cppad/spatial/log.hxx b/include/pinocchio/autodiff/cppad/spatial/log.hxx similarity index 100% rename from src/autodiff/cppad/spatial/log.hxx rename to include/pinocchio/autodiff/cppad/spatial/log.hxx diff --git a/src/autodiff/cppad/spatial/se3-tpl.hpp b/include/pinocchio/autodiff/cppad/spatial/se3-tpl.hpp similarity index 100% rename from src/autodiff/cppad/spatial/se3-tpl.hpp rename to include/pinocchio/autodiff/cppad/spatial/se3-tpl.hpp diff --git a/src/autodiff/cppad/utils/static-if.hpp b/include/pinocchio/autodiff/cppad/utils/static-if.hpp similarity index 100% rename from src/autodiff/cppad/utils/static-if.hpp rename to include/pinocchio/autodiff/cppad/utils/static-if.hpp diff --git a/bindings/python/algorithm/algorithms.hpp b/include/pinocchio/bindings/python/algorithm/algorithms.hpp similarity index 100% rename from bindings/python/algorithm/algorithms.hpp rename to include/pinocchio/bindings/python/algorithm/algorithms.hpp diff --git a/bindings/python/fwd.hpp b/include/pinocchio/bindings/python/fwd.hpp similarity index 100% rename from bindings/python/fwd.hpp rename to include/pinocchio/bindings/python/fwd.hpp diff --git a/bindings/python/multibody/data.hpp b/include/pinocchio/bindings/python/multibody/data.hpp similarity index 100% rename from bindings/python/multibody/data.hpp rename to include/pinocchio/bindings/python/multibody/data.hpp diff --git a/bindings/python/multibody/fcl/transform.hpp b/include/pinocchio/bindings/python/multibody/fcl/transform.hpp similarity index 100% rename from bindings/python/multibody/fcl/transform.hpp rename to include/pinocchio/bindings/python/multibody/fcl/transform.hpp diff --git a/bindings/python/multibody/frame.hpp b/include/pinocchio/bindings/python/multibody/frame.hpp similarity index 100% rename from bindings/python/multibody/frame.hpp rename to include/pinocchio/bindings/python/multibody/frame.hpp diff --git a/bindings/python/multibody/geometry-data.hpp b/include/pinocchio/bindings/python/multibody/geometry-data.hpp similarity index 100% rename from bindings/python/multibody/geometry-data.hpp rename to include/pinocchio/bindings/python/multibody/geometry-data.hpp diff --git a/bindings/python/multibody/geometry-model.hpp b/include/pinocchio/bindings/python/multibody/geometry-model.hpp similarity index 100% rename from bindings/python/multibody/geometry-model.hpp rename to include/pinocchio/bindings/python/multibody/geometry-model.hpp diff --git a/bindings/python/multibody/geometry-object.hpp b/include/pinocchio/bindings/python/multibody/geometry-object.hpp similarity index 100% rename from bindings/python/multibody/geometry-object.hpp rename to include/pinocchio/bindings/python/multibody/geometry-object.hpp diff --git a/bindings/python/multibody/joint/joint-derived.hpp b/include/pinocchio/bindings/python/multibody/joint/joint-derived.hpp similarity index 100% rename from bindings/python/multibody/joint/joint-derived.hpp rename to include/pinocchio/bindings/python/multibody/joint/joint-derived.hpp diff --git a/bindings/python/multibody/joint/joint.hpp b/include/pinocchio/bindings/python/multibody/joint/joint.hpp similarity index 100% rename from bindings/python/multibody/joint/joint.hpp rename to include/pinocchio/bindings/python/multibody/joint/joint.hpp diff --git a/bindings/python/multibody/joint/joints-datas.hpp b/include/pinocchio/bindings/python/multibody/joint/joints-datas.hpp similarity index 100% rename from bindings/python/multibody/joint/joints-datas.hpp rename to include/pinocchio/bindings/python/multibody/joint/joints-datas.hpp diff --git a/bindings/python/multibody/joint/joints-models.hpp b/include/pinocchio/bindings/python/multibody/joint/joints-models.hpp similarity index 100% rename from bindings/python/multibody/joint/joints-models.hpp rename to include/pinocchio/bindings/python/multibody/joint/joints-models.hpp diff --git a/bindings/python/multibody/joint/joints-variant.hpp b/include/pinocchio/bindings/python/multibody/joint/joints-variant.hpp similarity index 100% rename from bindings/python/multibody/joint/joints-variant.hpp rename to include/pinocchio/bindings/python/multibody/joint/joints-variant.hpp diff --git a/bindings/python/multibody/liegroups.hpp b/include/pinocchio/bindings/python/multibody/liegroups.hpp similarity index 100% rename from bindings/python/multibody/liegroups.hpp rename to include/pinocchio/bindings/python/multibody/liegroups.hpp diff --git a/bindings/python/multibody/model.hpp b/include/pinocchio/bindings/python/multibody/model.hpp similarity index 100% rename from bindings/python/multibody/model.hpp rename to include/pinocchio/bindings/python/multibody/model.hpp diff --git a/bindings/python/multibody/pool/geometry.hpp b/include/pinocchio/bindings/python/multibody/pool/geometry.hpp similarity index 100% rename from bindings/python/multibody/pool/geometry.hpp rename to include/pinocchio/bindings/python/multibody/pool/geometry.hpp diff --git a/bindings/python/multibody/pool/model.hpp b/include/pinocchio/bindings/python/multibody/pool/model.hpp similarity index 100% rename from bindings/python/multibody/pool/model.hpp rename to include/pinocchio/bindings/python/multibody/pool/model.hpp diff --git a/bindings/python/parsers/python.hpp b/include/pinocchio/bindings/python/parsers/python.hpp similarity index 100% rename from bindings/python/parsers/python.hpp rename to include/pinocchio/bindings/python/parsers/python.hpp diff --git a/bindings/python/parsers/sample-models.hpp b/include/pinocchio/bindings/python/parsers/sample-models.hpp similarity index 100% rename from bindings/python/parsers/sample-models.hpp rename to include/pinocchio/bindings/python/parsers/sample-models.hpp diff --git a/bindings/python/parsers/srdf.hpp b/include/pinocchio/bindings/python/parsers/srdf.hpp similarity index 100% rename from bindings/python/parsers/srdf.hpp rename to include/pinocchio/bindings/python/parsers/srdf.hpp diff --git a/bindings/python/parsers/urdf.hpp b/include/pinocchio/bindings/python/parsers/urdf.hpp similarity index 100% rename from bindings/python/parsers/urdf.hpp rename to include/pinocchio/bindings/python/parsers/urdf.hpp diff --git a/bindings/python/pybind11-all.hpp b/include/pinocchio/bindings/python/pybind11-all.hpp similarity index 100% rename from bindings/python/pybind11-all.hpp rename to include/pinocchio/bindings/python/pybind11-all.hpp diff --git a/bindings/python/pybind11.hpp b/include/pinocchio/bindings/python/pybind11.hpp similarity index 100% rename from bindings/python/pybind11.hpp rename to include/pinocchio/bindings/python/pybind11.hpp diff --git a/bindings/python/serialization/serializable.hpp b/include/pinocchio/bindings/python/serialization/serializable.hpp old mode 100755 new mode 100644 similarity index 100% rename from bindings/python/serialization/serializable.hpp rename to include/pinocchio/bindings/python/serialization/serializable.hpp diff --git a/bindings/python/serialization/serialization.hpp b/include/pinocchio/bindings/python/serialization/serialization.hpp similarity index 100% rename from bindings/python/serialization/serialization.hpp rename to include/pinocchio/bindings/python/serialization/serialization.hpp diff --git a/bindings/python/spatial/explog.hpp b/include/pinocchio/bindings/python/spatial/explog.hpp similarity index 100% rename from bindings/python/spatial/explog.hpp rename to include/pinocchio/bindings/python/spatial/explog.hpp diff --git a/bindings/python/spatial/force.hpp b/include/pinocchio/bindings/python/spatial/force.hpp similarity index 100% rename from bindings/python/spatial/force.hpp rename to include/pinocchio/bindings/python/spatial/force.hpp diff --git a/bindings/python/spatial/inertia.hpp b/include/pinocchio/bindings/python/spatial/inertia.hpp similarity index 100% rename from bindings/python/spatial/inertia.hpp rename to include/pinocchio/bindings/python/spatial/inertia.hpp diff --git a/bindings/python/spatial/motion.hpp b/include/pinocchio/bindings/python/spatial/motion.hpp similarity index 100% rename from bindings/python/spatial/motion.hpp rename to include/pinocchio/bindings/python/spatial/motion.hpp diff --git a/bindings/python/spatial/se3.hpp b/include/pinocchio/bindings/python/spatial/se3.hpp similarity index 100% rename from bindings/python/spatial/se3.hpp rename to include/pinocchio/bindings/python/spatial/se3.hpp diff --git a/bindings/python/utils/constant.hpp b/include/pinocchio/bindings/python/utils/constant.hpp similarity index 100% rename from bindings/python/utils/constant.hpp rename to include/pinocchio/bindings/python/utils/constant.hpp diff --git a/bindings/python/utils/conversions.hpp b/include/pinocchio/bindings/python/utils/conversions.hpp similarity index 100% rename from bindings/python/utils/conversions.hpp rename to include/pinocchio/bindings/python/utils/conversions.hpp diff --git a/bindings/python/utils/copyable.hpp b/include/pinocchio/bindings/python/utils/copyable.hpp similarity index 100% rename from bindings/python/utils/copyable.hpp rename to include/pinocchio/bindings/python/utils/copyable.hpp diff --git a/bindings/python/utils/dependencies.hpp b/include/pinocchio/bindings/python/utils/dependencies.hpp similarity index 100% rename from bindings/python/utils/dependencies.hpp rename to include/pinocchio/bindings/python/utils/dependencies.hpp diff --git a/bindings/python/utils/deprecation.hpp b/include/pinocchio/bindings/python/utils/deprecation.hpp similarity index 100% rename from bindings/python/utils/deprecation.hpp rename to include/pinocchio/bindings/python/utils/deprecation.hpp diff --git a/bindings/python/utils/eigen.hpp b/include/pinocchio/bindings/python/utils/eigen.hpp similarity index 100% rename from bindings/python/utils/eigen.hpp rename to include/pinocchio/bindings/python/utils/eigen.hpp diff --git a/bindings/python/utils/list.hpp b/include/pinocchio/bindings/python/utils/list.hpp similarity index 100% rename from bindings/python/utils/list.hpp rename to include/pinocchio/bindings/python/utils/list.hpp diff --git a/bindings/python/utils/namespace.hpp b/include/pinocchio/bindings/python/utils/namespace.hpp similarity index 100% rename from bindings/python/utils/namespace.hpp rename to include/pinocchio/bindings/python/utils/namespace.hpp diff --git a/bindings/python/utils/pickle-map.hpp b/include/pinocchio/bindings/python/utils/pickle-map.hpp similarity index 100% rename from bindings/python/utils/pickle-map.hpp rename to include/pinocchio/bindings/python/utils/pickle-map.hpp diff --git a/bindings/python/utils/pickle-vector.hpp b/include/pinocchio/bindings/python/utils/pickle-vector.hpp similarity index 100% rename from bindings/python/utils/pickle-vector.hpp rename to include/pinocchio/bindings/python/utils/pickle-vector.hpp diff --git a/bindings/python/utils/printable.hpp b/include/pinocchio/bindings/python/utils/printable.hpp similarity index 100% rename from bindings/python/utils/printable.hpp rename to include/pinocchio/bindings/python/utils/printable.hpp diff --git a/bindings/python/utils/registration.hpp b/include/pinocchio/bindings/python/utils/registration.hpp similarity index 100% rename from bindings/python/utils/registration.hpp rename to include/pinocchio/bindings/python/utils/registration.hpp diff --git a/bindings/python/utils/std-aligned-vector.hpp b/include/pinocchio/bindings/python/utils/std-aligned-vector.hpp similarity index 100% rename from bindings/python/utils/std-aligned-vector.hpp rename to include/pinocchio/bindings/python/utils/std-aligned-vector.hpp diff --git a/bindings/python/utils/std-map.hpp b/include/pinocchio/bindings/python/utils/std-map.hpp similarity index 100% rename from bindings/python/utils/std-map.hpp rename to include/pinocchio/bindings/python/utils/std-map.hpp diff --git a/bindings/python/utils/std-vector.hpp b/include/pinocchio/bindings/python/utils/std-vector.hpp similarity index 100% rename from bindings/python/utils/std-vector.hpp rename to include/pinocchio/bindings/python/utils/std-vector.hpp diff --git a/bindings/python/utils/version.hpp b/include/pinocchio/bindings/python/utils/version.hpp similarity index 100% rename from bindings/python/utils/version.hpp rename to include/pinocchio/bindings/python/utils/version.hpp diff --git a/src/codegen/code-generator-algo.hpp b/include/pinocchio/codegen/code-generator-algo.hpp similarity index 100% rename from src/codegen/code-generator-algo.hpp rename to include/pinocchio/codegen/code-generator-algo.hpp diff --git a/src/codegen/code-generator-base.hpp b/include/pinocchio/codegen/code-generator-base.hpp similarity index 100% rename from src/codegen/code-generator-base.hpp rename to include/pinocchio/codegen/code-generator-base.hpp diff --git a/src/codegen/cppadcg.hpp b/include/pinocchio/codegen/cppadcg.hpp similarity index 100% rename from src/codegen/cppadcg.hpp rename to include/pinocchio/codegen/cppadcg.hpp diff --git a/src/container/aligned-vector.hpp b/include/pinocchio/container/aligned-vector.hpp similarity index 100% rename from src/container/aligned-vector.hpp rename to include/pinocchio/container/aligned-vector.hpp diff --git a/src/container/boost-container-limits.hpp b/include/pinocchio/container/boost-container-limits.hpp similarity index 100% rename from src/container/boost-container-limits.hpp rename to include/pinocchio/container/boost-container-limits.hpp diff --git a/src/core/binary-op.hpp b/include/pinocchio/core/binary-op.hpp similarity index 100% rename from src/core/binary-op.hpp rename to include/pinocchio/core/binary-op.hpp diff --git a/src/core/unary-op.hpp b/include/pinocchio/core/unary-op.hpp similarity index 100% rename from src/core/unary-op.hpp rename to include/pinocchio/core/unary-op.hpp diff --git a/src/deprecated-macros.hpp b/include/pinocchio/deprecated-macros.hpp similarity index 100% rename from src/deprecated-macros.hpp rename to include/pinocchio/deprecated-macros.hpp diff --git a/src/deprecated-namespaces.hpp b/include/pinocchio/deprecated-namespaces.hpp similarity index 100% rename from src/deprecated-namespaces.hpp rename to include/pinocchio/deprecated-namespaces.hpp diff --git a/src/deprecation.hpp b/include/pinocchio/deprecation.hpp similarity index 100% rename from src/deprecation.hpp rename to include/pinocchio/deprecation.hpp diff --git a/src/eigen-macros.hpp b/include/pinocchio/eigen-macros.hpp similarity index 100% rename from src/eigen-macros.hpp rename to include/pinocchio/eigen-macros.hpp diff --git a/src/fwd.hpp b/include/pinocchio/fwd.hpp similarity index 100% rename from src/fwd.hpp rename to include/pinocchio/fwd.hpp diff --git a/src/macros.hpp b/include/pinocchio/macros.hpp similarity index 100% rename from src/macros.hpp rename to include/pinocchio/macros.hpp diff --git a/src/math/casadi.hpp b/include/pinocchio/math/casadi.hpp similarity index 100% rename from src/math/casadi.hpp rename to include/pinocchio/math/casadi.hpp diff --git a/src/math/comparison-operators.hpp b/include/pinocchio/math/comparison-operators.hpp similarity index 100% rename from src/math/comparison-operators.hpp rename to include/pinocchio/math/comparison-operators.hpp diff --git a/src/math/cppad.hpp b/include/pinocchio/math/cppad.hpp similarity index 100% rename from src/math/cppad.hpp rename to include/pinocchio/math/cppad.hpp diff --git a/src/math/cppadcg.hpp b/include/pinocchio/math/cppadcg.hpp similarity index 100% rename from src/math/cppadcg.hpp rename to include/pinocchio/math/cppadcg.hpp diff --git a/src/math/fwd.hpp b/include/pinocchio/math/fwd.hpp similarity index 100% rename from src/math/fwd.hpp rename to include/pinocchio/math/fwd.hpp diff --git a/src/math/matrix-block.hpp b/include/pinocchio/math/matrix-block.hpp similarity index 100% rename from src/math/matrix-block.hpp rename to include/pinocchio/math/matrix-block.hpp diff --git a/src/math/matrix.hpp b/include/pinocchio/math/matrix.hpp similarity index 100% rename from src/math/matrix.hpp rename to include/pinocchio/math/matrix.hpp diff --git a/src/math/multiprecision-mpfr.hpp b/include/pinocchio/math/multiprecision-mpfr.hpp similarity index 100% rename from src/math/multiprecision-mpfr.hpp rename to include/pinocchio/math/multiprecision-mpfr.hpp diff --git a/src/math/multiprecision.hpp b/include/pinocchio/math/multiprecision.hpp similarity index 100% rename from src/math/multiprecision.hpp rename to include/pinocchio/math/multiprecision.hpp diff --git a/src/math/quaternion.hpp b/include/pinocchio/math/quaternion.hpp similarity index 100% rename from src/math/quaternion.hpp rename to include/pinocchio/math/quaternion.hpp diff --git a/src/math/rotation.hpp b/include/pinocchio/math/rotation.hpp similarity index 100% rename from src/math/rotation.hpp rename to include/pinocchio/math/rotation.hpp diff --git a/src/math/rpy.hpp b/include/pinocchio/math/rpy.hpp similarity index 100% rename from src/math/rpy.hpp rename to include/pinocchio/math/rpy.hpp diff --git a/src/math/rpy.hxx b/include/pinocchio/math/rpy.hxx similarity index 100% rename from src/math/rpy.hxx rename to include/pinocchio/math/rpy.hxx diff --git a/src/math/sign.hpp b/include/pinocchio/math/sign.hpp similarity index 100% rename from src/math/sign.hpp rename to include/pinocchio/math/sign.hpp diff --git a/src/math/sincos.hpp b/include/pinocchio/math/sincos.hpp similarity index 100% rename from src/math/sincos.hpp rename to include/pinocchio/math/sincos.hpp diff --git a/src/math/taylor-expansion.hpp b/include/pinocchio/math/taylor-expansion.hpp similarity index 100% rename from src/math/taylor-expansion.hpp rename to include/pinocchio/math/taylor-expansion.hpp diff --git a/src/math/tensor.hpp b/include/pinocchio/math/tensor.hpp similarity index 100% rename from src/math/tensor.hpp rename to include/pinocchio/math/tensor.hpp diff --git a/src/multibody/constraint-base.hpp b/include/pinocchio/multibody/constraint-base.hpp similarity index 100% rename from src/multibody/constraint-base.hpp rename to include/pinocchio/multibody/constraint-base.hpp diff --git a/src/multibody/constraint-generic.hpp b/include/pinocchio/multibody/constraint-generic.hpp similarity index 100% rename from src/multibody/constraint-generic.hpp rename to include/pinocchio/multibody/constraint-generic.hpp diff --git a/src/multibody/constraint.hpp b/include/pinocchio/multibody/constraint.hpp similarity index 100% rename from src/multibody/constraint.hpp rename to include/pinocchio/multibody/constraint.hpp diff --git a/src/multibody/data.hpp b/include/pinocchio/multibody/data.hpp similarity index 100% rename from src/multibody/data.hpp rename to include/pinocchio/multibody/data.hpp diff --git a/src/multibody/data.hxx b/include/pinocchio/multibody/data.hxx similarity index 100% rename from src/multibody/data.hxx rename to include/pinocchio/multibody/data.hxx diff --git a/src/multibody/fcl.hpp b/include/pinocchio/multibody/fcl.hpp similarity index 100% rename from src/multibody/fcl.hpp rename to include/pinocchio/multibody/fcl.hpp diff --git a/src/multibody/fcl.hxx b/include/pinocchio/multibody/fcl.hxx similarity index 100% rename from src/multibody/fcl.hxx rename to include/pinocchio/multibody/fcl.hxx diff --git a/src/multibody/force-set.hpp b/include/pinocchio/multibody/force-set.hpp similarity index 100% rename from src/multibody/force-set.hpp rename to include/pinocchio/multibody/force-set.hpp diff --git a/src/multibody/frame.hpp b/include/pinocchio/multibody/frame.hpp similarity index 100% rename from src/multibody/frame.hpp rename to include/pinocchio/multibody/frame.hpp diff --git a/src/multibody/fwd.hpp b/include/pinocchio/multibody/fwd.hpp similarity index 100% rename from src/multibody/fwd.hpp rename to include/pinocchio/multibody/fwd.hpp diff --git a/src/multibody/geometry.hpp b/include/pinocchio/multibody/geometry.hpp similarity index 100% rename from src/multibody/geometry.hpp rename to include/pinocchio/multibody/geometry.hpp diff --git a/src/multibody/geometry.hxx b/include/pinocchio/multibody/geometry.hxx similarity index 100% rename from src/multibody/geometry.hxx rename to include/pinocchio/multibody/geometry.hxx diff --git a/src/multibody/joint/fwd.hpp b/include/pinocchio/multibody/joint/fwd.hpp similarity index 100% rename from src/multibody/joint/fwd.hpp rename to include/pinocchio/multibody/joint/fwd.hpp diff --git a/src/multibody/joint/joint-base.hpp b/include/pinocchio/multibody/joint/joint-base.hpp similarity index 100% rename from src/multibody/joint/joint-base.hpp rename to include/pinocchio/multibody/joint/joint-base.hpp diff --git a/src/multibody/joint/joint-basic-visitors.hpp b/include/pinocchio/multibody/joint/joint-basic-visitors.hpp similarity index 100% rename from src/multibody/joint/joint-basic-visitors.hpp rename to include/pinocchio/multibody/joint/joint-basic-visitors.hpp diff --git a/src/multibody/joint/joint-basic-visitors.hxx b/include/pinocchio/multibody/joint/joint-basic-visitors.hxx similarity index 100% rename from src/multibody/joint/joint-basic-visitors.hxx rename to include/pinocchio/multibody/joint/joint-basic-visitors.hxx diff --git a/src/multibody/joint/joint-collection.hpp b/include/pinocchio/multibody/joint/joint-collection.hpp similarity index 100% rename from src/multibody/joint/joint-collection.hpp rename to include/pinocchio/multibody/joint/joint-collection.hpp diff --git a/src/multibody/joint/joint-common-operations.hpp b/include/pinocchio/multibody/joint/joint-common-operations.hpp similarity index 100% rename from src/multibody/joint/joint-common-operations.hpp rename to include/pinocchio/multibody/joint/joint-common-operations.hpp diff --git a/src/multibody/joint/joint-composite.hpp b/include/pinocchio/multibody/joint/joint-composite.hpp similarity index 100% rename from src/multibody/joint/joint-composite.hpp rename to include/pinocchio/multibody/joint/joint-composite.hpp diff --git a/src/multibody/joint/joint-composite.hxx b/include/pinocchio/multibody/joint/joint-composite.hxx similarity index 100% rename from src/multibody/joint/joint-composite.hxx rename to include/pinocchio/multibody/joint/joint-composite.hxx diff --git a/src/multibody/joint/joint-data-base.hpp b/include/pinocchio/multibody/joint/joint-data-base.hpp similarity index 100% rename from src/multibody/joint/joint-data-base.hpp rename to include/pinocchio/multibody/joint/joint-data-base.hpp diff --git a/src/multibody/joint/joint-free-flyer.hpp b/include/pinocchio/multibody/joint/joint-free-flyer.hpp similarity index 100% rename from src/multibody/joint/joint-free-flyer.hpp rename to include/pinocchio/multibody/joint/joint-free-flyer.hpp diff --git a/src/multibody/joint/joint-generic.hpp b/include/pinocchio/multibody/joint/joint-generic.hpp similarity index 100% rename from src/multibody/joint/joint-generic.hpp rename to include/pinocchio/multibody/joint/joint-generic.hpp diff --git a/src/multibody/joint/joint-mimic.hpp b/include/pinocchio/multibody/joint/joint-mimic.hpp similarity index 100% rename from src/multibody/joint/joint-mimic.hpp rename to include/pinocchio/multibody/joint/joint-mimic.hpp diff --git a/src/multibody/joint/joint-model-base.hpp b/include/pinocchio/multibody/joint/joint-model-base.hpp similarity index 100% rename from src/multibody/joint/joint-model-base.hpp rename to include/pinocchio/multibody/joint/joint-model-base.hpp diff --git a/src/multibody/joint/joint-planar.hpp b/include/pinocchio/multibody/joint/joint-planar.hpp similarity index 100% rename from src/multibody/joint/joint-planar.hpp rename to include/pinocchio/multibody/joint/joint-planar.hpp diff --git a/src/multibody/joint/joint-prismatic-unaligned.hpp b/include/pinocchio/multibody/joint/joint-prismatic-unaligned.hpp similarity index 100% rename from src/multibody/joint/joint-prismatic-unaligned.hpp rename to include/pinocchio/multibody/joint/joint-prismatic-unaligned.hpp diff --git a/src/multibody/joint/joint-prismatic.hpp b/include/pinocchio/multibody/joint/joint-prismatic.hpp similarity index 100% rename from src/multibody/joint/joint-prismatic.hpp rename to include/pinocchio/multibody/joint/joint-prismatic.hpp diff --git a/src/multibody/joint/joint-revolute-unaligned.hpp b/include/pinocchio/multibody/joint/joint-revolute-unaligned.hpp similarity index 100% rename from src/multibody/joint/joint-revolute-unaligned.hpp rename to include/pinocchio/multibody/joint/joint-revolute-unaligned.hpp diff --git a/src/multibody/joint/joint-revolute-unbounded-unaligned.hpp b/include/pinocchio/multibody/joint/joint-revolute-unbounded-unaligned.hpp similarity index 100% rename from src/multibody/joint/joint-revolute-unbounded-unaligned.hpp rename to include/pinocchio/multibody/joint/joint-revolute-unbounded-unaligned.hpp diff --git a/src/multibody/joint/joint-revolute-unbounded.hpp b/include/pinocchio/multibody/joint/joint-revolute-unbounded.hpp similarity index 100% rename from src/multibody/joint/joint-revolute-unbounded.hpp rename to include/pinocchio/multibody/joint/joint-revolute-unbounded.hpp diff --git a/src/multibody/joint/joint-revolute.hpp b/include/pinocchio/multibody/joint/joint-revolute.hpp similarity index 100% rename from src/multibody/joint/joint-revolute.hpp rename to include/pinocchio/multibody/joint/joint-revolute.hpp diff --git a/src/multibody/joint/joint-spherical-ZYX.hpp b/include/pinocchio/multibody/joint/joint-spherical-ZYX.hpp similarity index 100% rename from src/multibody/joint/joint-spherical-ZYX.hpp rename to include/pinocchio/multibody/joint/joint-spherical-ZYX.hpp diff --git a/src/multibody/joint/joint-spherical.hpp b/include/pinocchio/multibody/joint/joint-spherical.hpp similarity index 100% rename from src/multibody/joint/joint-spherical.hpp rename to include/pinocchio/multibody/joint/joint-spherical.hpp diff --git a/src/multibody/joint/joint-translation.hpp b/include/pinocchio/multibody/joint/joint-translation.hpp similarity index 100% rename from src/multibody/joint/joint-translation.hpp rename to include/pinocchio/multibody/joint/joint-translation.hpp diff --git a/src/multibody/joint/joints.hpp b/include/pinocchio/multibody/joint/joints.hpp similarity index 100% rename from src/multibody/joint/joints.hpp rename to include/pinocchio/multibody/joint/joints.hpp diff --git a/src/multibody/liegroup/cartesian-product-variant.hpp b/include/pinocchio/multibody/liegroup/cartesian-product-variant.hpp similarity index 100% rename from src/multibody/liegroup/cartesian-product-variant.hpp rename to include/pinocchio/multibody/liegroup/cartesian-product-variant.hpp diff --git a/src/multibody/liegroup/cartesian-product-variant.hxx b/include/pinocchio/multibody/liegroup/cartesian-product-variant.hxx similarity index 100% rename from src/multibody/liegroup/cartesian-product-variant.hxx rename to include/pinocchio/multibody/liegroup/cartesian-product-variant.hxx diff --git a/src/multibody/liegroup/cartesian-product.hpp b/include/pinocchio/multibody/liegroup/cartesian-product.hpp similarity index 100% rename from src/multibody/liegroup/cartesian-product.hpp rename to include/pinocchio/multibody/liegroup/cartesian-product.hpp diff --git a/src/multibody/liegroup/fwd.hpp b/include/pinocchio/multibody/liegroup/fwd.hpp similarity index 100% rename from src/multibody/liegroup/fwd.hpp rename to include/pinocchio/multibody/liegroup/fwd.hpp diff --git a/src/multibody/liegroup/liegroup-algo.hpp b/include/pinocchio/multibody/liegroup/liegroup-algo.hpp similarity index 100% rename from src/multibody/liegroup/liegroup-algo.hpp rename to include/pinocchio/multibody/liegroup/liegroup-algo.hpp diff --git a/src/multibody/liegroup/liegroup-algo.hxx b/include/pinocchio/multibody/liegroup/liegroup-algo.hxx similarity index 100% rename from src/multibody/liegroup/liegroup-algo.hxx rename to include/pinocchio/multibody/liegroup/liegroup-algo.hxx diff --git a/src/multibody/liegroup/liegroup-base.hpp b/include/pinocchio/multibody/liegroup/liegroup-base.hpp similarity index 100% rename from src/multibody/liegroup/liegroup-base.hpp rename to include/pinocchio/multibody/liegroup/liegroup-base.hpp diff --git a/src/multibody/liegroup/liegroup-base.hxx b/include/pinocchio/multibody/liegroup/liegroup-base.hxx similarity index 100% rename from src/multibody/liegroup/liegroup-base.hxx rename to include/pinocchio/multibody/liegroup/liegroup-base.hxx diff --git a/src/multibody/liegroup/liegroup-collection.hpp b/include/pinocchio/multibody/liegroup/liegroup-collection.hpp similarity index 100% rename from src/multibody/liegroup/liegroup-collection.hpp rename to include/pinocchio/multibody/liegroup/liegroup-collection.hpp diff --git a/src/multibody/liegroup/liegroup-generic.hpp b/include/pinocchio/multibody/liegroup/liegroup-generic.hpp similarity index 100% rename from src/multibody/liegroup/liegroup-generic.hpp rename to include/pinocchio/multibody/liegroup/liegroup-generic.hpp diff --git a/src/multibody/liegroup/liegroup-variant-visitors.hpp b/include/pinocchio/multibody/liegroup/liegroup-variant-visitors.hpp similarity index 100% rename from src/multibody/liegroup/liegroup-variant-visitors.hpp rename to include/pinocchio/multibody/liegroup/liegroup-variant-visitors.hpp diff --git a/src/multibody/liegroup/liegroup-variant-visitors.hxx b/include/pinocchio/multibody/liegroup/liegroup-variant-visitors.hxx similarity index 100% rename from src/multibody/liegroup/liegroup-variant-visitors.hxx rename to include/pinocchio/multibody/liegroup/liegroup-variant-visitors.hxx diff --git a/src/multibody/liegroup/liegroup.hpp b/include/pinocchio/multibody/liegroup/liegroup.hpp similarity index 100% rename from src/multibody/liegroup/liegroup.hpp rename to include/pinocchio/multibody/liegroup/liegroup.hpp diff --git a/src/multibody/liegroup/special-euclidean.hpp b/include/pinocchio/multibody/liegroup/special-euclidean.hpp similarity index 100% rename from src/multibody/liegroup/special-euclidean.hpp rename to include/pinocchio/multibody/liegroup/special-euclidean.hpp diff --git a/src/multibody/liegroup/special-orthogonal.hpp b/include/pinocchio/multibody/liegroup/special-orthogonal.hpp similarity index 100% rename from src/multibody/liegroup/special-orthogonal.hpp rename to include/pinocchio/multibody/liegroup/special-orthogonal.hpp diff --git a/src/multibody/liegroup/vector-space.hpp b/include/pinocchio/multibody/liegroup/vector-space.hpp similarity index 100% rename from src/multibody/liegroup/vector-space.hpp rename to include/pinocchio/multibody/liegroup/vector-space.hpp diff --git a/src/multibody/model.hpp b/include/pinocchio/multibody/model.hpp similarity index 100% rename from src/multibody/model.hpp rename to include/pinocchio/multibody/model.hpp diff --git a/src/multibody/model.hxx b/include/pinocchio/multibody/model.hxx similarity index 100% rename from src/multibody/model.hxx rename to include/pinocchio/multibody/model.hxx diff --git a/src/multibody/pool/geometry.hpp b/include/pinocchio/multibody/pool/geometry.hpp similarity index 100% rename from src/multibody/pool/geometry.hpp rename to include/pinocchio/multibody/pool/geometry.hpp diff --git a/src/multibody/pool/model.hpp b/include/pinocchio/multibody/pool/model.hpp similarity index 100% rename from src/multibody/pool/model.hpp rename to include/pinocchio/multibody/pool/model.hpp diff --git a/src/multibody/visitor.hpp b/include/pinocchio/multibody/visitor.hpp similarity index 100% rename from src/multibody/visitor.hpp rename to include/pinocchio/multibody/visitor.hpp diff --git a/src/multibody/visitor/fusion.hpp b/include/pinocchio/multibody/visitor/fusion.hpp similarity index 100% rename from src/multibody/visitor/fusion.hpp rename to include/pinocchio/multibody/visitor/fusion.hpp diff --git a/src/multibody/visitor/joint-binary-visitor.hpp b/include/pinocchio/multibody/visitor/joint-binary-visitor.hpp similarity index 100% rename from src/multibody/visitor/joint-binary-visitor.hpp rename to include/pinocchio/multibody/visitor/joint-binary-visitor.hpp diff --git a/src/multibody/visitor/joint-unary-visitor.hpp b/include/pinocchio/multibody/visitor/joint-unary-visitor.hpp similarity index 100% rename from src/multibody/visitor/joint-unary-visitor.hpp rename to include/pinocchio/multibody/visitor/joint-unary-visitor.hpp diff --git a/src/parsers/sample-models.hpp b/include/pinocchio/parsers/sample-models.hpp similarity index 100% rename from src/parsers/sample-models.hpp rename to include/pinocchio/parsers/sample-models.hpp diff --git a/src/parsers/sample-models.hxx b/include/pinocchio/parsers/sample-models.hxx similarity index 100% rename from src/parsers/sample-models.hxx rename to include/pinocchio/parsers/sample-models.hxx diff --git a/src/parsers/srdf.hpp b/include/pinocchio/parsers/srdf.hpp similarity index 100% rename from src/parsers/srdf.hpp rename to include/pinocchio/parsers/srdf.hpp diff --git a/src/parsers/srdf.hxx b/include/pinocchio/parsers/srdf.hxx similarity index 100% rename from src/parsers/srdf.hxx rename to include/pinocchio/parsers/srdf.hxx diff --git a/src/parsers/urdf.hpp b/include/pinocchio/parsers/urdf.hpp similarity index 100% rename from src/parsers/urdf.hpp rename to include/pinocchio/parsers/urdf.hpp diff --git a/src/parsers/urdf/geometry.hxx b/include/pinocchio/parsers/urdf/geometry.hxx similarity index 100% rename from src/parsers/urdf/geometry.hxx rename to include/pinocchio/parsers/urdf/geometry.hxx diff --git a/src/parsers/urdf/model.hxx b/include/pinocchio/parsers/urdf/model.hxx similarity index 100% rename from src/parsers/urdf/model.hxx rename to include/pinocchio/parsers/urdf/model.hxx diff --git a/src/parsers/urdf/types.hpp b/include/pinocchio/parsers/urdf/types.hpp similarity index 100% rename from src/parsers/urdf/types.hpp rename to include/pinocchio/parsers/urdf/types.hpp diff --git a/src/parsers/urdf/utils.hpp b/include/pinocchio/parsers/urdf/utils.hpp similarity index 100% rename from src/parsers/urdf/utils.hpp rename to include/pinocchio/parsers/urdf/utils.hpp diff --git a/src/parsers/utils.hpp b/include/pinocchio/parsers/utils.hpp similarity index 100% rename from src/parsers/utils.hpp rename to include/pinocchio/parsers/utils.hpp diff --git a/src/serialization/aligned-vector.hpp b/include/pinocchio/serialization/aligned-vector.hpp similarity index 100% rename from src/serialization/aligned-vector.hpp rename to include/pinocchio/serialization/aligned-vector.hpp diff --git a/src/serialization/archive.hpp b/include/pinocchio/serialization/archive.hpp similarity index 100% rename from src/serialization/archive.hpp rename to include/pinocchio/serialization/archive.hpp diff --git a/src/serialization/data.hpp b/include/pinocchio/serialization/data.hpp similarity index 100% rename from src/serialization/data.hpp rename to include/pinocchio/serialization/data.hpp diff --git a/src/serialization/eigen.hpp b/include/pinocchio/serialization/eigen.hpp similarity index 100% rename from src/serialization/eigen.hpp rename to include/pinocchio/serialization/eigen.hpp diff --git a/src/serialization/force.hpp b/include/pinocchio/serialization/force.hpp similarity index 100% rename from src/serialization/force.hpp rename to include/pinocchio/serialization/force.hpp diff --git a/src/serialization/frame.hpp b/include/pinocchio/serialization/frame.hpp similarity index 100% rename from src/serialization/frame.hpp rename to include/pinocchio/serialization/frame.hpp diff --git a/src/serialization/fwd.hpp b/include/pinocchio/serialization/fwd.hpp old mode 100755 new mode 100644 similarity index 100% rename from src/serialization/fwd.hpp rename to include/pinocchio/serialization/fwd.hpp diff --git a/src/serialization/geometry.hpp b/include/pinocchio/serialization/geometry.hpp similarity index 100% rename from src/serialization/geometry.hpp rename to include/pinocchio/serialization/geometry.hpp diff --git a/src/serialization/inertia.hpp b/include/pinocchio/serialization/inertia.hpp similarity index 100% rename from src/serialization/inertia.hpp rename to include/pinocchio/serialization/inertia.hpp diff --git a/src/serialization/joints-constraint.hpp b/include/pinocchio/serialization/joints-constraint.hpp similarity index 100% rename from src/serialization/joints-constraint.hpp rename to include/pinocchio/serialization/joints-constraint.hpp diff --git a/src/serialization/joints-data.hpp b/include/pinocchio/serialization/joints-data.hpp similarity index 100% rename from src/serialization/joints-data.hpp rename to include/pinocchio/serialization/joints-data.hpp diff --git a/src/serialization/joints-model.hpp b/include/pinocchio/serialization/joints-model.hpp similarity index 100% rename from src/serialization/joints-model.hpp rename to include/pinocchio/serialization/joints-model.hpp diff --git a/src/serialization/joints-motion.hpp b/include/pinocchio/serialization/joints-motion.hpp similarity index 100% rename from src/serialization/joints-motion.hpp rename to include/pinocchio/serialization/joints-motion.hpp diff --git a/src/serialization/joints-transform.hpp b/include/pinocchio/serialization/joints-transform.hpp similarity index 100% rename from src/serialization/joints-transform.hpp rename to include/pinocchio/serialization/joints-transform.hpp diff --git a/src/serialization/joints.hpp b/include/pinocchio/serialization/joints.hpp similarity index 100% rename from src/serialization/joints.hpp rename to include/pinocchio/serialization/joints.hpp diff --git a/src/serialization/model.hpp b/include/pinocchio/serialization/model.hpp similarity index 100% rename from src/serialization/model.hpp rename to include/pinocchio/serialization/model.hpp diff --git a/src/serialization/motion.hpp b/include/pinocchio/serialization/motion.hpp similarity index 100% rename from src/serialization/motion.hpp rename to include/pinocchio/serialization/motion.hpp diff --git a/src/serialization/se3.hpp b/include/pinocchio/serialization/se3.hpp similarity index 100% rename from src/serialization/se3.hpp rename to include/pinocchio/serialization/se3.hpp diff --git a/src/serialization/serializable.hpp b/include/pinocchio/serialization/serializable.hpp similarity index 100% rename from src/serialization/serializable.hpp rename to include/pinocchio/serialization/serializable.hpp diff --git a/src/serialization/spatial.hpp b/include/pinocchio/serialization/spatial.hpp similarity index 100% rename from src/serialization/spatial.hpp rename to include/pinocchio/serialization/spatial.hpp diff --git a/src/serialization/static-buffer.hpp b/include/pinocchio/serialization/static-buffer.hpp similarity index 100% rename from src/serialization/static-buffer.hpp rename to include/pinocchio/serialization/static-buffer.hpp diff --git a/src/serialization/symmetric3.hpp b/include/pinocchio/serialization/symmetric3.hpp similarity index 100% rename from src/serialization/symmetric3.hpp rename to include/pinocchio/serialization/symmetric3.hpp diff --git a/src/serialization/vector.hpp b/include/pinocchio/serialization/vector.hpp similarity index 100% rename from src/serialization/vector.hpp rename to include/pinocchio/serialization/vector.hpp diff --git a/src/spatial/act-on-set.hpp b/include/pinocchio/spatial/act-on-set.hpp similarity index 100% rename from src/spatial/act-on-set.hpp rename to include/pinocchio/spatial/act-on-set.hpp diff --git a/src/spatial/act-on-set.hxx b/include/pinocchio/spatial/act-on-set.hxx similarity index 100% rename from src/spatial/act-on-set.hxx rename to include/pinocchio/spatial/act-on-set.hxx diff --git a/src/spatial/cartesian-axis.hpp b/include/pinocchio/spatial/cartesian-axis.hpp similarity index 100% rename from src/spatial/cartesian-axis.hpp rename to include/pinocchio/spatial/cartesian-axis.hpp diff --git a/src/spatial/explog-quaternion.hpp b/include/pinocchio/spatial/explog-quaternion.hpp similarity index 100% rename from src/spatial/explog-quaternion.hpp rename to include/pinocchio/spatial/explog-quaternion.hpp diff --git a/src/spatial/explog.hpp b/include/pinocchio/spatial/explog.hpp similarity index 100% rename from src/spatial/explog.hpp rename to include/pinocchio/spatial/explog.hpp diff --git a/src/spatial/fcl-pinocchio-conversions.hpp b/include/pinocchio/spatial/fcl-pinocchio-conversions.hpp similarity index 100% rename from src/spatial/fcl-pinocchio-conversions.hpp rename to include/pinocchio/spatial/fcl-pinocchio-conversions.hpp diff --git a/src/spatial/force-base.hpp b/include/pinocchio/spatial/force-base.hpp similarity index 100% rename from src/spatial/force-base.hpp rename to include/pinocchio/spatial/force-base.hpp diff --git a/src/spatial/force-dense.hpp b/include/pinocchio/spatial/force-dense.hpp similarity index 100% rename from src/spatial/force-dense.hpp rename to include/pinocchio/spatial/force-dense.hpp diff --git a/src/spatial/force-ref.hpp b/include/pinocchio/spatial/force-ref.hpp similarity index 100% rename from src/spatial/force-ref.hpp rename to include/pinocchio/spatial/force-ref.hpp diff --git a/src/spatial/force-tpl.hpp b/include/pinocchio/spatial/force-tpl.hpp similarity index 100% rename from src/spatial/force-tpl.hpp rename to include/pinocchio/spatial/force-tpl.hpp diff --git a/src/spatial/force.hpp b/include/pinocchio/spatial/force.hpp similarity index 100% rename from src/spatial/force.hpp rename to include/pinocchio/spatial/force.hpp diff --git a/src/spatial/fwd.hpp b/include/pinocchio/spatial/fwd.hpp similarity index 100% rename from src/spatial/fwd.hpp rename to include/pinocchio/spatial/fwd.hpp diff --git a/src/spatial/inertia.hpp b/include/pinocchio/spatial/inertia.hpp similarity index 100% rename from src/spatial/inertia.hpp rename to include/pinocchio/spatial/inertia.hpp diff --git a/src/spatial/log.hpp b/include/pinocchio/spatial/log.hpp similarity index 100% rename from src/spatial/log.hpp rename to include/pinocchio/spatial/log.hpp diff --git a/src/spatial/log.hxx b/include/pinocchio/spatial/log.hxx similarity index 100% rename from src/spatial/log.hxx rename to include/pinocchio/spatial/log.hxx diff --git a/src/spatial/motion-base.hpp b/include/pinocchio/spatial/motion-base.hpp similarity index 100% rename from src/spatial/motion-base.hpp rename to include/pinocchio/spatial/motion-base.hpp diff --git a/src/spatial/motion-dense.hpp b/include/pinocchio/spatial/motion-dense.hpp similarity index 100% rename from src/spatial/motion-dense.hpp rename to include/pinocchio/spatial/motion-dense.hpp diff --git a/src/spatial/motion-ref.hpp b/include/pinocchio/spatial/motion-ref.hpp similarity index 100% rename from src/spatial/motion-ref.hpp rename to include/pinocchio/spatial/motion-ref.hpp diff --git a/src/spatial/motion-tpl.hpp b/include/pinocchio/spatial/motion-tpl.hpp similarity index 100% rename from src/spatial/motion-tpl.hpp rename to include/pinocchio/spatial/motion-tpl.hpp diff --git a/src/spatial/motion-zero.hpp b/include/pinocchio/spatial/motion-zero.hpp similarity index 100% rename from src/spatial/motion-zero.hpp rename to include/pinocchio/spatial/motion-zero.hpp diff --git a/src/spatial/motion.hpp b/include/pinocchio/spatial/motion.hpp similarity index 100% rename from src/spatial/motion.hpp rename to include/pinocchio/spatial/motion.hpp diff --git a/src/spatial/se3-base.hpp b/include/pinocchio/spatial/se3-base.hpp similarity index 100% rename from src/spatial/se3-base.hpp rename to include/pinocchio/spatial/se3-base.hpp diff --git a/src/spatial/se3-tpl.hpp b/include/pinocchio/spatial/se3-tpl.hpp similarity index 100% rename from src/spatial/se3-tpl.hpp rename to include/pinocchio/spatial/se3-tpl.hpp diff --git a/src/spatial/se3.hpp b/include/pinocchio/spatial/se3.hpp similarity index 100% rename from src/spatial/se3.hpp rename to include/pinocchio/spatial/se3.hpp diff --git a/src/spatial/skew.hpp b/include/pinocchio/spatial/skew.hpp similarity index 100% rename from src/spatial/skew.hpp rename to include/pinocchio/spatial/skew.hpp diff --git a/src/spatial/spatial-axis.hpp b/include/pinocchio/spatial/spatial-axis.hpp similarity index 100% rename from src/spatial/spatial-axis.hpp rename to include/pinocchio/spatial/spatial-axis.hpp diff --git a/src/spatial/symmetric3.hpp b/include/pinocchio/spatial/symmetric3.hpp similarity index 100% rename from src/spatial/symmetric3.hpp rename to include/pinocchio/spatial/symmetric3.hpp diff --git a/src/utils/axis-label.hpp b/include/pinocchio/utils/axis-label.hpp similarity index 100% rename from src/utils/axis-label.hpp rename to include/pinocchio/utils/axis-label.hpp diff --git a/src/utils/cast.hpp b/include/pinocchio/utils/cast.hpp similarity index 100% rename from src/utils/cast.hpp rename to include/pinocchio/utils/cast.hpp diff --git a/src/utils/eigen-fix.hpp b/include/pinocchio/utils/eigen-fix.hpp similarity index 100% rename from src/utils/eigen-fix.hpp rename to include/pinocchio/utils/eigen-fix.hpp diff --git a/src/utils/file-explorer.hpp b/include/pinocchio/utils/file-explorer.hpp similarity index 100% rename from src/utils/file-explorer.hpp rename to include/pinocchio/utils/file-explorer.hpp diff --git a/src/utils/helpers.hpp b/include/pinocchio/utils/helpers.hpp similarity index 100% rename from src/utils/helpers.hpp rename to include/pinocchio/utils/helpers.hpp diff --git a/src/utils/openmp.hpp b/include/pinocchio/utils/openmp.hpp similarity index 100% rename from src/utils/openmp.hpp rename to include/pinocchio/utils/openmp.hpp diff --git a/src/utils/static-if.hpp b/include/pinocchio/utils/static-if.hpp similarity index 100% rename from src/utils/static-if.hpp rename to include/pinocchio/utils/static-if.hpp diff --git a/src/utils/string-generator.hpp b/include/pinocchio/utils/string-generator.hpp similarity index 100% rename from src/utils/string-generator.hpp rename to include/pinocchio/utils/string-generator.hpp diff --git a/src/utils/timer.hpp b/include/pinocchio/utils/timer.hpp similarity index 100% rename from src/utils/timer.hpp rename to include/pinocchio/utils/timer.hpp diff --git a/src/utils/version.hpp b/include/pinocchio/utils/version.hpp similarity index 100% rename from src/utils/version.hpp rename to include/pinocchio/utils/version.hpp From b2c53471d13e318db60ef96a58a95d1b70f7d909 Mon Sep 17 00:00:00 2001 From: Joris Vaillant Date: Wed, 18 Oct 2023 18:01:40 +0200 Subject: [PATCH 02/13] [WIP] Patch CMakeLists.txt to use the new hierarchy Header installation is broken --- CMakeLists.txt | 80 ------------------------ bindings/python/CMakeLists.txt | 62 ++++++------------ bindings/python/parsers/python/model.cpp | 2 +- src/CMakeLists.txt | 31 +++++++++ unittest/python_parser.cpp | 2 +- 5 files changed, 51 insertions(+), 126 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 850cee8650..2a74952f3f 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -49,12 +49,6 @@ IF(CMAKE_VERSION VERSION_GREATER "3.12") CMAKE_POLICY(SET CMP0074 NEW) ENDIF() -IF(WIN32) - SET(LINK copy_if_different) -ELSE(WIN32) - SET(LINK create_symlink) -ENDIF(WIN32) - # --- OPTIONS ---------------------------------------- OPTION(BUILD_BENCHMARK "Build the benchmarks" OFF) OPTION(BUILD_UTILS "Build the utils" OFF) @@ -210,80 +204,6 @@ ENDIF(BUILD_WITH_HPP_FCL_SUPPORT) ADD_DEFINITIONS(-DBOOST_MPL_LIMIT_LIST_SIZE=30) ADD_DEFINITIONS(-DBOOST_MPL_LIMIT_VECTOR_SIZE=30) -# ---------------------------------------------------- -# --- INCLUDE ---------------------------------------- -# ---------------------------------------------------- -FILE(GLOB_RECURSE HEADERS - ${PROJECT_SOURCE_DIR}/src/*.hpp - ${PROJECT_SOURCE_DIR}/src/*.hxx - ) - -IF(NOT BUILD_WITH_URDF_SUPPORT) - LIST(REMOVE_ITEM HEADERS - ${PROJECT_SOURCE_DIR}/src/parsers/urdf.hpp - ${PROJECT_SOURCE_DIR}/src/parsers/urdf/model.hxx - ${PROJECT_SOURCE_DIR}/src/parsers/urdf/geometry.hxx - ${PROJECT_SOURCE_DIR}/src/parsers/urdf/utils.hpp - ${PROJECT_SOURCE_DIR}/src/parsers/urdf/types.hpp - ) -ENDIF(NOT BUILD_WITH_URDF_SUPPORT) - -IF(NOT BUILD_WITH_HPP_FCL_SUPPORT) - LIST(REMOVE_ITEM HEADERS - ${PROJECT_SOURCE_DIR}/src/spatial/fcl-pinocchio-conversions.hpp - ) -ENDIF(NOT BUILD_WITH_HPP_FCL_SUPPORT) - -LIST(APPEND HEADERS macros.hpp) - -MAKE_DIRECTORY("${${PROJECT_NAME}_BINARY_DIR}/include/pinocchio") -MAKE_DIRECTORY("${${PROJECT_NAME}_BINARY_DIR}/include/pinocchio/core") -MAKE_DIRECTORY("${${PROJECT_NAME}_BINARY_DIR}/include/pinocchio/math") -MAKE_DIRECTORY("${${PROJECT_NAME}_BINARY_DIR}/include/pinocchio/spatial") -MAKE_DIRECTORY("${${PROJECT_NAME}_BINARY_DIR}/include/pinocchio/multibody") -MAKE_DIRECTORY("${${PROJECT_NAME}_BINARY_DIR}/include/pinocchio/multibody/joint") -MAKE_DIRECTORY("${${PROJECT_NAME}_BINARY_DIR}/include/pinocchio/multibody/liegroup") -MAKE_DIRECTORY("${${PROJECT_NAME}_BINARY_DIR}/include/pinocchio/multibody/pool") -MAKE_DIRECTORY("${${PROJECT_NAME}_BINARY_DIR}/include/pinocchio/multibody/visitor") -MAKE_DIRECTORY("${${PROJECT_NAME}_BINARY_DIR}/include/pinocchio/parsers") -MAKE_DIRECTORY("${${PROJECT_NAME}_BINARY_DIR}/include/pinocchio/parsers/urdf") -MAKE_DIRECTORY("${${PROJECT_NAME}_BINARY_DIR}/include/pinocchio/utils") -MAKE_DIRECTORY("${${PROJECT_NAME}_BINARY_DIR}/include/pinocchio/serialization") -MAKE_DIRECTORY("${${PROJECT_NAME}_BINARY_DIR}/include/pinocchio/algorithm") -MAKE_DIRECTORY("${${PROJECT_NAME}_BINARY_DIR}/include/pinocchio/algorithm/parallel") -MAKE_DIRECTORY("${${PROJECT_NAME}_BINARY_DIR}/include/pinocchio/container") -MAKE_DIRECTORY("${${PROJECT_NAME}_BINARY_DIR}/include/pinocchio/codegen") -MAKE_DIRECTORY("${${PROJECT_NAME}_BINARY_DIR}/include/pinocchio/autodiff") -MAKE_DIRECTORY("${${PROJECT_NAME}_BINARY_DIR}/include/pinocchio/autodiff/casadi") -MAKE_DIRECTORY("${${PROJECT_NAME}_BINARY_DIR}/include/pinocchio/autodiff/casadi/math") -MAKE_DIRECTORY("${${PROJECT_NAME}_BINARY_DIR}/include/pinocchio/autodiff/casadi/spatial") -MAKE_DIRECTORY("${${PROJECT_NAME}_BINARY_DIR}/include/pinocchio/autodiff/casadi/utils") -MAKE_DIRECTORY("${${PROJECT_NAME}_BINARY_DIR}/include/pinocchio/autodiff/cppad") -MAKE_DIRECTORY("${${PROJECT_NAME}_BINARY_DIR}/include/pinocchio/autodiff/cppad/spatial") -MAKE_DIRECTORY("${${PROJECT_NAME}_BINARY_DIR}/include/pinocchio/autodiff/cppad/math") -MAKE_DIRECTORY("${${PROJECT_NAME}_BINARY_DIR}/include/pinocchio/autodiff/cppad/algorithm") -MAKE_DIRECTORY("${${PROJECT_NAME}_BINARY_DIR}/include/pinocchio/autodiff/cppad/utils") - -SET(HEADERS_) -FOREACH(header ${HEADERS}) - STRING(REGEX REPLACE "${PROJECT_SOURCE_DIR}/src/" "" header ${header}) - LIST(APPEND HEADERS_ ${header}) - GET_FILENAME_COMPONENT(headerName ${header} NAME) - GET_FILENAME_COMPONENT(headerPath ${header} PATH) - EXECUTE_PROCESS(COMMAND ${CMAKE_COMMAND} -E ${LINK} - ${${PROJECT_NAME}_SOURCE_DIR}/src/${header} - ${${PROJECT_NAME}_BINARY_DIR}/include/${PROJECT_NAME}/${header}) - INSTALL(FILES ${${PROJECT_NAME}_SOURCE_DIR}/src/${header} - DESTINATION ${CMAKE_INSTALL_PREFIX}/include/${PROJECT_NAME}/${headerPath} - PERMISSIONS OWNER_READ GROUP_READ WORLD_READ OWNER_WRITE) -ENDFOREACH(header) -SET(HEADERS ${HEADERS_}) - -LIST(APPEND HEADERS - ${${PROJECT_NAME}_BINARY_DIR}/include/${PROJECT_NAME}/config.hpp - ${${PROJECT_NAME}_BINARY_DIR}/include/${PROJECT_NAME}/deprecated.hpp - ${${PROJECT_NAME}_BINARY_DIR}/include/${PROJECT_NAME}/warning.hpp) - # --- MAIN LIBRARY ------------------------------------------------------------- ADD_SUBDIRECTORY(src) diff --git a/bindings/python/CMakeLists.txt b/bindings/python/CMakeLists.txt index dd75d4eb02..e55db9bc31 100644 --- a/bindings/python/CMakeLists.txt +++ b/bindings/python/CMakeLists.txt @@ -6,19 +6,6 @@ include(${JRL_CMAKE_MODULES}/python-helpers.cmake) # --- MACROS --- # -MACRO(SYMLINK_AND_INSTALL_HEADERS HEADERS SUBPATH) - FOREACH(header ${HEADERS}) - GET_FILENAME_COMPONENT(headerName ${header} NAME) - GET_FILENAME_COMPONENT(headerPath ${header} PATH) - EXECUTE_PROCESS(COMMAND ${CMAKE_COMMAND} -E ${LINK} - ${CMAKE_CURRENT_SOURCE_DIR}/${header} - ${${PROJECT_NAME}_BINARY_DIR}/include/${PROJECT_NAME}/${SUBPATH}/${header}) - - INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/${header} - DESTINATION ${CMAKE_INSTALL_PREFIX}/include/${PROJECT_NAME}/${SUBPATH}/${headerPath} - PERMISSIONS OWNER_READ GROUP_READ WORLD_READ OWNER_WRITE) - ENDFOREACH(header) -ENDMACRO(SYMLINK_AND_INSTALL_HEADERS HEADERS SUBPATH) FUNCTION(REMOVE_PATH_FROM_LIST list_name path_name dest_list) SET(list_name_) @@ -43,24 +30,26 @@ SET(PYWRAP ${PROJECT_NAME}_pywrap) SET(PYWRAP ${PYWRAP} PARENT_SCOPE) FILE(GLOB_RECURSE ${PROJECT_NAME}_PYTHON_HEADERS - ${CMAKE_CURRENT_SOURCE_DIR}/*.hpp - ) + ${PROJECT_SOURCE_DIR}/include/${PROJECT_NAME}/bindings/*.hpp + ${PROJECT_SOURCE_DIR}/include/${PROJECT_NAME}/bindings/*.hxx + ) FILE(GLOB_RECURSE ${PROJECT_NAME}_PYTHON_SOURCES - ${CMAKE_CURRENT_SOURCE_DIR}/*.cpp - ) + RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/*.cpp + ) -REMOVE_PATH_FROM_LIST("${${PROJECT_NAME}_PYTHON_HEADERS}" "${CMAKE_CURRENT_SOURCE_DIR}/" ${PROJECT_NAME}_PYTHON_HEADERS) -REMOVE_PATH_FROM_LIST("${${PROJECT_NAME}_PYTHON_SOURCES}" "${CMAKE_CURRENT_SOURCE_DIR}/" ${PROJECT_NAME}_PYTHON_SOURCES) +# REMOVE_PATH_FROM_LIST("${${PROJECT_NAME}_PYTHON_HEADERS}" "${CMAKE_CURRENT_SOURCE_DIR}/" ${PROJECT_NAME}_PYTHON_HEADERS) +# REMOVE_PATH_FROM_LIST("${${PROJECT_NAME}_PYTHON_SOURCES}" "${CMAKE_CURRENT_SOURCE_DIR}/" ${PROJECT_NAME}_PYTHON_SOURCES) # Parser for Python model IF(BUILD_WITH_LIBPYTHON) SET(${PROJECT_NAME}_PARSER_PYTHON_HEADERS - parsers/python.hpp + ${PROJECT_SOURCE_DIR}/include/${PROJECT_NAME}/bindings/parsers/python.hpp ) ELSE(BUILD_WITH_LIBPYTHON) LIST(REMOVE_ITEM ${PROJECT_NAME}_PYTHON_HEADERS - parsers/python.hpp + ${PROJECT_SOURCE_DIR}/include/${PROJECT_NAME}/bindings/parsers/python.hpp ) LIST(REMOVE_ITEM ${PROJECT_NAME}_PYTHON_SOURCES parsers/python/model.cpp @@ -70,7 +59,7 @@ ENDIF(BUILD_WITH_LIBPYTHON) # Python exposition of FCL IF(NOT BUILD_WITH_HPP_FCL_PYTHON_BINDINGS) LIST(REMOVE_ITEM ${PROJECT_NAME}_PYTHON_HEADERS - multibody/fcl/transform.hpp + ${PROJECT_SOURCE_DIR}/include/${PROJECT_NAME}/bindings/multibody/fcl/transform.hpp ) LIST(REMOVE_ITEM ${PROJECT_NAME}_PYTHON_SOURCES multibody/fcl/expose-fcl.cpp @@ -78,9 +67,9 @@ IF(NOT BUILD_WITH_HPP_FCL_PYTHON_BINDINGS) ENDIF(NOT BUILD_WITH_HPP_FCL_PYTHON_BINDINGS) IF(NOT BUILD_WITH_OPENMP_SUPPORT) - LIST_FILTER("${${PROJECT_NAME}_PYTHON_HEADERS}" "^multibody/pool" ${PROJECT_NAME}_PYTHON_HEADERS) + LIST_FILTER("${${PROJECT_NAME}_PYTHON_HEADERS}" ".*/include/${PROJECT_NAME}/bindings/python/multibody/pool" ${PROJECT_NAME}_PYTHON_HEADERS) LIST_FILTER("${${PROJECT_NAME}_PYTHON_SOURCES}" "^multibody/pool" ${PROJECT_NAME}_PYTHON_SOURCES) - LIST_FILTER("${${PROJECT_NAME}_PYTHON_HEADERS}" "^algorithm/parallel" ${PROJECT_NAME}_PYTHON_HEADERS) + LIST_FILTER("${${PROJECT_NAME}_PYTHON_HEADERS}" ".*/include/${PROJECT_NAME}/bindings/python/algorithm/parallel" ${PROJECT_NAME}_PYTHON_HEADERS) LIST_FILTER("${${PROJECT_NAME}_PYTHON_SOURCES}" "^algorithm/parallel" ${PROJECT_NAME}_PYTHON_SOURCES) #LIST(FILTER ${PROJECT_NAME}_PYTHON_HEADERS EXCLUDE REGEX "^multibody/pool") #LIST(FILTER ${PROJECT_NAME}_PYTHON_SOURCES EXCLUDE REGEX "^multibody/pool") @@ -88,7 +77,7 @@ IF(NOT BUILD_WITH_OPENMP_SUPPORT) #LIST(FILTER ${PROJECT_NAME}_PYTHON_SOURCES EXCLUDE REGEX "^algorithm/parallel") ELSE(NOT BUILD_WITH_OPENMP_SUPPORT) IF(NOT BUILD_WITH_HPP_FCL_SUPPORT) - LIST_FILTER("${${PROJECT_NAME}_PYTHON_HEADERS}" "^multibody/pool/geometry.hpp" ${PROJECT_NAME}_PYTHON_HEADERS) + LIST_FILTER("${${PROJECT_NAME}_PYTHON_HEADERS}" ".*/include/${PROJECT_NAME}/bindings/python/multibody/pool/geometry.hpp" ${PROJECT_NAME}_PYTHON_HEADERS) LIST_FILTER("${${PROJECT_NAME}_PYTHON_SOURCES}" "^algorithm/parallel/geometry.cpp" ${PROJECT_NAME}_PYTHON_SOURCES) #LIST(FILTER ${PROJECT_NAME}_PYTHON_HEADERS EXCLUDE REGEX "^multibody/pool/geometry.hpp") #LIST(FILTER ${PROJECT_NAME}_PYTHON_SOURCES EXCLUDE REGEX "^algorithm/parallel/geometry.cpp") @@ -97,28 +86,13 @@ ENDIF(NOT BUILD_WITH_OPENMP_SUPPORT) LIST(APPEND HEADERS ${${PROJECT_NAME}_PYTHON_HEADERS}) -# Headers of the Python bindings -MAKE_DIRECTORY("${${PROJECT_NAME}_BINARY_DIR}/include/pinocchio/bindings/python") -MAKE_DIRECTORY("${${PROJECT_NAME}_BINARY_DIR}/include/pinocchio/bindings/python/spatial") -MAKE_DIRECTORY("${${PROJECT_NAME}_BINARY_DIR}/include/pinocchio/bindings/python/multibody") -MAKE_DIRECTORY("${${PROJECT_NAME}_BINARY_DIR}/include/pinocchio/bindings/python/multibody/joint") -MAKE_DIRECTORY("${${PROJECT_NAME}_BINARY_DIR}/include/pinocchio/bindings/python/multibody/pool") -IF(BUILD_WITH_HPP_FCL_PYTHON_BINDINGS) - MAKE_DIRECTORY("${${PROJECT_NAME}_BINARY_DIR}/include/pinocchio/bindings/python/multibody/fcl") -ENDIF(BUILD_WITH_HPP_FCL_PYTHON_BINDINGS) -MAKE_DIRECTORY("${${PROJECT_NAME}_BINARY_DIR}/include/pinocchio/bindings/python/parsers") -MAKE_DIRECTORY("${${PROJECT_NAME}_BINARY_DIR}/include/pinocchio/bindings/python/serialization") -MAKE_DIRECTORY("${${PROJECT_NAME}_BINARY_DIR}/include/pinocchio/bindings/python/algorithm") -IF(BUILD_WITH_OPENMP_SUPPORT) - MAKE_DIRECTORY("${${PROJECT_NAME}_BINARY_DIR}/include/pinocchio/bindings/python/algorithm/parallel") -ENDIF(BUILD_WITH_OPENMP_SUPPORT) -MAKE_DIRECTORY("${${PROJECT_NAME}_BINARY_DIR}/include/pinocchio/bindings/python/utils") -SYMLINK_AND_INSTALL_HEADERS("${${PROJECT_NAME}_PYTHON_HEADERS}" "bindings/python") # Headers of the Python parser IF(BUILD_WITH_LIBPYTHON) - MAKE_DIRECTORY("${${PROJECT_NAME}_BINARY_DIR}/include/pinocchio/parsers/python") - SYMLINK_AND_INSTALL_HEADERS("${${PROJECT_NAME}_PARSER_PYTHON_HEADERS}" "") + # TODO + # INSTALL(FILES ${${PROJECT_NAME}_PARSER_PYTHON_HEADERS} + # DESTINATION ${CMAKE_INSTALL_PREFIX}/include/${PROJECT_NAME}/${SUBPATH}/${headerPath} + # PERMISSIONS OWNER_READ GROUP_READ WORLD_READ OWNER_WRITE) ENDIF(BUILD_WITH_LIBPYTHON) # --- COMPILE WRAPPER diff --git a/bindings/python/parsers/python/model.cpp b/bindings/python/parsers/python/model.cpp index 3757fc0315..31e5719899 100644 --- a/bindings/python/parsers/python/model.cpp +++ b/bindings/python/parsers/python/model.cpp @@ -2,7 +2,7 @@ // Copyright (c) 2016-2023 CNRS INRIA // -#include "pinocchio/parsers/python.hpp" +#include "pinocchio/bindings/python/parsers/python.hpp" #include #include diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 64f0461165..d24afe1468 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -3,12 +3,39 @@ # Copyright (c) 2015 Wandercraft, 86 rue de Paris 91400 Orsay, France. # +# ---------------------------------------------------- +# --- INCLUDE ---------------------------------------- +# ---------------------------------------------------- + +# Find all headers +FILE(GLOB_RECURSE HEADERS + ${PROJECT_SOURCE_DIR}/include/${PROJECT_NAME}/*.hpp + ${PROJECT_SOURCE_DIR}/include/${PROJECT_NAME}/*.hxx + ) + +# Remove bindings +LIST(FILTER HEADERS EXCLUDE REGEX "../include/${PROJECT_NAME}/bindings/.*") + +# Add generated headers +LIST(APPEND HEADERS + ${${PROJECT_NAME}_BINARY_DIR}/include/${PROJECT_NAME}/config.hpp + ${${PROJECT_NAME}_BINARY_DIR}/include/${PROJECT_NAME}/deprecated.hpp + ${${PROJECT_NAME}_BINARY_DIR}/include/${PROJECT_NAME}/warning.hpp) + IF(BUILD_WITH_URDF_SUPPORT) LIST(APPEND ${PROJECT_NAME}_SOURCES parsers/urdf/model.cpp parsers/urdf/geometry.cpp parsers/urdf/utils.cpp ) +ELSE(BUILD_WITH_URDF_SUPPORT) + LIST(REMOVE_ITEM HEADERS + ${PROJECT_SOURCE_DIR}/include/${PROJECT_NAME}/parsers/urdf.hpp + ${PROJECT_SOURCE_DIR}/include/${PROJECT_NAME}/parsers/urdf/model.hxx + ${PROJECT_SOURCE_DIR}/include/${PROJECT_NAME}/parsers/urdf/geometry.hxx + ${PROJECT_SOURCE_DIR}/include/${PROJECT_NAME}/parsers/urdf/utils.hpp + ${PROJECT_SOURCE_DIR}/include/${PROJECT_NAME}/parsers/urdf/types.hpp + ) ENDIF() LIST(APPEND ${PROJECT_NAME}_SOURCES utils/file-explorer.cpp) @@ -29,6 +56,10 @@ ADD_LIBRARY(${PROJECT_NAME}_headers INTERFACE) # Exclude parts from hppfcl which is not header only IF(BUILD_WITH_HPP_FCL_SUPPORT) LIST(REMOVE_ITEM CURRENT_COMPILE_DEFINITIONS PINOCCHIO_WITH_HPP_FCL) +ELSE(BUILD_WITH_HPP_FCL_SUPPORT) + LIST(REMOVE_ITEM HEADERS + ${PROJECT_SOURCE_DIR}/include/${PROJECT_NAME}/spatial/fcl-pinocchio-conversions.hpp + ) ENDIF(BUILD_WITH_HPP_FCL_SUPPORT) TARGET_COMPILE_DEFINITIONS(${PROJECT_NAME}_headers INTERFACE ${CURRENT_COMPILE_DEFINITIONS}) diff --git a/unittest/python_parser.cpp b/unittest/python_parser.cpp index dd74a88cca..8a47b3ec7c 100644 --- a/unittest/python_parser.cpp +++ b/unittest/python_parser.cpp @@ -6,7 +6,7 @@ #include "pinocchio/multibody/model.hpp" #include "pinocchio/multibody/data.hpp" -#include "pinocchio/parsers/python.hpp" +#include "pinocchio/bindings/python/parsers/python.hpp" #include From a426f583495622e5e6617e166cbb7e4edee13cc8 Mon Sep 17 00:00:00 2001 From: Joris Vaillant Date: Thu, 19 Oct 2023 11:49:49 +0200 Subject: [PATCH 03/13] [WIP] First step to have a working installation --- bindings/python/CMakeLists.txt | 65 +++++++++++++--------------------- src/CMakeLists.txt | 38 ++++++++++++++------ 2 files changed, 52 insertions(+), 51 deletions(-) diff --git a/bindings/python/CMakeLists.txt b/bindings/python/CMakeLists.txt index e55db9bc31..a72e8f29d7 100644 --- a/bindings/python/CMakeLists.txt +++ b/bindings/python/CMakeLists.txt @@ -5,31 +5,12 @@ include(${JRL_CMAKE_MODULES}/python-helpers.cmake) -# --- MACROS --- # - -FUNCTION(REMOVE_PATH_FROM_LIST list_name path_name dest_list) - SET(list_name_) - FOREACH(header ${list_name}) - STRING(REGEX REPLACE "${path_name}" "" header ${header}) - LIST(APPEND list_name_ ${header}) - ENDFOREACH(header ${list_name_}) - SET(${dest_list} ${list_name_} PARENT_SCOPE) -ENDFUNCTION(REMOVE_PATH_FROM_LIST) - -FUNCTION(LIST_FILTER list regular_expression dest_list) - FOREACH(elt ${list}) - IF(${elt} MATCHES ${regular_expression}) - LIST(REMOVE_ITEM list ${elt}) - ENDIF() - ENDFOREACH(elt ${list}) - SET(${dest_list} ${list} PARENT_SCOPE) -ENDFUNCTION(LIST_FILTER) - # --- PYTHON TARGET --- # SET(PYWRAP ${PROJECT_NAME}_pywrap) SET(PYWRAP ${PYWRAP} PARENT_SCOPE) FILE(GLOB_RECURSE ${PROJECT_NAME}_PYTHON_HEADERS + RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} ${PROJECT_SOURCE_DIR}/include/${PROJECT_NAME}/bindings/*.hpp ${PROJECT_SOURCE_DIR}/include/${PROJECT_NAME}/bindings/*.hxx ) @@ -39,17 +20,16 @@ FILE(GLOB_RECURSE ${PROJECT_NAME}_PYTHON_SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/*.cpp ) -# REMOVE_PATH_FROM_LIST("${${PROJECT_NAME}_PYTHON_HEADERS}" "${CMAKE_CURRENT_SOURCE_DIR}/" ${PROJECT_NAME}_PYTHON_HEADERS) -# REMOVE_PATH_FROM_LIST("${${PROJECT_NAME}_PYTHON_SOURCES}" "${CMAKE_CURRENT_SOURCE_DIR}/" ${PROJECT_NAME}_PYTHON_SOURCES) +SET(SOURCE_HEADERS_ROOT "../../include/${PROJECT_NAME}/bindings/python") # Parser for Python model IF(BUILD_WITH_LIBPYTHON) SET(${PROJECT_NAME}_PARSER_PYTHON_HEADERS - ${PROJECT_SOURCE_DIR}/include/${PROJECT_NAME}/bindings/parsers/python.hpp + ${SOURCE_HEADERS_ROOT}/parsers/python.hpp ) ELSE(BUILD_WITH_LIBPYTHON) LIST(REMOVE_ITEM ${PROJECT_NAME}_PYTHON_HEADERS - ${PROJECT_SOURCE_DIR}/include/${PROJECT_NAME}/bindings/parsers/python.hpp + ${SOURCE_HEADERS_ROOT}/parsers/python.hpp ) LIST(REMOVE_ITEM ${PROJECT_NAME}_PYTHON_SOURCES parsers/python/model.cpp @@ -59,7 +39,7 @@ ENDIF(BUILD_WITH_LIBPYTHON) # Python exposition of FCL IF(NOT BUILD_WITH_HPP_FCL_PYTHON_BINDINGS) LIST(REMOVE_ITEM ${PROJECT_NAME}_PYTHON_HEADERS - ${PROJECT_SOURCE_DIR}/include/${PROJECT_NAME}/bindings/multibody/fcl/transform.hpp + ${SOURCE_HEADERS_ROOT}/multibody/fcl/transform.hpp ) LIST(REMOVE_ITEM ${PROJECT_NAME}_PYTHON_SOURCES multibody/fcl/expose-fcl.cpp @@ -67,26 +47,21 @@ IF(NOT BUILD_WITH_HPP_FCL_PYTHON_BINDINGS) ENDIF(NOT BUILD_WITH_HPP_FCL_PYTHON_BINDINGS) IF(NOT BUILD_WITH_OPENMP_SUPPORT) - LIST_FILTER("${${PROJECT_NAME}_PYTHON_HEADERS}" ".*/include/${PROJECT_NAME}/bindings/python/multibody/pool" ${PROJECT_NAME}_PYTHON_HEADERS) - LIST_FILTER("${${PROJECT_NAME}_PYTHON_SOURCES}" "^multibody/pool" ${PROJECT_NAME}_PYTHON_SOURCES) - LIST_FILTER("${${PROJECT_NAME}_PYTHON_HEADERS}" ".*/include/${PROJECT_NAME}/bindings/python/algorithm/parallel" ${PROJECT_NAME}_PYTHON_HEADERS) - LIST_FILTER("${${PROJECT_NAME}_PYTHON_SOURCES}" "^algorithm/parallel" ${PROJECT_NAME}_PYTHON_SOURCES) - #LIST(FILTER ${PROJECT_NAME}_PYTHON_HEADERS EXCLUDE REGEX "^multibody/pool") - #LIST(FILTER ${PROJECT_NAME}_PYTHON_SOURCES EXCLUDE REGEX "^multibody/pool") - #LIST(FILTER ${PROJECT_NAME}_PYTHON_HEADERS EXCLUDE REGEX "^algorithm/parallel") - #LIST(FILTER ${PROJECT_NAME}_PYTHON_SOURCES EXCLUDE REGEX "^algorithm/parallel") + LIST(FILTER ${PROJECT_NAME}_PYTHON_HEADERS EXCLUDE REGEX "^${SOURCE_HEADERS_ROOT}/multibody/pool") + LIST(FILTER ${PROJECT_NAME}_PYTHON_SOURCES EXCLUDE REGEX "^multibody/pool") + LIST(FILTER ${PROJECT_NAME}_PYTHON_HEADERS EXCLUDE REGEX "^${SOURCE_HEADERS_ROOT}/algorithm/parallel") + LIST(FILTER ${PROJECT_NAME}_PYTHON_SOURCES EXCLUDE REGEX "^algorithm/parallel") ELSE(NOT BUILD_WITH_OPENMP_SUPPORT) IF(NOT BUILD_WITH_HPP_FCL_SUPPORT) - LIST_FILTER("${${PROJECT_NAME}_PYTHON_HEADERS}" ".*/include/${PROJECT_NAME}/bindings/python/multibody/pool/geometry.hpp" ${PROJECT_NAME}_PYTHON_HEADERS) - LIST_FILTER("${${PROJECT_NAME}_PYTHON_SOURCES}" "^algorithm/parallel/geometry.cpp" ${PROJECT_NAME}_PYTHON_SOURCES) - #LIST(FILTER ${PROJECT_NAME}_PYTHON_HEADERS EXCLUDE REGEX "^multibody/pool/geometry.hpp") - #LIST(FILTER ${PROJECT_NAME}_PYTHON_SOURCES EXCLUDE REGEX "^algorithm/parallel/geometry.cpp") + LIST(REMOVE_ITEM ${PROJECT_NAME}_PYTHON_HEADERS + ${SOURCE_HEADERS_ROOT}/multibody/pool/geometry.hpp + ) + LIST(REMOVE_ITEM ${PROJECT_NAME}_PYTHON_SOURCES + algorithm/parallel/geometry.cpp + ) ENDIF(NOT BUILD_WITH_HPP_FCL_SUPPORT) ENDIF(NOT BUILD_WITH_OPENMP_SUPPORT) -LIST(APPEND HEADERS ${${PROJECT_NAME}_PYTHON_HEADERS}) - - # Headers of the Python parser IF(BUILD_WITH_LIBPYTHON) # TODO @@ -177,6 +152,16 @@ IF(BUILD_PYTHON_INTERFACE) DESTINATION ${${PYWRAP}_INSTALL_DIR} ) + FOREACH(header ${${PYWRAP}_HEADERS}) + GET_FILENAME_COMPONENT(headerPath ${header} PATH) + # Here, headerPath is relative to our source directory (begin with ../../include/pinocchio/) + # We add include in the destination to cancel the `../..` part of the relative path + INSTALL(FILES ${header} + DESTINATION ${CMAKE_INSTALL_PREFIX}/include/pinocchio/${headerPath} + PERMISSIONS OWNER_READ GROUP_READ WORLD_READ OWNER_WRITE) + ENDFOREACH(header) + + # --- INSTALL SCRIPTS SET(PYTHON_FILES __init__.py diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index d24afe1468..a8a3ff91b0 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -7,20 +7,26 @@ # --- INCLUDE ---------------------------------------- # ---------------------------------------------------- -# Find all headers +# Find all headers with a relative path to avoid conflict with root path +# when applying filters FILE(GLOB_RECURSE HEADERS + RELATIVE + ${CMAKE_CURRENT_SOURCE_DIR} ${PROJECT_SOURCE_DIR}/include/${PROJECT_NAME}/*.hpp ${PROJECT_SOURCE_DIR}/include/${PROJECT_NAME}/*.hxx ) +SET(SOURCE_HEADERS_ROOT "../include/${PROJECT_NAME}") +SET(BINARY_HEADERS_ROOT "${${PROJECT_NAME}_BINARY_DIR}/include/${PROJECT_NAME}") + # Remove bindings -LIST(FILTER HEADERS EXCLUDE REGEX "../include/${PROJECT_NAME}/bindings/.*") +LIST(FILTER HEADERS EXCLUDE REGEX "^${SOURCE_HEADERS_ROOT}/bindings/.*") # Add generated headers LIST(APPEND HEADERS - ${${PROJECT_NAME}_BINARY_DIR}/include/${PROJECT_NAME}/config.hpp - ${${PROJECT_NAME}_BINARY_DIR}/include/${PROJECT_NAME}/deprecated.hpp - ${${PROJECT_NAME}_BINARY_DIR}/include/${PROJECT_NAME}/warning.hpp) + ${BINARY_HEADERS_ROOT}/config.hpp + ${BINARY_HEADERS_ROOT}/deprecated.hpp + ${BINARY_HEADERS_ROOT}/warning.hpp) IF(BUILD_WITH_URDF_SUPPORT) LIST(APPEND ${PROJECT_NAME}_SOURCES @@ -30,11 +36,11 @@ IF(BUILD_WITH_URDF_SUPPORT) ) ELSE(BUILD_WITH_URDF_SUPPORT) LIST(REMOVE_ITEM HEADERS - ${PROJECT_SOURCE_DIR}/include/${PROJECT_NAME}/parsers/urdf.hpp - ${PROJECT_SOURCE_DIR}/include/${PROJECT_NAME}/parsers/urdf/model.hxx - ${PROJECT_SOURCE_DIR}/include/${PROJECT_NAME}/parsers/urdf/geometry.hxx - ${PROJECT_SOURCE_DIR}/include/${PROJECT_NAME}/parsers/urdf/utils.hpp - ${PROJECT_SOURCE_DIR}/include/${PROJECT_NAME}/parsers/urdf/types.hpp + ${SOURCE_HEADERS_ROOT}/parsers/urdf.hpp + ${SOURCE_HEADERS_ROOT}/parsers/urdf/model.hxx + ${SOURCE_HEADERS_ROOT}/parsers/urdf/geometry.hxx + ${SOURCE_HEADERS_ROOT}/parsers/urdf/utils.hpp + ${SOURCE_HEADERS_ROOT}/parsers/urdf/types.hpp ) ENDIF() @@ -47,7 +53,8 @@ GET_DIRECTORY_PROPERTY(CURRENT_COMPILE_DEFINITIONS COMPILE_DEFINITIONS) ADD_LIBRARY(${PROJECT_NAME} SHARED ${HEADERS} ${${PROJECT_NAME}_SOURCES}) SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES LINKER_LANGUAGE CXX - INSTALL_RPATH "\$ORIGIN") + INSTALL_RPATH "\$ORIGIN" + ) TARGET_COMPILE_DEFINITIONS(${PROJECT_NAME} PUBLIC ${CURRENT_COMPILE_DEFINITIONS}) # Create header-only target @@ -133,3 +140,12 @@ INSTALL(TARGETS ${PROJECT_NAME}_headers LIBRARY DESTINATION ${CMAKE_INSTALL_FULL_LIBDIR} ARCHIVE DESTINATION ${CMAKE_INSTALL_FULL_LIBDIR} RUNTIME DESTINATION ${CMAKE_INSTALL_FULL_BINDIR}) + +FOREACH(header ${HEADERS}) + GET_FILENAME_COMPONENT(headerPath ${header} PATH) + # Here, headerPath is relative to our source directory (begin with ../include/pinocchio/) + # We add include in the destination to cancel the `..` part of the relative path + INSTALL(FILES ${header} + DESTINATION ${CMAKE_INSTALL_PREFIX}/include/${headerPath} + PERMISSIONS OWNER_READ GROUP_READ WORLD_READ OWNER_WRITE) +ENDFOREACH(header) From 4fdaa18c7c946b5ba23bc97604a8ef73f55677a7 Mon Sep 17 00:00:00 2001 From: Joris Vaillant Date: Thu, 19 Oct 2023 14:56:40 +0200 Subject: [PATCH 04/13] Fix last installation issues --- bindings/python/CMakeLists.txt | 15 +++------------ src/CMakeLists.txt | 26 +++++++++++++------------- 2 files changed, 16 insertions(+), 25 deletions(-) diff --git a/bindings/python/CMakeLists.txt b/bindings/python/CMakeLists.txt index a72e8f29d7..5fad10914f 100644 --- a/bindings/python/CMakeLists.txt +++ b/bindings/python/CMakeLists.txt @@ -62,14 +62,6 @@ ELSE(NOT BUILD_WITH_OPENMP_SUPPORT) ENDIF(NOT BUILD_WITH_HPP_FCL_SUPPORT) ENDIF(NOT BUILD_WITH_OPENMP_SUPPORT) -# Headers of the Python parser -IF(BUILD_WITH_LIBPYTHON) - # TODO - # INSTALL(FILES ${${PROJECT_NAME}_PARSER_PYTHON_HEADERS} - # DESTINATION ${CMAKE_INSTALL_PREFIX}/include/${PROJECT_NAME}/${SUBPATH}/${headerPath} - # PERMISSIONS OWNER_READ GROUP_READ WORLD_READ OWNER_WRITE) -ENDIF(BUILD_WITH_LIBPYTHON) - # --- COMPILE WRAPPER MAKE_DIRECTORY("${${PROJECT_NAME}_BINARY_DIR}/bindings/python/${PROJECT_NAME}") SET(${PYWRAP}_SOURCES ${${PROJECT_NAME}_PYTHON_SOURCES}) @@ -153,11 +145,10 @@ IF(BUILD_PYTHON_INTERFACE) ) FOREACH(header ${${PYWRAP}_HEADERS}) - GET_FILENAME_COMPONENT(headerPath ${header} PATH) - # Here, headerPath is relative to our source directory (begin with ../../include/pinocchio/) - # We add include in the destination to cancel the `../..` part of the relative path + GET_FILENAME_COMPONENT(header_path ${header} PATH) + STRING(REPLACE "../../" "" non_relative_header_path ${header_path}) INSTALL(FILES ${header} - DESTINATION ${CMAKE_INSTALL_PREFIX}/include/pinocchio/${headerPath} + DESTINATION ${CMAKE_INSTALL_PREFIX}/${non_relative_header_path} PERMISSIONS OWNER_READ GROUP_READ WORLD_READ OWNER_WRITE) ENDFOREACH(header) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index a8a3ff91b0..798bffa94b 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -9,7 +9,7 @@ # Find all headers with a relative path to avoid conflict with root path # when applying filters -FILE(GLOB_RECURSE HEADERS +FILE(GLOB_RECURSE PUBLIC_HEADERS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} ${PROJECT_SOURCE_DIR}/include/${PROJECT_NAME}/*.hpp @@ -20,10 +20,10 @@ SET(SOURCE_HEADERS_ROOT "../include/${PROJECT_NAME}") SET(BINARY_HEADERS_ROOT "${${PROJECT_NAME}_BINARY_DIR}/include/${PROJECT_NAME}") # Remove bindings -LIST(FILTER HEADERS EXCLUDE REGEX "^${SOURCE_HEADERS_ROOT}/bindings/.*") +LIST(FILTER PUBLIC_HEADERS EXCLUDE REGEX "^${SOURCE_HEADERS_ROOT}/bindings/.*") # Add generated headers -LIST(APPEND HEADERS +LIST(APPEND PRIVATE_HEADERS ${BINARY_HEADERS_ROOT}/config.hpp ${BINARY_HEADERS_ROOT}/deprecated.hpp ${BINARY_HEADERS_ROOT}/warning.hpp) @@ -35,7 +35,7 @@ IF(BUILD_WITH_URDF_SUPPORT) parsers/urdf/utils.cpp ) ELSE(BUILD_WITH_URDF_SUPPORT) - LIST(REMOVE_ITEM HEADERS + LIST(REMOVE_ITEM PUBLIC_HEADERS ${SOURCE_HEADERS_ROOT}/parsers/urdf.hpp ${SOURCE_HEADERS_ROOT}/parsers/urdf/model.hxx ${SOURCE_HEADERS_ROOT}/parsers/urdf/geometry.hxx @@ -50,7 +50,7 @@ LIST(APPEND ${PROJECT_NAME}_SOURCES utils/file-explorer.cpp) GET_DIRECTORY_PROPERTY(CURRENT_COMPILE_DEFINITIONS COMPILE_DEFINITIONS) # Create target libpinocchio.so -ADD_LIBRARY(${PROJECT_NAME} SHARED ${HEADERS} ${${PROJECT_NAME}_SOURCES}) +ADD_LIBRARY(${PROJECT_NAME} SHARED ${PUBLIC_HEADERS} ${PRIVATE_HEADERS} ${${PROJECT_NAME}_SOURCES}) SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES LINKER_LANGUAGE CXX INSTALL_RPATH "\$ORIGIN" @@ -64,8 +64,8 @@ ADD_LIBRARY(${PROJECT_NAME}_headers INTERFACE) IF(BUILD_WITH_HPP_FCL_SUPPORT) LIST(REMOVE_ITEM CURRENT_COMPILE_DEFINITIONS PINOCCHIO_WITH_HPP_FCL) ELSE(BUILD_WITH_HPP_FCL_SUPPORT) - LIST(REMOVE_ITEM HEADERS - ${PROJECT_SOURCE_DIR}/include/${PROJECT_NAME}/spatial/fcl-pinocchio-conversions.hpp + LIST(REMOVE_ITEM PUBLIC_HEADERS + ${SOURCE_HEADERS_ROOT}/spatial/fcl-pinocchio-conversions.hpp ) ENDIF(BUILD_WITH_HPP_FCL_SUPPORT) @@ -126,7 +126,8 @@ IF(hpp-fcl_FOUND) TARGET_LINK_LIBRARIES(${PROJECT_NAME} PUBLIC hpp-fcl::hpp-fcl) ENDIF(hpp-fcl_FOUND) -ADD_HEADER_GROUP(HEADERS) +ADD_HEADER_GROUP(PUBLIC_HEADERS) +ADD_HEADER_GROUP(PRIVATE_HEADERS) ADD_SOURCE_GROUP(${PROJECT_NAME}_SOURCES) INSTALL(TARGETS ${PROJECT_NAME} @@ -141,11 +142,10 @@ INSTALL(TARGETS ${PROJECT_NAME}_headers ARCHIVE DESTINATION ${CMAKE_INSTALL_FULL_LIBDIR} RUNTIME DESTINATION ${CMAKE_INSTALL_FULL_BINDIR}) -FOREACH(header ${HEADERS}) - GET_FILENAME_COMPONENT(headerPath ${header} PATH) - # Here, headerPath is relative to our source directory (begin with ../include/pinocchio/) - # We add include in the destination to cancel the `..` part of the relative path +FOREACH(header ${PUBLIC_HEADERS}) + GET_FILENAME_COMPONENT(header_path ${header} PATH) + STRING(REPLACE "../" "" non_relative_header_path ${header_path}) INSTALL(FILES ${header} - DESTINATION ${CMAKE_INSTALL_PREFIX}/include/${headerPath} + DESTINATION ${CMAKE_INSTALL_PREFIX}/${non_relative_header_path} PERMISSIONS OWNER_READ GROUP_READ WORLD_READ OWNER_WRITE) ENDFOREACH(header) From 16020e2720a6ef08f11c5a522f2b7473f1b3ba44 Mon Sep 17 00:00:00 2001 From: Joris Vaillant Date: Thu, 19 Oct 2023 15:28:06 +0200 Subject: [PATCH 05/13] Use REPLACE instead of REGEX REPLACE --- unittest/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/unittest/CMakeLists.txt b/unittest/CMakeLists.txt index 0a408c1ddc..795bb33c84 100644 --- a/unittest/CMakeLists.txt +++ b/unittest/CMakeLists.txt @@ -27,7 +27,7 @@ MACRO(ADD_PINOCCHIO_UNIT_TEST NAME) ADD_TEST_CFLAGS(${NAME} "-DBOOST_TEST_DYN_LINK") SET(MODULE_NAME "${NAME}Test") - STRING(REGEX REPLACE "-" "_" MODULE_NAME ${MODULE_NAME}) + STRING(REPLACE "-" "_" MODULE_NAME ${MODULE_NAME}) ADD_TEST_CFLAGS(${NAME} "-DBOOST_TEST_MODULE=${MODULE_NAME}") ADD_TEST_CFLAGS(${NAME} "-DPINOCCHIO_MODEL_DIR=\\\\\"${PINOCCHIO_MODEL_DIR}\\\\\"") IF(WIN32) From ac0ed7e1ab95036f1b0216f92a0e31ac8c04c919 Mon Sep 17 00:00:00 2001 From: Joris Vaillant Date: Thu, 19 Oct 2023 15:43:49 +0200 Subject: [PATCH 06/13] Fix doxygen --- bindings/python/CMakeLists.txt | 3 ++- doc/Doxyfile.extra.in | 4 ++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/bindings/python/CMakeLists.txt b/bindings/python/CMakeLists.txt index 5fad10914f..9b38e19b39 100644 --- a/bindings/python/CMakeLists.txt +++ b/bindings/python/CMakeLists.txt @@ -227,7 +227,8 @@ IF(BUILD_PYTHON_INTERFACE) SET(DOXYGEN_GENERATE_LATEX NO) SET(DOXYGEN_PROJECT_NAME "Pinocchio PyBind11 helpers.") DOXYGEN_ADD_DOCS(doc_pybind11 - pybind11.hpp pybind11-all.hpp + ${SOURCE_HEADERS_ROOT}/pybind11.hpp + ${SOURCE_HEADERS_ROOT}/pybind11-all.hpp USE_STAMP_FILE COMMENT "Generating documentation of the PyBind11 helpers.") ENDIF() diff --git a/doc/Doxyfile.extra.in b/doc/Doxyfile.extra.in index 7caa1e723c..a0c8ef509b 100644 --- a/doc/Doxyfile.extra.in +++ b/doc/Doxyfile.extra.in @@ -292,7 +292,7 @@ WARN_LOGFILE = @CMAKE_BINARY_DIR@/doc/doxygen.log # with spaces. INPUT = @CMAKE_SOURCE_DIR@/doc \ - @CMAKE_SOURCE_DIR@/src + @CMAKE_SOURCE_DIR@/include # The RECURSIVE tag can be used to turn specify whether or not subdirectories # should be searched for input files as well. Possible values are YES and NO. @@ -625,7 +625,7 @@ EXPAND_AS_DEFINED = # contain include files that are not input files but should be processed by # the preprocessor. -INCLUDE_PATH = @PROJECT_SOURCE_DIR@/src +INCLUDE_PATH = @PROJECT_SOURCE_DIR@/include #--------------------------------------------------------------------------- # Configuration::additions related to external references From 73cf05186169b62bef91d0bdf525c4253fd66eb0 Mon Sep 17 00:00:00 2001 From: Joris Vaillant Date: Fri, 20 Oct 2023 13:33:14 +0200 Subject: [PATCH 07/13] [cmake] Set back include/pinocchio/parsers/python.hpp --- bindings/python/CMakeLists.txt | 8 ++------ include/pinocchio/parsers/python.hpp | 16 ++++++++++++++++ src/CMakeLists.txt | 5 +++++ 3 files changed, 23 insertions(+), 6 deletions(-) create mode 100644 include/pinocchio/parsers/python.hpp diff --git a/bindings/python/CMakeLists.txt b/bindings/python/CMakeLists.txt index 9b38e19b39..e2705a3866 100644 --- a/bindings/python/CMakeLists.txt +++ b/bindings/python/CMakeLists.txt @@ -23,18 +23,14 @@ FILE(GLOB_RECURSE ${PROJECT_NAME}_PYTHON_SOURCES SET(SOURCE_HEADERS_ROOT "../../include/${PROJECT_NAME}/bindings/python") # Parser for Python model -IF(BUILD_WITH_LIBPYTHON) - SET(${PROJECT_NAME}_PARSER_PYTHON_HEADERS - ${SOURCE_HEADERS_ROOT}/parsers/python.hpp - ) -ELSE(BUILD_WITH_LIBPYTHON) +IF(NOT BUILD_WITH_LIBPYTHON) LIST(REMOVE_ITEM ${PROJECT_NAME}_PYTHON_HEADERS ${SOURCE_HEADERS_ROOT}/parsers/python.hpp ) LIST(REMOVE_ITEM ${PROJECT_NAME}_PYTHON_SOURCES parsers/python/model.cpp ) -ENDIF(BUILD_WITH_LIBPYTHON) +ENDIF(NOT BUILD_WITH_LIBPYTHON) # Python exposition of FCL IF(NOT BUILD_WITH_HPP_FCL_PYTHON_BINDINGS) diff --git a/include/pinocchio/parsers/python.hpp b/include/pinocchio/parsers/python.hpp new file mode 100644 index 0000000000..2267f51bf1 --- /dev/null +++ b/include/pinocchio/parsers/python.hpp @@ -0,0 +1,16 @@ +// +// Copyright (c) 2015-2023 CNRS INRIA +// + +#ifndef __pinocchio_parser_python_hpp__ +#define __pinocchio_parser_python_hpp__ + +#include "pinocchio/macros.hpp" + +// clang-format off +PINOCCHIO_PRAGMA_DEPRECATED_HEADER(pinocchio/parsers/python.hpp, pinocchio/bindings/python/parsers/python.hpp) +// clang-format on + +#include "pinocchio/bindings/python/parsers/python.hpp" + +#endif // ifndef __pinocchio_parser_python_hpp__ diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 798bffa94b..b730c1150d 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -44,6 +44,11 @@ ELSE(BUILD_WITH_URDF_SUPPORT) ) ENDIF() +# Parser for Python model +IF(NOT BUILD_WITH_LIBPYTHON) + LIST(REMOVE_ITEM PUBLIC_HEADERS ${SOURCE_HEADERS_ROOT}/parsers/python.hpp) +ENDIF(BUILD_WITH_LIBPYTHON) + LIST(APPEND ${PROJECT_NAME}_SOURCES utils/file-explorer.cpp) # Extract the compile definitions of the project for export From 7711a3191ae2a9640d1c3b6c107e0da4444ce0d5 Mon Sep 17 00:00:00 2001 From: Joris Vaillant Date: Fri, 20 Oct 2023 14:39:11 +0200 Subject: [PATCH 08/13] [cmake] Remove the deprecated warning --- include/pinocchio/parsers/python.hpp | 4 ---- 1 file changed, 4 deletions(-) diff --git a/include/pinocchio/parsers/python.hpp b/include/pinocchio/parsers/python.hpp index 2267f51bf1..ba6e9a2b38 100644 --- a/include/pinocchio/parsers/python.hpp +++ b/include/pinocchio/parsers/python.hpp @@ -7,10 +7,6 @@ #include "pinocchio/macros.hpp" -// clang-format off -PINOCCHIO_PRAGMA_DEPRECATED_HEADER(pinocchio/parsers/python.hpp, pinocchio/bindings/python/parsers/python.hpp) -// clang-format on - #include "pinocchio/bindings/python/parsers/python.hpp" #endif // ifndef __pinocchio_parser_python_hpp__ From fcd18961d50075235e9fc3751660068726ee5d82 Mon Sep 17 00:00:00 2001 From: Joris Vaillant Date: Fri, 20 Oct 2023 16:23:09 +0200 Subject: [PATCH 09/13] [cmake] Don't use GLOB/GLOB_RECURSE to find sources --- CMakeLists.txt | 68 ++++++ bindings/python/CMakeLists.txt | 73 +----- sources.cmake | 395 +++++++++++++++++++++++++++++++++ src/CMakeLists.txt | 72 +----- 4 files changed, 486 insertions(+), 122 deletions(-) create mode 100644 sources.cmake diff --git a/CMakeLists.txt b/CMakeLists.txt index 2a74952f3f..ae4df9d713 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -198,6 +198,74 @@ IF(BUILD_WITH_HPP_FCL_SUPPORT) ENDIF(BUILD_PYTHON_INTERFACE) ENDIF(BUILD_WITH_HPP_FCL_SUPPORT) +# Sources definition +INCLUDE(sources.cmake) + +IF(BUILD_WITH_URDF_SUPPORT) + LIST(APPEND ${PROJECT_NAME}_CORE_SOURCES ${${PROJECT_NAME}_URDF_SOURCES}) + LIST(APPEND ${PROJECT_NAME}_CORE_PUBLIC_HEADERS ${${PROJECT_NAME}_URDF_PUBLIC_HEADERS}) +ENDIF(BUILD_WITH_URDF_SUPPORT) + +IF(BUILD_WITH_LIBPYTHON) + LIST(APPEND ${PROJECT_NAME}_CORE_PUBLIC_HEADERS + ${${PROJECT_NAME}_LIBPYTHON_PUBLIC_HEADERS}) + LIST(APPEND ${PROJECT_NAME}_BINDINGS_PYTHON_SOURCES + ${${PROJECT_NAME}_BINDINGS_PYTHON_LIBPYTHON_SOURCES}) + LIST(APPEND ${PROJECT_NAME}_BINDINGS_PYTHON_PUBLIC_HEADERS + ${${PROJECT_NAME}_BINDINGS_PYTHON_LIBPYTHON_PUBLIC_HEADERS}) +ENDIF(BUILD_WITH_LIBPYTHON) + +IF(BUILD_WITH_HPP_FCL_SUPPORT) + LIST(APPEND ${PROJECT_NAME}_CORE_PUBLIC_HEADERS + ${${PROJECT_NAME}_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}) +ENDIF(BUILD_WITH_HPP_FCL_SUPPORT) + +IF(BUILD_WITH_OPENMP_SUPPORT) + LIST(APPEND ${PROJECT_NAME}_BINDINGS_PYTHON_SOURCES + ${${PROJECT_NAME}_BINDINGS_PYTHON_OPENMP_SOURCES}) + LIST(APPEND ${PROJECT_NAME}_BINDINGS_PYTHON_PUBLIC_HEADERS + ${${PROJECT_NAME}_BINDINGS_PYTHON_OPENMP_PUBLIC_HEADERS}) + IF(BUILD_WITH_HPP_FCL_SUPPORT) + LIST(APPEND ${PROJECT_NAME}_BINDINGS_PYTHON_SOURCES + ${${PROJECT_NAME}_BINDINGS_PYTHON_HPP_FCL_OPENMP_SOURCES}) + LIST(APPEND ${PROJECT_NAME}_BINDINGS_PYTHON_PUBLIC_HEADERS + ${${PROJECT_NAME}_BINDINGS_PYTHON_HPP_FCL_OPENMP_PUBLIC_HEADERS}) + ENDIF(BUILD_WITH_HPP_FCL_SUPPORT) +ENDIF() + +# List headers to install +LIST(APPEND ${PROJECT_NAME}_HEADERS + ${${PROJECT_NAME}_CORE_PUBLIC_HEADERS} + ) +IF(BUILD_PYTHON_INTERFACE) + LIST(APPEND ${PROJECT_NAME}_HEADERS + ${${PROJECT_NAME}_BINDINGS_PYTHON_PUBLIC_HEADERS} + ) +ENDIF(BUILD_PYTHON_INTERFACE) + +# Macros to update souces path in subdirs +FUNCTION(REMOVE_PATH_FROM_LIST list_name path_name dest_list) + SET(list_name_) + FOREACH(header ${${list_name}}) + STRING(REGEX REPLACE "^${path_name}" "" header ${header}) + LIST(APPEND list_name_ ${header}) + ENDFOREACH(header ${list_name_}) + SET(${dest_list} ${list_name_} PARENT_SCOPE) +ENDFUNCTION(REMOVE_PATH_FROM_LIST) + +FUNCTION(PREPEND_PATH_FROM_LIST list_name path_name dest_list) + SET(list_name_) + FOREACH(header ${${list_name}}) + SET(header "${path_name}/${header}") + LIST(APPEND list_name_ ${header}) + ENDFOREACH(header ${list_name_}) + SET(${dest_list} ${list_name_} PARENT_SCOPE) +ENDFUNCTION(PREPEND_PATH_FROM_LIST) + # 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. diff --git a/bindings/python/CMakeLists.txt b/bindings/python/CMakeLists.txt index e2705a3866..05dd837537 100644 --- a/bindings/python/CMakeLists.txt +++ b/bindings/python/CMakeLists.txt @@ -9,59 +9,16 @@ include(${JRL_CMAKE_MODULES}/python-helpers.cmake) SET(PYWRAP ${PROJECT_NAME}_pywrap) SET(PYWRAP ${PYWRAP} PARENT_SCOPE) -FILE(GLOB_RECURSE ${PROJECT_NAME}_PYTHON_HEADERS - RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} - ${PROJECT_SOURCE_DIR}/include/${PROJECT_NAME}/bindings/*.hpp - ${PROJECT_SOURCE_DIR}/include/${PROJECT_NAME}/bindings/*.hxx - ) - -FILE(GLOB_RECURSE ${PROJECT_NAME}_PYTHON_SOURCES - RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} - ${CMAKE_CURRENT_SOURCE_DIR}/*.cpp - ) - -SET(SOURCE_HEADERS_ROOT "../../include/${PROJECT_NAME}/bindings/python") - -# Parser for Python model -IF(NOT BUILD_WITH_LIBPYTHON) - LIST(REMOVE_ITEM ${PROJECT_NAME}_PYTHON_HEADERS - ${SOURCE_HEADERS_ROOT}/parsers/python.hpp - ) - LIST(REMOVE_ITEM ${PROJECT_NAME}_PYTHON_SOURCES - parsers/python/model.cpp - ) -ENDIF(NOT BUILD_WITH_LIBPYTHON) - -# Python exposition of FCL -IF(NOT BUILD_WITH_HPP_FCL_PYTHON_BINDINGS) - LIST(REMOVE_ITEM ${PROJECT_NAME}_PYTHON_HEADERS - ${SOURCE_HEADERS_ROOT}/multibody/fcl/transform.hpp - ) - LIST(REMOVE_ITEM ${PROJECT_NAME}_PYTHON_SOURCES - multibody/fcl/expose-fcl.cpp - ) -ENDIF(NOT BUILD_WITH_HPP_FCL_PYTHON_BINDINGS) - -IF(NOT BUILD_WITH_OPENMP_SUPPORT) - LIST(FILTER ${PROJECT_NAME}_PYTHON_HEADERS EXCLUDE REGEX "^${SOURCE_HEADERS_ROOT}/multibody/pool") - LIST(FILTER ${PROJECT_NAME}_PYTHON_SOURCES EXCLUDE REGEX "^multibody/pool") - LIST(FILTER ${PROJECT_NAME}_PYTHON_HEADERS EXCLUDE REGEX "^${SOURCE_HEADERS_ROOT}/algorithm/parallel") - LIST(FILTER ${PROJECT_NAME}_PYTHON_SOURCES EXCLUDE REGEX "^algorithm/parallel") -ELSE(NOT BUILD_WITH_OPENMP_SUPPORT) - IF(NOT BUILD_WITH_HPP_FCL_SUPPORT) - LIST(REMOVE_ITEM ${PROJECT_NAME}_PYTHON_HEADERS - ${SOURCE_HEADERS_ROOT}/multibody/pool/geometry.hpp - ) - LIST(REMOVE_ITEM ${PROJECT_NAME}_PYTHON_SOURCES - algorithm/parallel/geometry.cpp - ) - ENDIF(NOT BUILD_WITH_HPP_FCL_SUPPORT) -ENDIF(NOT BUILD_WITH_OPENMP_SUPPORT) - # --- COMPILE WRAPPER +REMOVE_PATH_FROM_LIST(${PROJECT_NAME}_BINDINGS_PYTHON_SOURCES + "bindings/python/" + ${PROJECT_NAME}_BINDINGS_PYTHON_SOURCES) +PREPEND_PATH_FROM_LIST(${PROJECT_NAME}_BINDINGS_PYTHON_PUBLIC_HEADERS + "../../" + ${PROJECT_NAME}_BINDINGS_PYTHON_PUBLIC_HEADERS) MAKE_DIRECTORY("${${PROJECT_NAME}_BINARY_DIR}/bindings/python/${PROJECT_NAME}") -SET(${PYWRAP}_SOURCES ${${PROJECT_NAME}_PYTHON_SOURCES}) -SET(${PYWRAP}_HEADERS ${${PROJECT_NAME}_PYTHON_HEADERS}) +SET(${PYWRAP}_SOURCES ${${PROJECT_NAME}_BINDINGS_PYTHON_SOURCES}) +SET(${PYWRAP}_HEADERS ${${PROJECT_NAME}_BINDINGS_PYTHON_PUBLIC_HEADERS}) IF(BUILD_PYTHON_INTERFACE) ADD_CUSTOM_TARGET(python) @@ -140,15 +97,6 @@ IF(BUILD_PYTHON_INTERFACE) DESTINATION ${${PYWRAP}_INSTALL_DIR} ) - FOREACH(header ${${PYWRAP}_HEADERS}) - GET_FILENAME_COMPONENT(header_path ${header} PATH) - STRING(REPLACE "../../" "" non_relative_header_path ${header_path}) - INSTALL(FILES ${header} - DESTINATION ${CMAKE_INSTALL_PREFIX}/${non_relative_header_path} - PERMISSIONS OWNER_READ GROUP_READ WORLD_READ OWNER_WRITE) - ENDFOREACH(header) - - # --- INSTALL SCRIPTS SET(PYTHON_FILES __init__.py @@ -222,9 +170,10 @@ IF(BUILD_PYTHON_INTERFACE) SET(DOXYGEN_GENERATE_HTML YES) SET(DOXYGEN_GENERATE_LATEX NO) 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 + ${_source_headers_root}/pybind11.hpp + ${_source_headers_root}/pybind11-all.hpp USE_STAMP_FILE COMMENT "Generating documentation of the PyBind11 helpers.") ENDIF() diff --git a/sources.cmake b/sources.cmake new file mode 100644 index 0000000000..a0e9aca375 --- /dev/null +++ b/sources.cmake @@ -0,0 +1,395 @@ +# Define Pinocchio sources and headers + +SET(${PROJECT_NAME}_CORE_SOURCES + src/utils/file-explorer.cpp + ) + +SET(${PROJECT_NAME}_CORE_PUBLIC_HEADERS + include/pinocchio/deprecated-macros.hpp + include/pinocchio/spatial/motion-dense.hpp + include/pinocchio/spatial/explog.hpp + include/pinocchio/spatial/explog-quaternion.hpp + include/pinocchio/spatial/log.hxx + include/pinocchio/spatial/spatial-axis.hpp + include/pinocchio/spatial/fcl-pinocchio-conversions.hpp + include/pinocchio/spatial/symmetric3.hpp + include/pinocchio/spatial/act-on-set.hpp + include/pinocchio/spatial/fwd.hpp + include/pinocchio/spatial/se3-base.hpp + include/pinocchio/spatial/cartesian-axis.hpp + include/pinocchio/spatial/motion.hpp + include/pinocchio/spatial/motion-ref.hpp + include/pinocchio/spatial/force-ref.hpp + include/pinocchio/spatial/skew.hpp + include/pinocchio/spatial/force-base.hpp + include/pinocchio/spatial/motion-zero.hpp + include/pinocchio/spatial/force-tpl.hpp + include/pinocchio/spatial/force.hpp + include/pinocchio/spatial/force-dense.hpp + include/pinocchio/spatial/inertia.hpp + include/pinocchio/spatial/log.hpp + include/pinocchio/spatial/motion-tpl.hpp + include/pinocchio/spatial/se3-tpl.hpp + include/pinocchio/spatial/act-on-set.hxx + include/pinocchio/spatial/se3.hpp + include/pinocchio/spatial/motion-base.hpp + include/pinocchio/algorithm/check.hxx + include/pinocchio/algorithm/crba.hxx + include/pinocchio/algorithm/dynamics.hpp + include/pinocchio/algorithm/kinematics.hxx + include/pinocchio/algorithm/aba-derivatives.hpp + include/pinocchio/algorithm/centroidal-derivatives.hpp + include/pinocchio/algorithm/contact-dynamics.hxx + include/pinocchio/algorithm/regressor.hxx + include/pinocchio/algorithm/frames.hxx + include/pinocchio/algorithm/joint-configuration.hxx + include/pinocchio/algorithm/energy.hpp + include/pinocchio/algorithm/center-of-mass.hxx + include/pinocchio/algorithm/geometry.hpp + include/pinocchio/algorithm/center-of-mass-derivatives.hpp + include/pinocchio/algorithm/aba.hpp + include/pinocchio/algorithm/cholesky.hpp + include/pinocchio/algorithm/kinematics.hpp + include/pinocchio/algorithm/rnea.hxx + include/pinocchio/algorithm/regressor.hpp + include/pinocchio/algorithm/frames.hpp + include/pinocchio/algorithm/kinematics-derivatives.hxx + include/pinocchio/algorithm/jacobian.hxx + include/pinocchio/algorithm/rnea-derivatives.hpp + include/pinocchio/algorithm/rnea-second-order-derivatives.hxx + include/pinocchio/algorithm/joint-configuration.hpp + include/pinocchio/algorithm/model.hxx + include/pinocchio/algorithm/contact-dynamics.hpp + include/pinocchio/algorithm/centroidal.hxx + include/pinocchio/algorithm/model.hpp + include/pinocchio/algorithm/rnea-derivatives.hxx + include/pinocchio/algorithm/compute-all-terms.hpp + include/pinocchio/algorithm/jacobian.hpp + include/pinocchio/algorithm/rnea-second-order-derivatives.hpp + include/pinocchio/algorithm/copy.hpp + include/pinocchio/algorithm/centroidal.hpp + include/pinocchio/algorithm/kinematics-derivatives.hpp + include/pinocchio/algorithm/check.hpp + include/pinocchio/algorithm/energy.hxx + include/pinocchio/algorithm/geometry.hxx + include/pinocchio/algorithm/rnea.hpp + include/pinocchio/algorithm/parallel/geometry.hpp + include/pinocchio/algorithm/parallel/aba.hpp + include/pinocchio/algorithm/parallel/rnea.hpp + include/pinocchio/algorithm/centroidal-derivatives.hxx + include/pinocchio/algorithm/cholesky.hxx + include/pinocchio/algorithm/default-check.hpp + include/pinocchio/algorithm/center-of-mass.hpp + include/pinocchio/algorithm/frames-derivatives.hxx + include/pinocchio/algorithm/aba-derivatives.hxx + include/pinocchio/algorithm/crba.hpp + include/pinocchio/algorithm/compute-all-terms.hxx + include/pinocchio/algorithm/aba.hxx + include/pinocchio/algorithm/center-of-mass-derivatives.hxx + include/pinocchio/algorithm/frames-derivatives.hpp + include/pinocchio/codegen/code-generator-algo.hpp + include/pinocchio/codegen/cppadcg.hpp + include/pinocchio/codegen/code-generator-base.hpp + include/pinocchio/macros.hpp + include/pinocchio/autodiff/casadi/spatial/se3-tpl.hpp + include/pinocchio/autodiff/casadi/utils/static-if.hpp + include/pinocchio/autodiff/casadi/math/matrix.hpp + include/pinocchio/autodiff/casadi/math/quaternion.hpp + include/pinocchio/autodiff/cppad.hpp + include/pinocchio/autodiff/cppad/spatial/log.hxx + include/pinocchio/autodiff/cppad/spatial/se3-tpl.hpp + include/pinocchio/autodiff/cppad/algorithm/aba.hpp + include/pinocchio/autodiff/cppad/utils/static-if.hpp + include/pinocchio/autodiff/cppad/math/eigen_plugin.hpp + include/pinocchio/autodiff/cppad/math/quaternion.hpp + include/pinocchio/autodiff/casadi.hpp + include/pinocchio/utils/string-generator.hpp + include/pinocchio/utils/version.hpp + include/pinocchio/utils/openmp.hpp + include/pinocchio/utils/helpers.hpp + include/pinocchio/utils/axis-label.hpp + include/pinocchio/utils/file-explorer.hpp + include/pinocchio/utils/cast.hpp + include/pinocchio/utils/eigen-fix.hpp + include/pinocchio/utils/static-if.hpp + include/pinocchio/utils/timer.hpp + include/pinocchio/deprecated-namespaces.hpp + include/pinocchio/math/comparison-operators.hpp + include/pinocchio/math/multiprecision.hpp + include/pinocchio/math/tensor.hpp + include/pinocchio/math/cppadcg.hpp + include/pinocchio/math/rpy.hpp + include/pinocchio/math/cppad.hpp + include/pinocchio/math/fwd.hpp + include/pinocchio/math/taylor-expansion.hpp + include/pinocchio/math/matrix-block.hpp + include/pinocchio/math/matrix.hpp + include/pinocchio/math/multiprecision-mpfr.hpp + include/pinocchio/math/casadi.hpp + include/pinocchio/math/sign.hpp + include/pinocchio/math/sincos.hpp + include/pinocchio/math/rotation.hpp + include/pinocchio/math/quaternion.hpp + include/pinocchio/math/rpy.hxx + include/pinocchio/container/boost-container-limits.hpp + include/pinocchio/container/aligned-vector.hpp + include/pinocchio/fwd.hpp + include/pinocchio/serialization/data.hpp + include/pinocchio/serialization/vector.hpp + include/pinocchio/serialization/static-buffer.hpp + include/pinocchio/serialization/frame.hpp + include/pinocchio/serialization/geometry.hpp + include/pinocchio/serialization/joints-constraint.hpp + include/pinocchio/serialization/joints-model.hpp + include/pinocchio/serialization/symmetric3.hpp + include/pinocchio/serialization/archive.hpp + include/pinocchio/serialization/joints-motion.hpp + include/pinocchio/serialization/model.hpp + include/pinocchio/serialization/fwd.hpp + include/pinocchio/serialization/motion.hpp + include/pinocchio/serialization/eigen.hpp + include/pinocchio/serialization/joints-data.hpp + include/pinocchio/serialization/spatial.hpp + include/pinocchio/serialization/joints-transform.hpp + include/pinocchio/serialization/force.hpp + include/pinocchio/serialization/joints.hpp + include/pinocchio/serialization/serializable.hpp + include/pinocchio/serialization/inertia.hpp + include/pinocchio/serialization/aligned-vector.hpp + include/pinocchio/serialization/se3.hpp + include/pinocchio/multibody/constraint-generic.hpp + include/pinocchio/multibody/data.hpp + include/pinocchio/multibody/frame.hpp + include/pinocchio/multibody/geometry.hpp + include/pinocchio/multibody/pool/geometry.hpp + include/pinocchio/multibody/pool/model.hpp + include/pinocchio/multibody/visitor.hpp + include/pinocchio/multibody/constraint-base.hpp + include/pinocchio/multibody/fcl.hpp + include/pinocchio/multibody/model.hxx + include/pinocchio/multibody/liegroup/liegroup-base.hpp + include/pinocchio/multibody/liegroup/liegroup-algo.hpp + include/pinocchio/multibody/liegroup/special-euclidean.hpp + include/pinocchio/multibody/liegroup/liegroup-base.hxx + include/pinocchio/multibody/liegroup/liegroup.hpp + include/pinocchio/multibody/liegroup/cartesian-product-variant.hpp + include/pinocchio/multibody/liegroup/liegroup-algo.hxx + include/pinocchio/multibody/liegroup/fwd.hpp + include/pinocchio/multibody/liegroup/liegroup-variant-visitors.hxx + include/pinocchio/multibody/liegroup/special-orthogonal.hpp + include/pinocchio/multibody/liegroup/cartesian-product-variant.hxx + include/pinocchio/multibody/liegroup/liegroup-generic.hpp + include/pinocchio/multibody/liegroup/cartesian-product.hpp + include/pinocchio/multibody/liegroup/liegroup-collection.hpp + include/pinocchio/multibody/liegroup/vector-space.hpp + include/pinocchio/multibody/liegroup/liegroup-variant-visitors.hpp + include/pinocchio/multibody/model.hpp + include/pinocchio/multibody/fwd.hpp + include/pinocchio/multibody/force-set.hpp + include/pinocchio/multibody/joint/joint-spherical.hpp + include/pinocchio/multibody/joint/joint-data-base.hpp + include/pinocchio/multibody/joint/joint-revolute-unaligned.hpp + include/pinocchio/multibody/joint/joint-planar.hpp + include/pinocchio/multibody/joint/joint-composite.hxx + include/pinocchio/multibody/joint/joint-basic-visitors.hpp + include/pinocchio/multibody/joint/joint-free-flyer.hpp + include/pinocchio/multibody/joint/joint-common-operations.hpp + include/pinocchio/multibody/joint/joint-model-base.hpp + include/pinocchio/multibody/joint/joint-prismatic.hpp + include/pinocchio/multibody/joint/joint-spherical-ZYX.hpp + include/pinocchio/multibody/joint/joint-composite.hpp + include/pinocchio/multibody/joint/joint-translation.hpp + include/pinocchio/multibody/joint/fwd.hpp + include/pinocchio/multibody/joint/joint-mimic.hpp + include/pinocchio/multibody/joint/joint-base.hpp + include/pinocchio/multibody/joint/joint-prismatic-unaligned.hpp + include/pinocchio/multibody/joint/joint-revolute.hpp + include/pinocchio/multibody/joint/joint-revolute-unbounded.hpp + include/pinocchio/multibody/joint/joint-generic.hpp + include/pinocchio/multibody/joint/joints.hpp + include/pinocchio/multibody/joint/joint-basic-visitors.hxx + include/pinocchio/multibody/joint/joint-revolute-unbounded-unaligned.hpp + include/pinocchio/multibody/joint/joint-collection.hpp + include/pinocchio/multibody/geometry.hxx + include/pinocchio/multibody/fcl.hxx + include/pinocchio/multibody/constraint.hpp + include/pinocchio/multibody/visitor/joint-unary-visitor.hpp + include/pinocchio/multibody/visitor/fusion.hpp + include/pinocchio/multibody/visitor/joint-binary-visitor.hpp + include/pinocchio/multibody/data.hxx + include/pinocchio/eigen-macros.hpp + include/pinocchio/deprecation.hpp + include/pinocchio/core/unary-op.hpp + include/pinocchio/core/binary-op.hpp + include/pinocchio/parsers/python.hpp + include/pinocchio/parsers/urdf.hpp + include/pinocchio/parsers/sample-models.hpp + include/pinocchio/parsers/utils.hpp + include/pinocchio/parsers/urdf/types.hpp + include/pinocchio/parsers/urdf/utils.hpp + include/pinocchio/parsers/urdf/model.hxx + include/pinocchio/parsers/urdf/geometry.hxx + include/pinocchio/parsers/srdf.hpp + include/pinocchio/parsers/sample-models.hxx + include/pinocchio/parsers/srdf.hxx + ) + +SET(${PROJECT_NAME}_URDF_SOURCES + src/parsers/urdf/model.cpp + src/parsers/urdf/geometry.cpp + src/parsers/urdf/utils.cpp + ) + +SET(${PROJECT_NAME}_URDF_PUBLIC_HEADERS + include/pinocchio/parsers/urdf.hpp + include/pinocchio/parsers/urdf/model.hxx + include/pinocchio/parsers/urdf/geometry.hxx + include/pinocchio/parsers/urdf/utils.hpp + include/pinocchio/parsers/urdf/types.hpp + ) + +SET(${PROJECT_NAME}_LIBPYTHON_PUBLIC_HEADERS + include/pinocchio/parsers/python.hpp + ) + +SET(${PROJECT_NAME}_HPP_FCL_PUBLIC_HEADERS + include/pinocchio/spatial/fcl-pinocchio-conversions.hpp + ) + +SET(_binary_headers_root ${${PROJECT_NAME}_BINARY_DIR}/include/pinocchio) +SET(${PROJECT_NAME}_CORE_PRIVATE_HEADERS + ${_binary_headers_root}/config.hpp + ${_binary_headers_root}/deprecated.hpp + ${_binary_headers_root}/warning.hpp + ) + +# Define Pinocchio Python binding sources and headers + +SET(${PROJECT_NAME}_BINDINGS_PYTHON_PUBLIC_HEADERS + include/pinocchio/bindings/python/spatial/explog.hpp + include/pinocchio/bindings/python/spatial/motion.hpp + include/pinocchio/bindings/python/spatial/force.hpp + include/pinocchio/bindings/python/spatial/inertia.hpp + include/pinocchio/bindings/python/spatial/se3.hpp + include/pinocchio/bindings/python/algorithm/algorithms.hpp + include/pinocchio/bindings/python/pybind11-all.hpp + include/pinocchio/bindings/python/pybind11.hpp + include/pinocchio/bindings/python/utils/constant.hpp + include/pinocchio/bindings/python/utils/version.hpp + include/pinocchio/bindings/python/utils/pickle-vector.hpp + include/pinocchio/bindings/python/utils/std-vector.hpp + include/pinocchio/bindings/python/utils/printable.hpp + include/pinocchio/bindings/python/utils/dependencies.hpp + include/pinocchio/bindings/python/utils/conversions.hpp + include/pinocchio/bindings/python/utils/copyable.hpp + include/pinocchio/bindings/python/utils/registration.hpp + include/pinocchio/bindings/python/utils/pickle-map.hpp + include/pinocchio/bindings/python/utils/list.hpp + include/pinocchio/bindings/python/utils/std-aligned-vector.hpp + include/pinocchio/bindings/python/utils/eigen.hpp + include/pinocchio/bindings/python/utils/std-map.hpp + include/pinocchio/bindings/python/utils/deprecation.hpp + include/pinocchio/bindings/python/utils/namespace.hpp + include/pinocchio/bindings/python/fwd.hpp + include/pinocchio/bindings/python/serialization/serialization.hpp + include/pinocchio/bindings/python/serialization/serializable.hpp + include/pinocchio/bindings/python/multibody/data.hpp + include/pinocchio/bindings/python/multibody/frame.hpp + include/pinocchio/bindings/python/multibody/geometry-model.hpp + include/pinocchio/bindings/python/multibody/model.hpp + include/pinocchio/bindings/python/multibody/joint/joint-derived.hpp + include/pinocchio/bindings/python/multibody/joint/joints-models.hpp + include/pinocchio/bindings/python/multibody/joint/joints-variant.hpp + include/pinocchio/bindings/python/multibody/joint/joints-datas.hpp + include/pinocchio/bindings/python/multibody/joint/joint.hpp + include/pinocchio/bindings/python/multibody/liegroups.hpp + include/pinocchio/bindings/python/multibody/geometry-data.hpp + include/pinocchio/bindings/python/multibody/geometry-object.hpp + include/pinocchio/bindings/python/parsers/urdf.hpp + include/pinocchio/bindings/python/parsers/sample-models.hpp + include/pinocchio/bindings/python/parsers/srdf.hpp + ) + +SET(${PROJECT_NAME}_BINDINGS_PYTHON_SOURCES + bindings/python/spatial/expose-force.cpp + bindings/python/spatial/expose-inertia.cpp + bindings/python/spatial/expose-SE3.cpp + bindings/python/spatial/expose-motion.cpp + bindings/python/spatial/expose-explog.cpp + bindings/python/spatial/expose-skew.cpp + bindings/python/algorithm/expose-model.cpp + bindings/python/algorithm/expose-centroidal.cpp + bindings/python/algorithm/expose-aba.cpp + bindings/python/algorithm/expose-algorithms.cpp + bindings/python/algorithm/expose-com.cpp + bindings/python/algorithm/expose-frames.cpp + bindings/python/algorithm/expose-energy.cpp + bindings/python/algorithm/expose-contact-dynamics.cpp + bindings/python/algorithm/expose-rnea-derivatives.cpp + bindings/python/algorithm/expose-kinematics.cpp + bindings/python/algorithm/expose-geometry.cpp + bindings/python/algorithm/expose-aba-derivatives.cpp + bindings/python/algorithm/expose-joints.cpp + bindings/python/algorithm/expose-rnea.cpp + bindings/python/algorithm/expose-cholesky.cpp + bindings/python/algorithm/expose-regressor.cpp + bindings/python/algorithm/expose-kinematics-derivatives.cpp + bindings/python/algorithm/expose-cat.cpp + bindings/python/algorithm/expose-frames-derivatives.cpp + bindings/python/algorithm/expose-centroidal-derivatives.cpp + bindings/python/algorithm/expose-jacobian.cpp + bindings/python/algorithm/expose-kinematic-regressor.cpp + bindings/python/algorithm/expose-crba.cpp + bindings/python/module.cpp + bindings/python/utils/version.cpp + bindings/python/utils/dependencies.cpp + bindings/python/utils/conversions.cpp + bindings/python/math/expose-rpy.cpp + bindings/python/serialization/serialization.cpp + bindings/python/multibody/expose-model.cpp + bindings/python/multibody/expose-liegroups.cpp + bindings/python/multibody/expose-geometry.cpp + bindings/python/multibody/expose-frame.cpp + bindings/python/multibody/expose-data.cpp + bindings/python/multibody/joint/expose-joints.cpp + bindings/python/parsers/expose-parsers.cpp + bindings/python/parsers/urdf/model.cpp + bindings/python/parsers/urdf/geometry.cpp + bindings/python/parsers/srdf.cpp + bindings/python/parsers/sample-models.cpp + ) + +SET(${PROJECT_NAME}_BINDINGS_PYTHON_LIBPYTHON_SOURCES + bindings/python/parsers/python/model.cpp + ) + +SET(${PROJECT_NAME}_BINDINGS_PYTHON_LIBPYTHON_PUBLIC_HEADERS + include/pinocchio/bindings/python/parsers/python.hpp + ) + +SET(${PROJECT_NAME}_BINDINGS_PYTHON_HPP_FCL_SOURCES + bindings/python/multibody/fcl/expose-fcl.cpp + ) + +SET(${PROJECT_NAME}_BINDINGS_PYTHON_HPP_FCL_PUBLIC_HEADERS + include/pinocchio/bindings/python/multibody/fcl/transform.hpp + ) + +SET(${PROJECT_NAME}_BINDINGS_PYTHON_OPENMP_SOURCES + bindings/python/multibody/pool/expose-pool.cpp + bindings/python/algorithm/parallel/aba.cpp + bindings/python/algorithm/parallel/expose-parallel.cpp + bindings/python/algorithm/parallel/rnea.cpp + ) + +SET(${PROJECT_NAME}_BINDINGS_PYTHON_OPENMP_PUBLIC_HEADERS + include/pinocchio/bindings/python/multibody/pool/model.hpp + ) + +SET(${PROJECT_NAME}_BINDINGS_PYTHON_HPP_FCL_OPENMP_SOURCES + bindings/python/algorithm/parallel/geometry.cpp + ) + +SET(${PROJECT_NAME}_BINDINGS_PYTHON_HPP_FCL_OPENMP_PUBLIC_HEADERS + include/pinocchio/bindings/python/multibody/pool/geometry.hpp + ) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index b730c1150d..e87c3f8c47 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -7,55 +7,19 @@ # --- INCLUDE ---------------------------------------- # ---------------------------------------------------- -# Find all headers with a relative path to avoid conflict with root path -# when applying filters -FILE(GLOB_RECURSE PUBLIC_HEADERS - RELATIVE - ${CMAKE_CURRENT_SOURCE_DIR} - ${PROJECT_SOURCE_DIR}/include/${PROJECT_NAME}/*.hpp - ${PROJECT_SOURCE_DIR}/include/${PROJECT_NAME}/*.hxx - ) - -SET(SOURCE_HEADERS_ROOT "../include/${PROJECT_NAME}") -SET(BINARY_HEADERS_ROOT "${${PROJECT_NAME}_BINARY_DIR}/include/${PROJECT_NAME}") - -# Remove bindings -LIST(FILTER PUBLIC_HEADERS EXCLUDE REGEX "^${SOURCE_HEADERS_ROOT}/bindings/.*") - -# Add generated headers -LIST(APPEND PRIVATE_HEADERS - ${BINARY_HEADERS_ROOT}/config.hpp - ${BINARY_HEADERS_ROOT}/deprecated.hpp - ${BINARY_HEADERS_ROOT}/warning.hpp) - -IF(BUILD_WITH_URDF_SUPPORT) - LIST(APPEND ${PROJECT_NAME}_SOURCES - parsers/urdf/model.cpp - parsers/urdf/geometry.cpp - parsers/urdf/utils.cpp - ) -ELSE(BUILD_WITH_URDF_SUPPORT) - LIST(REMOVE_ITEM PUBLIC_HEADERS - ${SOURCE_HEADERS_ROOT}/parsers/urdf.hpp - ${SOURCE_HEADERS_ROOT}/parsers/urdf/model.hxx - ${SOURCE_HEADERS_ROOT}/parsers/urdf/geometry.hxx - ${SOURCE_HEADERS_ROOT}/parsers/urdf/utils.hpp - ${SOURCE_HEADERS_ROOT}/parsers/urdf/types.hpp - ) -ENDIF() - -# Parser for Python model -IF(NOT BUILD_WITH_LIBPYTHON) - LIST(REMOVE_ITEM PUBLIC_HEADERS ${SOURCE_HEADERS_ROOT}/parsers/python.hpp) -ENDIF(BUILD_WITH_LIBPYTHON) - -LIST(APPEND ${PROJECT_NAME}_SOURCES utils/file-explorer.cpp) - # Extract the compile definitions of the project for export GET_DIRECTORY_PROPERTY(CURRENT_COMPILE_DEFINITIONS COMPILE_DEFINITIONS) +REMOVE_PATH_FROM_LIST(${PROJECT_NAME}_CORE_SOURCES "src/" ${PROJECT_NAME}_CORE_SOURCES) +PREPEND_PATH_FROM_LIST(${PROJECT_NAME}_CORE_PUBLIC_HEADERS + "../" + ${PROJECT_NAME}_CORE_PUBLIC_HEADERS) + # Create target libpinocchio.so -ADD_LIBRARY(${PROJECT_NAME} SHARED ${PUBLIC_HEADERS} ${PRIVATE_HEADERS} ${${PROJECT_NAME}_SOURCES}) +ADD_LIBRARY(${PROJECT_NAME} SHARED + ${${PROJECT_NAME}_CORE_SOURCES} + ${${PROJECT_NAME}_CORE_PUBLIC_HEADERS} + ${${PROJECT_NAME}_CORE_PRIVATE_HEADERS}) SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES LINKER_LANGUAGE CXX INSTALL_RPATH "\$ORIGIN" @@ -68,10 +32,6 @@ ADD_LIBRARY(${PROJECT_NAME}_headers INTERFACE) # Exclude parts from hppfcl which is not header only IF(BUILD_WITH_HPP_FCL_SUPPORT) LIST(REMOVE_ITEM CURRENT_COMPILE_DEFINITIONS PINOCCHIO_WITH_HPP_FCL) -ELSE(BUILD_WITH_HPP_FCL_SUPPORT) - LIST(REMOVE_ITEM PUBLIC_HEADERS - ${SOURCE_HEADERS_ROOT}/spatial/fcl-pinocchio-conversions.hpp - ) ENDIF(BUILD_WITH_HPP_FCL_SUPPORT) TARGET_COMPILE_DEFINITIONS(${PROJECT_NAME}_headers INTERFACE ${CURRENT_COMPILE_DEFINITIONS}) @@ -131,9 +91,9 @@ IF(hpp-fcl_FOUND) TARGET_LINK_LIBRARIES(${PROJECT_NAME} PUBLIC hpp-fcl::hpp-fcl) ENDIF(hpp-fcl_FOUND) -ADD_HEADER_GROUP(PUBLIC_HEADERS) -ADD_HEADER_GROUP(PRIVATE_HEADERS) -ADD_SOURCE_GROUP(${PROJECT_NAME}_SOURCES) +ADD_SOURCE_GROUP(${PROJECT_NAME}_CORE_SOURCES) +ADD_HEADER_GROUP(${PROJECT_NAME}_CORE_PUBLIC_HEADERS) +ADD_HEADER_GROUP(${PROJECT_NAME}_CORE_PRIVATE_HEADERS) INSTALL(TARGETS ${PROJECT_NAME} EXPORT ${TARGETS_EXPORT_NAME} @@ -146,11 +106,3 @@ INSTALL(TARGETS ${PROJECT_NAME}_headers LIBRARY DESTINATION ${CMAKE_INSTALL_FULL_LIBDIR} ARCHIVE DESTINATION ${CMAKE_INSTALL_FULL_LIBDIR} RUNTIME DESTINATION ${CMAKE_INSTALL_FULL_BINDIR}) - -FOREACH(header ${PUBLIC_HEADERS}) - GET_FILENAME_COMPONENT(header_path ${header} PATH) - STRING(REPLACE "../" "" non_relative_header_path ${header_path}) - INSTALL(FILES ${header} - DESTINATION ${CMAKE_INSTALL_PREFIX}/${non_relative_header_path} - PERMISSIONS OWNER_READ GROUP_READ WORLD_READ OWNER_WRITE) -ENDFOREACH(header) From f45268397c7cab6eb47141ebe83f7e7142f7a1e6 Mon Sep 17 00:00:00 2001 From: Joris Vaillant Date: Fri, 20 Oct 2023 16:39:38 +0200 Subject: [PATCH 10/13] [cmake] Remove optional header from the main sources list --- sources.cmake | 2 -- 1 file changed, 2 deletions(-) diff --git a/sources.cmake b/sources.cmake index a0e9aca375..6051443985 100644 --- a/sources.cmake +++ b/sources.cmake @@ -11,7 +11,6 @@ SET(${PROJECT_NAME}_CORE_PUBLIC_HEADERS include/pinocchio/spatial/explog-quaternion.hpp include/pinocchio/spatial/log.hxx include/pinocchio/spatial/spatial-axis.hpp - include/pinocchio/spatial/fcl-pinocchio-conversions.hpp include/pinocchio/spatial/symmetric3.hpp include/pinocchio/spatial/act-on-set.hpp include/pinocchio/spatial/fwd.hpp @@ -221,7 +220,6 @@ SET(${PROJECT_NAME}_CORE_PUBLIC_HEADERS include/pinocchio/deprecation.hpp include/pinocchio/core/unary-op.hpp include/pinocchio/core/binary-op.hpp - include/pinocchio/parsers/python.hpp include/pinocchio/parsers/urdf.hpp include/pinocchio/parsers/sample-models.hpp include/pinocchio/parsers/utils.hpp From e2bc410c0735121eb90923586cc0617c31fe5e9c Mon Sep 17 00:00:00 2001 From: Joris Vaillant Date: Mon, 23 Oct 2023 13:35:35 +0200 Subject: [PATCH 11/13] Python remove useless include --- include/pinocchio/parsers/python.hpp | 2 -- 1 file changed, 2 deletions(-) diff --git a/include/pinocchio/parsers/python.hpp b/include/pinocchio/parsers/python.hpp index ba6e9a2b38..6acc9ddfdb 100644 --- a/include/pinocchio/parsers/python.hpp +++ b/include/pinocchio/parsers/python.hpp @@ -5,8 +5,6 @@ #ifndef __pinocchio_parser_python_hpp__ #define __pinocchio_parser_python_hpp__ -#include "pinocchio/macros.hpp" - #include "pinocchio/bindings/python/parsers/python.hpp" #endif // ifndef __pinocchio_parser_python_hpp__ From 82b436ab78dac017b0e28c0388ece4d9f12a1f4d Mon Sep 17 00:00:00 2001 From: Joris Vaillant Date: Mon, 23 Oct 2023 13:37:36 +0200 Subject: [PATCH 12/13] Update CMakeLists.txt Co-authored-by: Guilhem Saurel --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index ae4df9d713..843ff9e015 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -247,7 +247,7 @@ IF(BUILD_PYTHON_INTERFACE) ) ENDIF(BUILD_PYTHON_INTERFACE) -# Macros to update souces path in subdirs +# Macros to update sources path in subdirs FUNCTION(REMOVE_PATH_FROM_LIST list_name path_name dest_list) SET(list_name_) FOREACH(header ${${list_name}}) From d16211874c1de2af7f301db0dc4017b76bcf94ec Mon Sep 17 00:00:00 2001 From: Joris Vaillant Date: Tue, 24 Oct 2023 10:37:30 +0200 Subject: [PATCH 13/13] cmake: Rename private headers into generated headers --- CMakeLists.txt | 12 ++++++++---- sources.cmake | 2 +- src/CMakeLists.txt | 4 ++-- 3 files changed, 11 insertions(+), 7 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 843ff9e015..80b616b8d2 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -201,11 +201,13 @@ ENDIF(BUILD_WITH_HPP_FCL_SUPPORT) # Sources definition INCLUDE(sources.cmake) +# URDF sources IF(BUILD_WITH_URDF_SUPPORT) LIST(APPEND ${PROJECT_NAME}_CORE_SOURCES ${${PROJECT_NAME}_URDF_SOURCES}) LIST(APPEND ${PROJECT_NAME}_CORE_PUBLIC_HEADERS ${${PROJECT_NAME}_URDF_PUBLIC_HEADERS}) ENDIF(BUILD_WITH_URDF_SUPPORT) +# LibPython sources IF(BUILD_WITH_LIBPYTHON) LIST(APPEND ${PROJECT_NAME}_CORE_PUBLIC_HEADERS ${${PROJECT_NAME}_LIBPYTHON_PUBLIC_HEADERS}) @@ -215,6 +217,7 @@ IF(BUILD_WITH_LIBPYTHON) ${${PROJECT_NAME}_BINDINGS_PYTHON_LIBPYTHON_PUBLIC_HEADERS}) ENDIF(BUILD_WITH_LIBPYTHON) +# HPP-FCL sources IF(BUILD_WITH_HPP_FCL_SUPPORT) LIST(APPEND ${PROJECT_NAME}_CORE_PUBLIC_HEADERS ${${PROJECT_NAME}_HPP_FCL_PUBLIC_HEADERS}) @@ -224,16 +227,17 @@ IF(BUILD_WITH_HPP_FCL_SUPPORT) ${${PROJECT_NAME}_BINDINGS_PYTHON_HPP_FCL_PUBLIC_HEADERS}) ENDIF(BUILD_WITH_HPP_FCL_SUPPORT) +# OpenMP and HPP-FCL+OpenMP sources IF(BUILD_WITH_OPENMP_SUPPORT) LIST(APPEND ${PROJECT_NAME}_BINDINGS_PYTHON_SOURCES ${${PROJECT_NAME}_BINDINGS_PYTHON_OPENMP_SOURCES}) LIST(APPEND ${PROJECT_NAME}_BINDINGS_PYTHON_PUBLIC_HEADERS ${${PROJECT_NAME}_BINDINGS_PYTHON_OPENMP_PUBLIC_HEADERS}) IF(BUILD_WITH_HPP_FCL_SUPPORT) - LIST(APPEND ${PROJECT_NAME}_BINDINGS_PYTHON_SOURCES - ${${PROJECT_NAME}_BINDINGS_PYTHON_HPP_FCL_OPENMP_SOURCES}) - LIST(APPEND ${PROJECT_NAME}_BINDINGS_PYTHON_PUBLIC_HEADERS - ${${PROJECT_NAME}_BINDINGS_PYTHON_HPP_FCL_OPENMP_PUBLIC_HEADERS}) + LIST(APPEND ${PROJECT_NAME}_BINDINGS_PYTHON_SOURCES + ${${PROJECT_NAME}_BINDINGS_PYTHON_HPP_FCL_OPENMP_SOURCES}) + LIST(APPEND ${PROJECT_NAME}_BINDINGS_PYTHON_PUBLIC_HEADERS + ${${PROJECT_NAME}_BINDINGS_PYTHON_HPP_FCL_OPENMP_PUBLIC_HEADERS}) ENDIF(BUILD_WITH_HPP_FCL_SUPPORT) ENDIF() diff --git a/sources.cmake b/sources.cmake index 6051443985..1d320c3451 100644 --- a/sources.cmake +++ b/sources.cmake @@ -255,7 +255,7 @@ SET(${PROJECT_NAME}_HPP_FCL_PUBLIC_HEADERS ) SET(_binary_headers_root ${${PROJECT_NAME}_BINARY_DIR}/include/pinocchio) -SET(${PROJECT_NAME}_CORE_PRIVATE_HEADERS +SET(${PROJECT_NAME}_CORE_GENERATED_PUBLIC_HEADERS ${_binary_headers_root}/config.hpp ${_binary_headers_root}/deprecated.hpp ${_binary_headers_root}/warning.hpp diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index e87c3f8c47..f2c3095893 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -19,7 +19,7 @@ PREPEND_PATH_FROM_LIST(${PROJECT_NAME}_CORE_PUBLIC_HEADERS ADD_LIBRARY(${PROJECT_NAME} SHARED ${${PROJECT_NAME}_CORE_SOURCES} ${${PROJECT_NAME}_CORE_PUBLIC_HEADERS} - ${${PROJECT_NAME}_CORE_PRIVATE_HEADERS}) + ${${PROJECT_NAME}_CORE_GENERATED_PUBLIC_HEADERS}) SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES LINKER_LANGUAGE CXX INSTALL_RPATH "\$ORIGIN" @@ -93,7 +93,7 @@ ENDIF(hpp-fcl_FOUND) ADD_SOURCE_GROUP(${PROJECT_NAME}_CORE_SOURCES) ADD_HEADER_GROUP(${PROJECT_NAME}_CORE_PUBLIC_HEADERS) -ADD_HEADER_GROUP(${PROJECT_NAME}_CORE_PRIVATE_HEADERS) +ADD_HEADER_GROUP(${PROJECT_NAME}_CORE_GENERATED_PUBLIC_HEADERS) INSTALL(TARGETS ${PROJECT_NAME} EXPORT ${TARGETS_EXPORT_NAME}