artivis / manif

A small C++11 header-only library for Lie theory.
https://artivis.github.io/manif
MIT License
1.46k stars 239 forks source link

Support read C++ standard via CMAKE_CXX_STANDARD when compiling Python bindings #275

Closed traversaro closed 1 year ago

traversaro commented 1 year ago

Fix https://github.com/artivis/manif/issues/274 . Due to the need of supporting pybind11, I always default to use the C++11 standard unless the user specify CMAKE_CXX_STANDARD, even if the compiler standard version is different from C++11, such as C++17 for GCC11.

I also added a pybind11-cmake job on Ubuntu 20.04 to ensure that the compilation works fine with pybind11 2.4.3 .

codecov[bot] commented 1 year ago

Codecov Report

Merging #275 (905e919) into devel (bc1e90f) will decrease coverage by 0.01%. The diff coverage is n/a.

:exclamation: Current head 905e919 differs from pull request most recent head 2e4a798. Consider uploading reports for the commit 2e4a798 to get more accurate results

@@            Coverage Diff             @@
##            devel     #275      +/-   ##
==========================================
- Coverage   97.96%   97.96%   -0.01%     
==========================================
  Files          55       55              
  Lines        1818     1817       -1     
==========================================
- Hits         1781     1780       -1     
  Misses         37       37              
traversaro commented 1 year ago

The PR is ready for review. The decrease in code coverage I think it is spurious, while I am not sure about the pybind11-cmake step hanging, probably given that I changed that step there is something not matching between devel and the PR branch (and the job is required?), but I would expect everything to work fine once the PR is merged.