diff --git a/README.md b/README.md index 8c926001ce0e67ee179d9d50526ceb7121a000d6..f0d405b274cd2abb15f21b634261bebeba0645c3 100644 --- a/README.md +++ b/README.md @@ -4,4 +4,13 @@ A collection of CMake helper functions and tools that are common to all IHTA C++ ## Features -t.b.d. +- `ihta_add_library`: Adds a library target with all common settings. + This also allows to add a unit test executable with the same command. + Furthermore, if unit tests are desired, one can also use the option `TEST_INTERNALS` to be able to test the internal parts of the library. +- Checks if [`CPM.cmake`](https://github.com/cpm-cmake/CPM.cmake) is available and downloads it if not. + For this, it expects the `CPM.cmake` file to be in `${CMAKE_BINARY_DIR}/cmake`. +- Download some common CMake libraries in [`GroupSourcesByFolder.cmake`](https://github.com/TheLartians/GroupSourcesByFolder.cmake) and [`PackageProject.cmake`](https://github.com/TheLartians/PackageProject.cmake) and patches them for our build system. +- `init_project`: Initializes some common settings for a project. + Primarily sets the output `bin` and `lib` directories so debugging works on windows builds. +- `ihta_add_test`: Adds a unit test executable target including downloading the dependencies, CTest registration and optional code coverage. +- `build_doc`: Builds doxygen documentation with nice styling.