📐 Build tool
Keep your Mac awake during CMake builds
Configuring a project and then driving the build with cmake --build can run for a long time on a large C++ codebase. AwakeMate keeps your Mac awake through both phases.
Free 14-day trial · one-time $39.99 · no telemetry · macOS 13+
When your Mac sleeps mid-CMake
A fresh CMake configure followed by cmake --build . compiles and links a whole C++ tree, often the slowest builds you'll run, with sustained CPU and no input. macOS sleeps in the middle, the build is cut off, and a partly written CMake cache or an interrupted link step can force you to reconfigure and rebuild from scratch.
AwakeMate keeps it awake while CMake runs
AwakeMate recognises CMake by its process name, cmake, covering both the configure step and cmake --build. When CMake drives an underlying generator the work continues under tools like make or ninja, so adding those alongside cmake covers the full pipeline.
Detected process: cmake
Tip: turn on "Sleep when tools go idle"
CMake builds are long, heavy CPU runs that end cleanly. With idle-sleep on, AwakeMate keeps the Mac awake while cmake is configuring or building and lets it sleep once the build returns - which suits the big C++ compile you kick off and leave.
Get the most out of it
- CMake usually hands the actual compile to
makeorninja. Add whichever generator you use so the build phase stays covered end to end. - Idle-sleep is a great fit for overnight C++ builds: the Mac stays up through the compile and sleeps the moment it lands.
More questions about CMaketap to expand
Does cmake alone cover the whole build?
The configure step and cmake --build run as cmake. The compile is often handed to make or ninja, so add your generator's process to cover everything.
Will it change my energy settings?
No. AwakeMate uses the same gentle IOKit power assertion as caffeinate, blocking idle sleep only and never touching your energy preferences.
Does it need Accessibility or any special access?
No. Process detection needs no permissions at all - it just reads the short process name on-device.
What's the best way to keep my Mac awake during a long CMake build?
Add the cmake process to AwakeMate (plus your generator, make or ninja) and it keeps the Mac awake automatically through both configure and build. With idle-sleep on it powers through a long C++ compile and then lets the Mac sleep once the build returns - no manual command to remember.
Why not just set Battery to Never or run cmake --build under caffeinate?
Both work, but they are blunt instruments. Setting sleep to "Never" holds the Mac awake for everything until you switch it back, and caffeinate -i cmake --build . only covers that one command. AwakeMate automates the same IOKit assertion per build tool and, with idle-sleep on, lets the Mac sleep the instant the build is done - leaving your saved energy settings untouched.
I'm running a big C++ build overnight on battery - will it flatten the Mac?
AwakeMate has a low-battery cutoff you can set, so it stops holding the Mac awake once the charge drops below your threshold and lets it sleep to protect the battery. It never overrides your saved energy settings, so thermal throttling still applies through the compile.
Will it keep my Mac awake for CMake with the lid closed, even on battery?
Yes. Turn on "Keep awake with the lid closed" in Settings - Options and approve the one-time helper; AwakeMate then keeps the Mac awake with the lid shut while CMake runs, and dims the built-in screen so it is not draining the battery under the lid. It works on most Apple Silicon Macs (Apple forces sleep on some, so close your lid once to confirm). It works on battery too, but real work drains it faster, so keep it on power for long runs. See how it works.