diff --git a/CHANGELOG.md b/CHANGELOG.md
index a094fd120038e325ce5da8c60e515196c2daeb4c..ec06a130b886fc1bc1c83d7aeab3a5bf2579f86c 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -8,6 +8,9 @@ current (development)
 - Feature: Add support for `Input`'s insert mode. Add `InputOption::insert`
   option. Added by @mingsheng13.
 
+### Build
+- Support for cmake's "unity/jumbo" builds. Fixed by @ClausKlein.
+
 5.0.0
 -----
 
diff --git a/cmake/ftxui_test.cmake b/cmake/ftxui_test.cmake
index 71caa6919ea4be4c1a4a93f81dbd492f59e1dc74..0b9a86df333d7757e6f530201a3ed3d58ffe756f 100644
--- a/cmake/ftxui_test.cmake
+++ b/cmake/ftxui_test.cmake
@@ -59,6 +59,11 @@ target_include_directories(ftxui-tests
 )
 target_compile_features(ftxui-tests PRIVATE cxx_std_20)
 
+# Disable unity build for tests. There are several files defining the same
+# function in different anonymous namespaces. This is not allowed in unity
+# builds, as it would result in multiple definitions of the same function.
+set_target_properties(ftxui-tests PROPERTIES UNITY_BUILD OFF)
+
 if (FTXUI_MICROSOFT_TERMINAL_FALLBACK)
   target_compile_definitions(ftxui-tests
     PRIVATE "FTXUI_MICROSOFT_TERMINAL_FALLBACK")
diff --git a/src/ftxui/screen/util.hpp b/src/ftxui/screen/util.hpp
index e2d765747f26fa0ccd35f76ecb1c59d77136831a..91a769b8a858d464274610f864ac017022ce17bf 100644
--- a/src/ftxui/screen/util.hpp
+++ b/src/ftxui/screen/util.hpp
@@ -1,6 +1,9 @@
 // Copyright 2022 Arthur Sonzogni. All rights reserved.
 // Use of this source code is governed by the MIT license that can be found in
 // the LICENSE file.
+#ifndef FTXUI_SCREEN_UTIL_HPP
+#define FTXUI_SCREEN_UTIL_HPP
+
 namespace ftxui {
 namespace util {
 
@@ -12,3 +15,5 @@ constexpr const T& clamp(const T& v, const T& lo, const T& hi) {
 
 }  // namespace util
 }  // namespace ftxui
+
+#endif /* end of include guard: FTXUI_SCREEN_UTIL_HPP */