[llvm] 9e9edb5 - [CAS] Fix build for older macOS SDK (before 13.0) (#159133)

via llvm-commits llvm-commits at lists.llvm.org
Tue Sep 16 10:50:13 PDT 2025


Author: Steven Wu
Date: 2025-09-16T17:50:09Z
New Revision: 9e9edb583400ffc647622445459d700d0ad61b3d

URL: https://github.com/llvm/llvm-project/commit/9e9edb583400ffc647622445459d700d0ad61b3d
DIFF: https://github.com/llvm/llvm-project/commit/9e9edb583400ffc647622445459d700d0ad61b3d.diff

LOG: [CAS] Fix build for older macOS SDK (before 13.0) (#159133)

Fix a build failure and back-deployment problem for macOS before 13.0.

Added: 
    

Modified: 
    llvm/lib/CAS/OnDiskCommon.cpp

Removed: 
    


################################################################################
diff  --git a/llvm/lib/CAS/OnDiskCommon.cpp b/llvm/lib/CAS/OnDiskCommon.cpp
index f7765c58944c5..25aa06bfe64da 100644
--- a/llvm/lib/CAS/OnDiskCommon.cpp
+++ b/llvm/lib/CAS/OnDiskCommon.cpp
@@ -105,7 +105,13 @@ Expected<size_t> cas::ondisk::preallocateFileTail(int FD, size_t CurrentSize,
   return NewSize;
 #elif defined(__APPLE__)
   fstore_t FAlloc;
-  FAlloc.fst_flags = F_ALLOCATEALL | F_ALLOCATEPERSIST;
+  FAlloc.fst_flags = F_ALLOCATEALL;
+#if defined(F_ALLOCATEPERSIST) &&                                              \
+    defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) &&                  \
+    __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 130000
+  // F_ALLOCATEPERSIST is introduced in macOS 13.
+  FAlloc.fst_flags |= F_ALLOCATEPERSIST;
+#endif
   FAlloc.fst_posmode = F_PEOFPOSMODE;
   FAlloc.fst_offset = 0;
   FAlloc.fst_length = NewSize - CurrentSize;


        


More information about the llvm-commits mailing list