Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add additional tests #20

Merged
merged 15 commits into from
Feb 18, 2025
Merged

Add additional tests #20

merged 15 commits into from
Feb 18, 2025

Conversation

taminob
Copy link
Owner

@taminob taminob commented Feb 14, 2025

  • Add cmake_tests for testing the installation in combination with find_package in cmake projects
  • General CI improvements
    • Rename/Merge cpp-build and cpp-unittest
    • Change cmake linting tool and resolve resulting CMake issues
  • Resolve Fix C++17 compatibility mode #17

@taminob taminob self-assigned this Feb 14, 2025
@taminob taminob force-pushed the feature/add-more-tests branch 2 times, most recently from e1e48e2 to 6ac40c6 Compare February 14, 2025 21:39
In order to test the cmake configuration of this repository, add a test
CMake project which uses this library as a dependency.
This project will then be built with the different possible
configurations to ensure they work as expected.
These tests are expected to fail because they try to use the shared
library when only the static version is installed and the other way
around.
@taminob taminob force-pushed the feature/add-more-tests branch 3 times, most recently from 5fefccc to bfa715c Compare February 17, 2025 00:02
For this, an additional job was added to the build-and-test workflow.
Previously, the fmt::fmt target was not imported when this library was
imported via cmake.
Additionally, the necessary compile definition is set in projects using
it as a dependency via the target-specific target_compile_definitions().
CMake 3.30 removed the FindBoost module in favor of BoostConfig.cmake
which is included in boost v1.70 or newer. This new mechanism can be
used by simply adding "CONFIG" to the find_package call.
Alternatively, the minimum CMake version of 3.30 can be specified to
avoid the warning and explicitly use the backwards-compatible fallback
mechanism implemented in this CMake version.

Since many systems do not have CMake 3.30 yet, this commit upgrades
boost to v1.70 which is reasonably seasoned and should be available in
most cases and uses the new mechanism.
Additionally, make line width in cmake-format workflow explicit since
for the linting it needs to be increased.
This is because some lines cannot be formatted with only 80 characters
per line. Thus, the character limit per line is increased to 90 for now
in the linting job.
@taminob taminob force-pushed the feature/add-more-tests branch from 96f9a49 to 4cf1294 Compare February 18, 2025 20:33
@taminob taminob merged commit da87a31 into main Feb 18, 2025
11 checks passed
@taminob taminob deleted the feature/add-more-tests branch February 18, 2025 20:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Fix C++17 compatibility mode
1 participant