[llvm-branch-commits] [libcxx] release/22.x: [libc++] Increase the minimum deployment target on macOS to 11.0 (#176094) (PR #181428)
via llvm-branch-commits
llvm-branch-commits at lists.llvm.org
Fri Feb 13 14:12:10 PST 2026
https://github.com/llvmbot updated https://github.com/llvm/llvm-project/pull/181428
>From c4b615bcb30f3e8e87ccbcd6ec2331067483aea3 Mon Sep 17 00:00:00 2001
From: h-vetinari <h.vetinari at gmx.com>
Date: Sat, 14 Feb 2026 09:03:41 +1100
Subject: [PATCH] [libc++] Increase the minimum deployment target on macOS to
11.0 (#176094)
#166172 moved the effective minimum deployment target on macOS to 10.15
(because `aligned_alloc` is not defined before that in the C stdlib),
and indeed, it was mentioned in that PR that libc++ only supports macOS
11 and later.
This PR rectifies the documentation and the code to reflect the actually
supported deployment targets on macOS. See [1] for additional discussion
about this.
[1]: https://discourse.llvm.org/t/minimum-macos-deployment-target-increases-to-11-0-in-v22-1-visibility-discussion-on-update-policy
(cherry picked from commit d4854177dd0513a07e3f2d8b1b5642f8226cead5)
---
libcxx/docs/ReleaseNotes/22.rst | 2 ++
libcxx/docs/index.rst | 2 +-
libcxx/include/__configuration/availability.h | 6 +++---
3 files changed, 6 insertions(+), 4 deletions(-)
diff --git a/libcxx/docs/ReleaseNotes/22.rst b/libcxx/docs/ReleaseNotes/22.rst
index 623bf409d7ebb..59990d1aa5feb 100644
--- a/libcxx/docs/ReleaseNotes/22.rst
+++ b/libcxx/docs/ReleaseNotes/22.rst
@@ -106,6 +106,8 @@ Improvements and New Features
Deprecations and Removals
-------------------------
+- The minimally supported deployment target on macOS has been increased to 11.0.
+
Potentially breaking changes
----------------------------
diff --git a/libcxx/docs/index.rst b/libcxx/docs/index.rst
index 20c63efaac156..6381803e682e3 100644
--- a/libcxx/docs/index.rst
+++ b/libcxx/docs/index.rst
@@ -143,7 +143,7 @@ Libc++ also supports common platforms and architectures:
===================== ========================= ============================
Target platform Target architecture Notes
===================== ========================= ============================
-macOS 10.13+ i386, x86_64, arm64
+macOS 11.0+ i386, x86_64, arm64 Deployment target lower bound is the minimum between what Chrome resp. the last stable `Xcode release <https://developer.apple.com/support/xcode>`_ support
FreeBSD 12+ i386, x86_64, arm
Linux i386, x86_64, arm, arm64 Only glibc-2.24 and later and no other libc is officially supported
Android 5.0+ i386, x86_64, arm, arm64
diff --git a/libcxx/include/__configuration/availability.h b/libcxx/include/__configuration/availability.h
index 2c76347090fca..40e11b3314980 100644
--- a/libcxx/include/__configuration/availability.h
+++ b/libcxx/include/__configuration/availability.h
@@ -196,11 +196,11 @@
__attribute__((availability(bridgeos, strict, introduced = 6.0))) \
__attribute__((availability(driverkit, strict, introduced = 21.3)))
-# if (defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ < 101300) || \
+# if (defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ < 110000) || \
(defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ < 150000) || \
(defined(__ENVIRONMENT_TV_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_TV_OS_VERSION_MIN_REQUIRED__ < 150000) || \
- (defined(__ENVIRONMENT_WATCH_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_WATCH_OS_VERSION_MIN_REQUIRED__ < 70000) || \
- (defined(__ENVIRONMENT_DRIVERKIT_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_DRIVERKIT_VERSION_MIN_REQUIRED__ < 190000)
+ (defined(__ENVIRONMENT_WATCH_OS_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_WATCH_OS_VERSION_MIN_REQUIRED__ < 80000) || \
+ (defined(__ENVIRONMENT_DRIVERKIT_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_DRIVERKIT_VERSION_MIN_REQUIRED__ < 200000)
# warning "The selected platform is no longer supported by libc++."
# endif
More information about the llvm-branch-commits
mailing list