- Latest C++23 Ready Presets: Take advantage of the latest C++ features with our up-to-date presets.
- Code Quality Tools Targets: Integrated targets for maintaining high code quality.
- CMake Package Manager (CPM): Simplifies dependency management.
- Flexible Doxygen Configuration: Easily integrated Doxygen setup for documentation.
- Easy to Setup CTests: Simplified testing setup with CTest.
- Docker Ready: Pre-configured for seamless Docker integration.
- Compatibility: Works with QtCreator, CLion, Visual Studio, and KDevelop.
- Cross-Platform: Ready for Linux, Windows, and macOS.
- CMake-Driven: All setup is done through CMake, eliminating the need for specific scripts, making CI/CD setup straightforward.
- Clone the repository via
git clone --recurse-submodules <repository URL>
- Install the required dependencies:
cmake 3.25.0+
c++ compiler with cpp 23 support
ninja
(optional) cmake/cfg/*.cmake tools
Open your terminal and run:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Using Homebrew:
brew install cmake
Using Homebrew:
brew install llvm
Using Homebrew:
brew install doxygen
Open Command Prompt as Administrator and run:
@"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"
Using Chocolatey:
choco install cmake
Using Chocolatey:
choco install visualstudio2019buildtools
Using Chocolatey:
choco install doxygen
sudo apt update
sudo apt install cmake
sudo apt install g++
sudo apt install doxygen
sudo dnf check-update
sudo dnf install cmake
sudo dnf install gcc-c++
sudo dnf install doxygen
- Make sure to check the specific package manager commands for your Linux distribution if you're not using Ubuntu or Fedora.
- For Windows, you may also consider installing the full Visual Studio IDE, which includes a C++ compiler and CMake support.
cmake --preset=release .
cd build/release
cmake --build . --config release
For more build configurations see CMakePresets.json
Also, you can use cmake-gui/cmake-cli app to simplify the proccess locally.
cd build/release
ctest --output-on-failure
sudo xargs rm < install_manifest.txt
docker build -t my-image -f docker/Dockerfile .
All you need is to install doxygen and run these commands:
cd build/release
cmake --build . --target doxygen
To browse the generated by cmake html documentation:
cd build/release/docs/doxygen/html
python -m http.server 8080
- Add android build
- Add ios build
- Add SECURITY.md and CODE_OF_CONDUCT.md
If you'd like to contribute to this project, feel free to fork the repository and submit a pull request with your changes.Contributions are always welcome, whether it's an improvement to the existing program or a new program in a different language.
This project is licensed under the AGPL-3.0 License — see the [LICENSE] file for details.
Thanks to the developers of CMake and CTest for providing the tools necessary to build and test this program. Also, thanks to the open-source community for providing resources and support for C++ development.