This project doesn't require any special command-line flags to build to keep things simple.
Here are the steps for building in release mode with a single-configuration generator, like the Unix Makefiles one:
cmake -S . -B build -D CMAKE_BUILD_TYPE=Release
cmake --build build
Here are the steps for building in release mode with a multi-configuration generator, like the Visual Studio ones:
cmake -S . -B build
cmake --build build --config Release
Note that MSVC by default is not standards compliant and you need to pass some
flags to make it behave properly. See the flags-msvc
preset in the
CMakePresets.json file for the flags and with what
variable to provide them to CMake during configuration.
This project doesn't require any special command-line flags to install to keep things simple. As a prerequisite, the project has to be built with the above commands already.
Here is the command for installing the release mode artifacts with a single-configuration generator, like the Unix Makefiles one:
cmake --install build
Here is the command for installing the release mode artifacts with a multi-configuration generator, like the Visual Studio ones:
cmake --install build --config Release
This project exports a CMake package to be used with the find_package
command of CMake:
- Package name:
ccontainer
- Target name:
ccontainer::ccontainer
Example usage:
find_package(ccontainer REQUIRED)
# Declare the imported target as a build requirement using PRIVATE, where
# project_target is a target created in the consuming project
target_link_libraries(
project_target PRIVATE
ccontainer::ccontainer
)
The CMAKE_INSTALL_INCLUDEDIR
is set to a path other than just include
if
the project is configured as a top level project to avoid indirectly including
other libraries when installed to a common prefix. Please review the
install-rules.cmake file for the full set of
install rules.