--- ./src/cmake/externalpackages.cmake	2024-12-05 05:29:41.000000000 +0100
+++ ./src/cmake/fix-externalpackages.cmake	2025-06-29 21:05:17.517569272 +0200
@@ -117,7 +117,7 @@
 # LLVM library setup
 checked_find_package (LLVM REQUIRED
                       VERSION_MIN 9.0
-                      VERSION_MAX 19.9
+                      VERSION_MAX 20.9
                       PRINT LLVM_SYSTEM_LIBRARIES CLANG_LIBRARIES)
 # ensure include directory is added (in case of non-standard locations
 include_directories (BEFORE SYSTEM "${LLVM_INCLUDES}")

--- ./src/include/OSL/platform.h	2024-12-05 05:29:41.000000000 +0100
+++ ./src/include/OSL/fix-platform.h	2025-06-29 21:08:25.389584349 +0200
@@ -20,6 +20,7 @@
 
 #include <cstring>
 #include <memory>
+#include <cstdint>
 
 #include <OSL/oslversion.h>
 

--- ./src/liboslexec/llvm_util.cpp	2025-06-29 21:12:28.283603841 +0200
+++ ./src/liboslexec/fix-llvm_util.cpp	2025-06-29 21:12:47.262605365 +0200
@@ -3204,7 +3204,11 @@
 llvm::Type*
 LLVM_Util::type_union(cspan<llvm::Type*> types)
 {
+#if OSL_LLVM_VERSION >= 200
+    llvm::DataLayout target(module()->getDataLayout());
+#else
     llvm::DataLayout target(module());
+#endif
     size_t max_size  = 0;
     size_t max_align = 1;
     for (auto t : types) {
