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 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;