The build platform for native developpers

Get native builds ready in minutes


cmake-re beta offers fast remote C++, Rust, Swift builds to enable developers to do their best work.


The build platform for native developpers

cmake-re at a glance

Easy cross platform with tipi

Truly enjoyable cross platform

Get the build machines you need for your project.
Linux, Windows, MacOS or custom environments for other targets, deployed fast & just for you.

More than just compiling
cmake-re enables borderless cross platform flows by enabling you to do more than builds on the tipi.build build node: run tests, debug remotely, or on your own customer hardware with selfhosted runners.

Cached CMake builds
 

cmake-re is designed for CMake build hermeticity. Run your CMake build locally or remotely and benefit from our caching and remoting technology.

C++ and beyond
Discover the cmake-re caching and cloud platform experience for other languages like Rust and Swift.

Blazing fast cloud builds
 

More power at your fingertip with build machines with hundreds of cores and terabytes of RAM when you need them.

Sized right for your CI
Enjoy builds on machines sized right for your project by building with tipi in your CI workflows: read the documentation
More than just compiling
cmake-re enables borderless cross platform flows by enabling you to do more than builds on the tipi.build build node: run tests, debug remotely, or on your own customer hardware with selfhosted runners.
C++ and beyond
Discover the cmake-re caching and cloud platform experience for other languages like Rust and Swift.
Sized right for your CI
Enjoy builds on machines sized right for your project by building with tipi in your CI workflows: read the documentation
Tipi x EngFlow cluster

CMake at the scale of your projects with cmake-re


From CMake RE local with its reproducible containerized CMake builds over fast cloud builds with CMake RE L1 to massively distributed builds in a CMake RE L2 cluster, we got your back for projects of all sizes!

Unlock the possibilities of EngFlow's and tipi's CMake Remote Execution and start distributing CMake builds across a cluster of machines and remotely caches the results to make your builds even faster!


Tipi x EngFlow cluster

Seamless transition

A small amount of configuration is all that is required to scale from CMake RE L1 build to the L2 cluster.


Distribute CMake build tasks accross the cluster

Your sources are synchronized with your tipi build node and distributed to EngFlow cluster from there.

At all levels of the build caches are used to further increase the build speed and enable the sharing of build artifacts between all members of your team.

Cluster sized to fit

The EngFlow cluster is a managed service that can be customized to your requirements in terms of size of nodes, auto-scaling requirements, expected workload and more.

The build cluster is deployed to a private cloud account and remains isolated from other users for maximum security of your code.

Amazing caching

Improve cache hits accross your organization by combining EngFlow's highly granular RE cache with tipi's revisioned caching technology for blazing fast incremental builds.

Distributed CMake builds

Scale your builds well beyond the limits of what a single machine can deliver with CMake Remote Execution. From hundreds to tens of thousands of cores, CMake RE can grow with your build and help you deliver faster and more reliably.

Cost control for your CI

CMake RE can help you reduce CI cost significantly by improving the usage of the machines, dynamic scaling and multilevel caching.

Use the tools you know & love

Discover about all integrations in our documentation

Nerdy stats

Using cmake-re

Our unique combination of ready made environments, from-source dependency management and automatic-caching backed remote builds for CMake is designed to make building C++ applications at scale a truly enjoyable experience.

Discover what tipi's Code. Reuse. Build. is all about!

Code.


Reuse.


Build.

Code.

Code instead of debugging CMake find_package()

cmake-re eases developers onboarding by providing containerized hermetic builds, with well configured C++ toolchains in minutes. Remotely and on your local machine.

Get started in minutes

Getting cmake-re is a single click away:

Reuse.

Reusable & Shareable Build Cache

cmake-re is not pretending to be a package manager, instead we complement existing practices in C++ with a powerful build cache. For example we make standard CMake FetchContent() a powerful package management tool by enhancing it through a dedicated provider that binds it with our unique cache technique based on source mirroring and build+install tree compression.

Learn more about our L1 Build Cache

Example

Depending on Boost from Github and pulling the dependency from the cache using cmake-re is as easy as :

Include(FetchContent)

FetchContent_Declare(Boost
  GIT_REPOSITORY https://github.com/boostorg/boost.git
  GIT_TAG        32da69a36f84c5255af8a994951918c258bac601 # Boost 1.80
  OVERRIDE_FIND_PACKAGE
)

FetchContent_MakeAvailable(Boost)
find_package(boost_filesystem CONFIG REQUIRED)

add_executable(app boost.cpp)
target_link_libraries(app Boost::filesystem)

You can even get SPDX NTIA Compliant Software Bills of Material ( SBOMs ) generated to meet your opensource license compliance goals with :

sbom_add(TARGET app)
sbom_finalize()

Read about a complete example here: Getting started with CMake RE

Build.

Run local hermetic and --remote builds in seconds, automatic caching included.

cmake-re deploys ready made images to powerful, single user cloud nodes in seconds and runs your build remotely. You can switch the build target easily and even provide your own environment description if required.

Additionally you can also execute your tests and run your application on the remote node to speed up your tests.

Using tipi in your CI pipeline eliminates the gap between developers builds and CI/CD. This bring CI to your fingertips and reduces cost by enabling cache sharing.

Enjoy fast & easy remote CMake Builds with cmake-re

Run a --remote build

Easily build for different remote OSes and toolchains by selecting your environment:

$ cmake-re -S . -B build/linux -DCMAKE_TOOLCHAIN_FILE=environment/linux.cmake --remote
...
$ cmake-re -S . -B build/windows -DCMAKE_TOOLCHAIN_FILE=environment/windows.cmake --remote 
...

Read more about cmake-re build environments in our documentation

A cmake-re build in real-time

In this demo we are running a local linux build with post-build test execution of the project tipi-build/simple-example.

Made with love in Zürich

tipi is made with ❤️ in beautiful Switzerland by an international team

Here's what our users say

We teamed up with tipi.build, creators of CMake RE and HermeticFetchContent, to optimize our CMake build targeting hundreds of configurations. Their approach of source-based, cached builds has not only accelerated our build but also improved safety by allowing us to enable sanitizers across our dependency chain.

Jopdy Hagins

Jody Hagins

Prolific C++ Engineer in the high frequency trading space and ISO C++ Standards Committee Member


Usually our team had one or two developers regularly busy integrating libraries, writing or fixing CMakeLists. Having tipi.build simply automate this, is a huge time-saver.

The impressive factor 8 compilation speedup allows us to focus on what matters: beautiful and carefully tested code.

Andreas Büchin

Andreas Büchin

Team Leader TDG Technology Gateways

Endress+Hauser Digital Solutions

Community 🫶

We want to see C++ and the whole ecosystem flourish. We contribute to the continued evolution of C++ and the ecosystem through our memberships at the ISO as well as at the Standard C++ Foundation.
We are sponsoring community events and we offer opportunities to facilitate contributions to the ISO C++ Standard. Get in touch with us to learn more about this.

Tipi is a member the Standard C++ Foundation

Meet us here

Upcoming events:

Apr
7

2025

Munich Build Meetup

Register now: Meetup.build


Past events:

Mar
14

2025

Zürich C++ March Meetup

Damien Buhl talk: CMake CPS: What It Is and Why It Matters

Register on Meetup now: C++ Zürich Meetup

Nov
25

2024

Zürich C++ November Meetup

Sponsored by tipi

Register on Meetup now: C++ Zürich Meetup

Sep
15 - 20

2024

Cppcon 2024

Sponsored by tipi.build and EngFlow

tipi.build and EngFlow sponsor the Cppcon

Nov
29

2023

Zürich C++ November Meetup

Sponsored by tipi

Register on Meetup now: C++ Zürich Meetup

Nov
12 - 14

2023

MeetingCPP 2023