https://github.com/pcolby/qtfit
Native Qt library for Garmin FIT
https://github.com/pcolby/qtfit
cmake garmin garmin-fit lib qt
Last synced: 3 months ago
JSON representation
Native Qt library for Garmin FIT
- Host: GitHub
- URL: https://github.com/pcolby/qtfit
- Owner: pcolby
- License: gpl-3.0
- Created: 2021-07-20T11:19:39.000Z (almost 4 years ago)
- Default Branch: main
- Last Pushed: 2022-09-04T00:25:34.000Z (almost 3 years ago)
- Last Synced: 2025-01-17T13:28:24.397Z (5 months ago)
- Topics: cmake, garmin, garmin-fit, lib, qt
- Language: C++
- Homepage: https://pcolby.github.io/qtfit/
- Size: 31.8 MB
- Stars: 2
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: COPYING.LESSER.md
Awesome Lists containing this project
README
# QtFit
[](https://github.com/pcolby/qtfit/actions/workflows/build.yaml)
[](https://github.com/pcolby/qtfit/actions/workflows/static.yaml)
[](https://coveralls.io/github/pcolby/qtfit)
[](https://github.com/pcolby/qtfit/releases/latest)
[](https://www.gnu.org/licenses/lgpl-3.0.html)## Requirements
* Qt5 or Qt6
## Building from Source
~~~{.sh}
cmake -E make_directory
cmake -D CMAKE_BUILD_TYPE=Release -S -B
cmake --build
ctest --test-dir --verbose
~~~### Test Coverage
Similar to above, but specify `ENABLE_COVERAGE=YES` for `cmake`, which will add dependencies on [gcov] and [LCOV].
~~~{.sh}
cmake -E make_directory
cmake -D CMAKE_BUILD_TYPE=Release -D ENABLE_COVERAGE=YES -S -B
cmake --build
ctest --test-dir --verbose
cmake --build --target coverage coverage-html
# ls /test/coverage.info # Coverage summary data.
# ls /test/coverage/ # HTML view.
~~~The first target (`coverage`) uses `lcov` to generate `coverage.info` summary. And the second target (`coverage-html`)
used LCOV's `genhtml` to generate an HTML view of `coverage.info`.Also available via [Coveralls](https://coveralls.io/github/pcolby/qtfit) (or [Codecov](https://app.codecov.io/gh/pcolby/qtfit)).
### Documentation
Configure the same as above, but build the `doc` and (optionally) `doc-internal` targets.
~~~{.sh}
cmake -E make_directory
cmake -S -B
cmake --build --target doc doc-internal
# ls /doc/public # Library end-user documentation
# ls /doc/internal # Internal library developer documentation
~~~These are regularly published to Github Pages via Github Actions:
* [public end-user docs](https://pcolby.github.io/qtfit/main/doc/index.html)
* [internal dev docs](https://pcolby.github.io/qtfit/main/int/index.html)[gcov]: https://gcc.gnu.org/onlinedocs/gcc/Gcov.html "gcov — a Test Coverage Program"
[LCOV]: http://ltp.sourceforge.net/coverage/lcov.php "LCOV — the LTP GCOV extension"