We can't find the internet
Attempting to reconnect
Something went wrong!
Hang in there while we get back on track
import CMake, CMake and C++20 Modules - Bill Hoffman - CppCon 2022
Learn how CMake is evolving to support C++20 modules, improving build and installation of projects, and enhancing configurability with its testing and installer systems.
- CMake’s goal is to give compile-time portability, and it has been successful in achieving this.
- CMake has been used in many projects, including ITK, a C++ library.
- CMake is now working on supporting C++20 modules, which will allow for easier build and installation of projects.
- CMake’s experimental CXX module API allows for the creation of C++ modules, which can be used to create libraries and executables.
- The CXX module API uses a JSON file to store the module’s metadata and dependencies.
- CMake has improved its file-based API to support C++ modules, including the ability to install and uninstall modules.
- CMake has also improved its support for system include directories and has added support for Ninja, a build system.
- CMake’s C++ module support is still experimental, but it is expected to be fully supported in the future.
- CMake’s build system is designed to be highly configurable and can be used to build a wide range of projects.
- CMake’s installer is also highly configurable and can be used to create installers for a wide range of platforms.
- CMake’s testing system, ctest, is also highly configurable and can be used to run tests on a wide range of platforms.
- CMake’s support for C++20 modules is still experimental, but it is expected to be fully supported in the future.
- CMake’s support for C++ modules is not limited to C++20, but it will also support C++17 and C++14 modules.
- CMake’s support for C++ modules is not limited to the C++ standard library, but it will also support third-party libraries and frameworks.
- CMake’s support for C++ modules is not limited to the build system, but it will also support the testing system and the installer.