Skip to content

Commit

Permalink
doc: updating installation and reuse section
Browse files Browse the repository at this point in the history
  • Loading branch information
Becheler committed Dec 20, 2023
1 parent 207d2d3 commit 42007ec
Showing 1 changed file with 11 additions and 4 deletions.
15 changes: 11 additions & 4 deletions docs/2-installation.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,25 +12,32 @@ The library provides many options for reuse, and the most suitable approach depe

## Structure and Dependencies

This repository contains three independent CMake-based projects:
This repository contains several independent CMake-based projects:

* `./template`
- entry point for user development and onboarding, [integrated with Visual Studio Code](#easiest-devcontainer-on-visual-studio-code)
- the `template/main.cpp` file includes the library and can be easily edited and recompiled without breaking the library.
* `./src`
- header-only project containing the Quetzal-CoaTL library
- `./src/CMakeList.txt` file is intended as an entry point for library users
- it depends on the following external dependencies:
- [GDAL](https://gdal.org/) for geographic data manipulation
- [Boost](https://www.boost.org/doc/libs/master/index.html) for general purpose C++ utilities
- [range-v3](https://github.com/ericniebler/range-v3), a range library for C++14/17/20.
* `./test`
- the unit and integration tests suite
* `./example`
- the example tests suite that are used in the Tutorial documentation section
* `.`
- entry point for library development and continuous deployment (CI/CD) processes.
- it wraps `./src` project with a cmake project, examples, tests and docs.
- if you want to build the documentation without Conan, [Doxygen](https://www.doxygen.nl/)
- if you want to build the documentation, [Doxygen](https://www.doxygen.nl/)
is required to generate the documentation from the annotated C++ sources.
* `./test_package`
- library installation and Conan packaging verification

@remark
There are two entry points:
There are three entry points:
- The `./template/CMakeLists.txt` is not meant to be modified directly (unless the user decides), but it makes the template demonstration project [easier to use in Visual Studio Code](#easiest-devcontainer-on-visual-studio-code)
- The top-level `./CMakeLists.txt` file is intended solely for Quetzal developers and contributors to build the entire project code (example and tests) with highly restrictive compilation flags.
- The `./src/CMakeLists.txt` file, which contains a pure library definition and is intended for customers who prefer using CMake's `add_subdirectory()` to manage dependencies.

Expand Down

0 comments on commit 42007ec

Please sign in to comment.