Jody Hagins
Prolific C++ Engineer in the high frequency trading space and ISO C++ Standards Committee Member
Get the build machines you need for your project.
Linux, Windows, MacOS or custom environments for other targets, deployed fast & just for you.
cmake-re is designed for CMake build hermeticity. Run your CMake build locally or remotely and benefit from our caching and remoting technology.
More power at your fingertip with build machines with hundreds of cores and terabytes of RAM when you need them.
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!
A small amount of configuration is all that is required to scale from CMake RE L1 build to the L2 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.
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.
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.
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.
CMake RE can help you reduce CI cost significantly by improving the usage of the machines, dynamic scaling and multilevel caching.
Discover what tipi's Code. Reuse. Build. is all about!
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
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
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.
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
In this demo we are running a local linux build with post-build test execution of the project tipi-build/simple-example.
Jody Hagins
Prolific C++ Engineer in the high frequency trading space and ISO C++ Standards Committee Member
Andreas Büchin
Team Leader TDG Technology Gateways
Endress+Hauser Digital Solutions
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.
Upcoming events:
Past events: