🎉 init(cmake): init modern cmake template
This commit is contained in:
46
README.md
Normal file
46
README.md
Normal file
@@ -0,0 +1,46 @@
|
||||
# CMake Template
|
||||
|
||||
This is an example project using CMake.
|
||||
|
||||
The requirements are:
|
||||
|
||||
- CMake 3.11 or better; 3.14+ highly recommended.
|
||||
- A C++17 compatible compiler
|
||||
- The Boost libararies (header only part is fine)
|
||||
- Git
|
||||
- Doxygen (optional)
|
||||
|
||||
To configure:
|
||||
|
||||
```bash
|
||||
cmake -S . -B build
|
||||
```
|
||||
|
||||
Add `-GNinja` if you have Ninja.
|
||||
|
||||
To build:
|
||||
|
||||
```bash
|
||||
cmake --build build
|
||||
```
|
||||
|
||||
To test (`--target` can be written as `-t` in CMake 3.15+):
|
||||
|
||||
```bash
|
||||
cmake --build build --target test
|
||||
```
|
||||
|
||||
To build docs (requires Doxygen, output in `build/docs/html`):
|
||||
|
||||
```bash
|
||||
cmake --build build --target docs
|
||||
```
|
||||
|
||||
To use an IDE, such as Xcode:
|
||||
|
||||
```bash
|
||||
cmake -S . -B xbuild -GXcode
|
||||
cmake --open xbuild
|
||||
```
|
||||
|
||||
The CMakeLists show off several useful design patterns for CMake.
|
Reference in New Issue
Block a user