Refactor CMake with JRL CMake Modules v2#612
Refactor CMake with JRL CMake Modules v2#612ahoarau wants to merge 64 commits intostack-of-tasks:develfrom
Conversation
e114b10 to
7d7943a
Compare
jorisv
left a comment
There was a problem hiding this comment.
Nice work, the CMakeLists are way clearer.
unittest/cpp/CMakeLists.txt
Outdated
|
|
||
| set(TEST_TYPE "boost::optional") | ||
| set(MODNAME boost_optional) | ||
| configure_file(optional.cpp.in ${CMAKE_CURRENT_SOURCE_DIR}/boost_optional.cpp) |
There was a problem hiding this comment.
I'm not a huge fan of generating file in the source directory. It can be commited by mistake.
Maybe allow eigenpy_add_test to have a SOURCE_FILE optional argument that can take absolute path source file as argument.
There was a problem hiding this comment.
It was intentional as configure_file checks for the content before writing the file. I reverted to generating in the build dir. That's OK as well.
unittest/cpp/boost_optional.cpp
Outdated
unittest/cpp/.clang-format-ignore
Outdated
There was a problem hiding this comment.
To remove when generated in binary dir
unittest/cpp/boost_variant.cpp
Outdated
unittest/cpp/std_optional.cpp
Outdated
There was a problem hiding this comment.
Prefix all options with EIGENPY_ when jrl_option support back compatibility.
There was a problem hiding this comment.
Let's do that in another PR.
CMakeLists.txt
Outdated
| export_boost_default_options() | ||
| find_package(Boost REQUIRED) | ||
| search_for_boost_python(REQUIRED) | ||
| jrl_find_package(Python 3.8 REQUIRED COMPONENTS Interpreter Development.Module NumPy) |
There was a problem hiding this comment.
Why you don't use jrl_find_python ?
unittest/cpp/CMakeLists.txt
Outdated
| TEST ${test_name} | ||
| PROPERTY | ||
| ENVIRONMENT_MODIFICATION | ||
| "PYTHONPATH=path_list_prepend:$<TARGET_FILE_DIR:eigenpy>/.." |
There was a problem hiding this comment.
I don't think this one is useful.
This give the build/lib/.. directory where no imported lib can be found.
| include/eigenpy/decompositions/SVDBase.hpp | ||
| include/eigenpy/decompositions/BDCSVD.hpp | ||
| include/eigenpy/decompositions/JacobiSVD.hpp | ||
| include/eigenpy/decompositions/minres.hpp |
There was a problem hiding this comment.
| include/eigenpy/decompositions/minres.hpp | |
| include/eigenpy/decompositions/minres.hpp | |
| # Eigen | |
| include/eigenpy/eigen/EigenBase.hpp |
There was a problem hiding this comment.
Add ament support before we allow to merge.
original is from templates/deprecated.hpp.in
they are now autogenerated by jrl v2
configure_file will overrite boost_optional.cpp only if the content changes. This allow to a quick check on the actual code, and simplifies the cmake

This PR is a full rewrite of the CMake files with the JRL CMake Modules v2.
c++17minimum required