mirror of
https://github.com/TheLartians/ModernCppStarter.git
synced 2025-08-30 21:51:12 +02:00
update README
update CPM.cmake to version 0.30.0
This commit is contained in:
parent
49fc73f82c
commit
d9210698c9
4 changed files with 9 additions and 5 deletions
4
.github/workflows/documentation.yaml
vendored
4
.github/workflows/documentation.yaml
vendored
|
@ -22,12 +22,12 @@ jobs:
|
|||
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
brew install doxygen
|
||||
brew install doxygen graphviz
|
||||
pip3 install jinja2 Pygments
|
||||
|
||||
- name: Build
|
||||
run: |
|
||||
cmake -Sdocumentation -Bbuild
|
||||
cmake -S documentation -B build
|
||||
cmake --build build --target GenerateDocs
|
||||
|
||||
- name: Publish
|
||||
|
|
|
@ -17,6 +17,8 @@ This template is the result of learnings from many previous projects and should
|
|||
## Features
|
||||
|
||||
- [Modern CMake practices](https://pabloariasal.github.io/2018/02/19/its-time-to-do-cmake-right/)
|
||||
- [CMake for library authors: Best practice](https://crascit.com/2019/10/16/cppcon-2019-deep-cmake-for-library-authors/)
|
||||
- [Modernize C++ using clang-tidy](https://www.kdab.com/clang-tidy-part-1-modernize-source-code-using-c11c14/)
|
||||
- Suited for single header libraries and projects of any scale
|
||||
- Clean separation of library and executable code
|
||||
- Integrated test suite
|
||||
|
@ -41,7 +43,7 @@ This template is the result of learnings from many previous projects and should
|
|||
Eventually, you can remove any unused files, such as the standalone directory or irrelevant github workflows for your project.
|
||||
Feel free to replace the License with one suited for your project.
|
||||
|
||||
To cleanly separate the library and subproject code, the outer `CMakeList.txt` only defines the library itself while the tests and other subprojects are self-contained in their own directories.
|
||||
To cleanly separate the library and subproject code, the outer `CMakeList.txt` only defines the library itself while the tests and other subprojects are self-contained in their own directories.
|
||||
During development it is usually convenient to [build all subprojects at once](#build-everything-at-once).
|
||||
|
||||
### Build and run the standalone target
|
||||
|
@ -63,7 +65,7 @@ cmake -Htest -Bbuild/test
|
|||
cmake --build build/test
|
||||
CTEST_OUTPUT_ON_FAILURE=1 cmake --build build/test --target test
|
||||
|
||||
# or simply call the executable:
|
||||
# or simply call the executable:
|
||||
./build/test/GreeterTests
|
||||
```
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
set(CPM_DOWNLOAD_VERSION 0.28.4)
|
||||
set(CPM_DOWNLOAD_VERSION 0.30.0)
|
||||
|
||||
if(CPM_SOURCE_CACHE)
|
||||
# Expand relative path. This is important if the provided path contains a tilde (~)
|
||||
|
|
|
@ -7,6 +7,8 @@ project(GreeterDocs)
|
|||
include(../cmake/CPM.cmake)
|
||||
CPMUsePackageLock(package-lock.cmake)
|
||||
|
||||
include(../cmake/options.cmake)
|
||||
|
||||
CPMAddPackage(NAME Greeter SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/..)
|
||||
|
||||
CPMAddPackage(
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue