Skip to content

Resolve "EXTERN: Adapt to Conan 2"

Joscha Schmiedt requested to merge f-73-extern-adapt-to-conan-2-0 into dev

Summary

Updating from Conan 1 to Conan 2.5 required several changes, both on the conanfile.py as well as the CMakeLists.txt file(s).

Related to

Related MR for integration tests: caosdb-cppinttest!35 (merged)

Focus

The biggest changes are in conanfile.py and CMakeLists.txt all according to the migration guide. Crucial here are

  • Conan now doesn't appear in the CMakeLists.txt files anymore. Instead, Conan generates CMakeToolChain files, which handle all the necessary includes etc. The toolchain files are passed to CMake as arguments.
  • Packages are included in our CMakeLists.txt using CMake's FindPackage
  • Conan 2.0 builds into build/<build_type>, i.e. build/Release or build/Debug

Test Environment

How to set up a test environment for manual testing?

Check List for the Author

Please, prepare your MR for a review. Be sure to write a summary and a focus and create gitlab comments for the reviewer. They should guide the reviewer through the changes, explain your changes and also point out open questions. For further good practices have a look at our review guidelines

  • All automated tests pass
  • Reference related issues
  • Up-to-date CHANGELOG.md (or not necessary)
  • Up-to-date JSON schema (or not necessary)
  • Appropriate user and developer documentation (or not necessary)
    • How do I use the software? Assume "stupid" users.
    • How do I develop or debug the software? Assume novice developers.
  • Annotations in code (Gitlab comments)
    • Intent of new code
    • Problems with old code
    • Why this implementation?

Check List for the Reviewer

  • I understand the intent of this MR
  • All automated tests pass
  • Up-to-date CHANGELOG.md (or not necessary)
  • Appropriate user and developer documentation (or not necessary)
  • The test environment setup works and the intended behavior is reproducible in the test environment
  • In-code documentation and comments are up-to-date.
  • Check: Are there specifications? Are they satisfied?

For further good practices have a look at our review guidelines.

Edited by Florian Spreckelsen

Merge request reports

Loading