🚧🛠️
This project uses CMake and vcpkg for a reasonable build with reasonable dependency management:
CMakeLists.txt
contains a project definition andvcpkg
integration bits.vcpkg.json
is a manifest file that defines a list of project dependencies.vcpkg
itself is checked-out as a submodule, so don't forget to run:git submodule update --init
.vcpkg/bootstrap-vcpkg.sh
.
- How to set up the build:
cmake -S . -B <build_dir> -DCMAKE_BUILD_TYPE=<Debug|Release> [-G Ninja]
- How to build the binary:
cmake --build <build_dir>
- How to run the built binary: run
<build_dir>/<binary_path>
The top-level Makefile
defines a number of phony targets that act as shortcuts for specific cmake invocations:
bootstrap
sets upvcpkg
configure/reconfigure
prepare cmake buildbuild
to compile the coderun*
to run various executablesclean