Documentation
- ๐ Welcome to the CMake RE Documentation
- ๐ Getting started with CMake RE for C++
- ๐ฆ Getting started with CMake RE for Rust (alpha)
- Key Principles and Goals
- ๐ชฉ Developer Machine Digital Twin
- ๐ฉ๐ผโ๐ป cmake-re --help | Command Line Reference
- ๐ฆ L1 Build cache
- ๐ฆ L1 Build Cache Sharing
- ๐ฆ FetchContent() and Package Managers
- ๐ป Environments
- ๐ป Environment Layers Specifications
- ๐ป Self-hosted runners
- Authentication
- Ignore and exclude - Caching and Mirroring
- Accessing hermetic builds folders
- Continuous integration
- Environment variables
- ๐ก๏ธ Data Security and Privacy
- tipi - ๐ฎ EXPERIMENTAL - CMakeLists.txt Generator
- tipi - ๐ฎ EXPERIMENTAL - Getting started with tipi CMakeLists generator
- tipi - Compile options
- tipi - Integrated Package Manager
- tipi - Running tests
- tipi - IDE Integration
๐ Welcome to the CMake RE Documentation
CMake RE ( Remote Execution for CMake ) is a solution for native developers to accelerate their build and test workflows, shifting CI left to enjoy building at the speed of their fingertips enabled best-in-class dual layered bulk and fine-grained caching.
cmake-re
is a thin CMake wrapper augmenting CMake with remoting, caching and fine grained parallelel execution of tests leading to faster builds with zero lock-in. If it works with CMake, it simply works faster with CMake RE with zero lock-in in true CMake flexible mindset.
We are regularly adding new features and publish updates on our blog and newsletter frequently. Please get in touch to learn more about our roadmap.
Supported Languages
Any language supported by CMake is supported by CMake RE. However proper remoting and caching requires additional customizations and support to reap off full build performance, which we track here.
Programming Language | Support Status |
---|---|
C & C++ | โ beta |
Rust | ๐ฆ alpha |
Swift | alpha |
Missing your favorite language ? You can support it with custom environments.
What can I do with CMake RE?
CMake RE is a suite that provides the following 4 main foundational features to achieve fast, easy and scalable Rust and C++ development:
- Containerized CMake Builds
- stable & known toolchain
- reproducible builds
- hermeticity
- Build folder caching ( CMake RE L1 Cache ) connected straight to sources in git repositories
- Local to speed up your on-prem CI nodes
- Remote & shared to improve team wide velocity
- Cache as a dependency manager by sharing dependency builds
- Build environments provisioning and build distribution on powerful autoscaled cloud build machines with hundreds of cores and terabytes of RAM ( CMake RE L2 Remoting )
- Cross-platform building + testing on Linux, Windows, macOS or custom.
Can I build with CMake RE locally?
Yes! You can benefit from the CMake RE solution by using it in a purely local environment. In this case the builds do not run in a remote execution evironment, but rather benefit from guaranteed build reproducibility with CMake RE containerized builds and CMake RE L1 local caching.
Open Source
We believe in the power of the community, that is why we made cmake-re free. We are contributors of many open source project. You can access our Open Source projects on our GitHub organisation.
For teams and company-wide usage we also have a commercial services, see Support Plans.
๐งโ๐ We are here to help
๐ก Tipi by EngFlow will be out of beta soon! Come back regularly for updates.
We thrive on feedback! Please get in touch at hello@tipi.build
for any questions or to discuss your project ideas.
Found an error or want to add more info? Write an issue or contribute changes to this documentation at tipi-build/docs on