1
0
Fork 0
mirror of https://github.com/TheLartians/ModernCppStarter.git synced 2025-08-30 21:51:12 +02:00

update readme

This commit is contained in:
Lars Melchior 2020-04-14 14:43:42 +02:00
parent 8e77d3e9fc
commit 7a8809648c

View file

@ -81,18 +81,18 @@ See [Format.cmake](https://github.com/TheLartians/Format.cmake) for more options
Yes, however you will need to change the library type to an `INTERFACE` library as documented in the [CMakeLists.txt](CMakeLists.txt).
- You are using `GLOB` to add source files in CMakeLists.txt. Isn't that evil?
- I see you are using `GLOB` to add source files in CMakeLists.txt. Isn't that evil?
Glob is considered bad because changes to source files won't be automatically caught by CMakes builders and you will need remember to invoke CMake on any changes.
I personally prefer the `GLOB` solution for its simplicity, but feel free to change it to explicitly listing sources.
- I'm adding external dependencies to my project using CPM. Will this force users to use CPM as well?
CPM should be mostly invisible for your library users as it's self-contained and dependency free.
CPM.cmake should be invisible for your library users as it's a self-contained CMake Script.
If problems do arise, they can always opt-out by defining `CPM_USE_LOCAL_PACKAGES`, which will override all calls to `CPMAddPackage` with `find_package`.
If you are using `CPMFindPackage` instead of `CPMAddPackage`, CPM will always try to use `find_package` to add packages.
This approach should be compatible with any common C++ package manager without any user intervention, however at the cost of reproducible builds.
For more info, see the [CPM.cmake documentation](https://github.com/TheLartians/CPM.cmake).
If you concerned about this, you should prefer using `CPMFindPackage` instead of `CPMAddPackage`, as then CPM will try to use `find_package` to add packages whenever possible.
`CPMFindPackage` approach should also be compatible with any common C++ package manager without modifications, however at the cost of reproducible builds.
For more information, see the [CPM.cmake documentation](https://github.com/TheLartians/CPM.cmake).
- Can I configure and build my project offline?