diff --git a/.gitlab/os-macos.yml b/.gitlab/os-macos.yml
index 1ce96b30cf742e4f6e9d71109d92f00626a7e5c7..9c4a920797ae73e86e634e957e06276394032763 100644
--- a/.gitlab/os-macos.yml
+++ b/.gitlab/os-macos.yml
@@ -7,7 +7,7 @@
         GIT_CLONE_PATH: "$CI_BUILDS_DIR/cmake ci ext/$CI_CONCURRENT_ID"
         # TODO: Factor this out so that each job selects the Xcode version to
         # use so that different versions can be tested in a single pipeline.
-        DEVELOPER_DIR: "/Applications/Xcode-12.4.app/Contents/Developer"
+        DEVELOPER_DIR: "/Applications/Xcode-12.5.app/Contents/Developer"
         # Avoid conflicting with other projects running on the same machine.
         SCCACHE_SERVER_PORT: 4227
 
@@ -87,7 +87,7 @@
         - cmake # Since this is a bare runner, pin to a project.
         - macos
         - shell
-        - xcode-12.4
+        - xcode-12.5
         - nonconcurrent
 
 .macos_x86_64_builder_tags_package:
@@ -95,7 +95,7 @@
         - cmake # Since this is a bare runner, pin to a project.
         - macos
         - shell
-        - xcode-12.4
+        - xcode-12.5
         - nonconcurrent
         - finder
 
@@ -104,7 +104,7 @@
         - cmake # Since this is a bare runner, pin to a project.
         - macos
         - shell
-        - xcode-12.4
+        - xcode-12.5
         - concurrent
 
 .macos_arm64_builder_tags:
@@ -112,7 +112,7 @@
         - cmake # Since this is a bare runner, pin to a project.
         - macos-arm64
         - shell
-        - xcode-12.4
+        - xcode-12.5
         - nonconcurrent
 
 .macos_arm64_builder_ext_tags:
@@ -120,7 +120,7 @@
         - cmake # Since this is a bare runner, pin to a project.
         - macos-arm64
         - shell
-        - xcode-12.4
+        - xcode-12.5
         - concurrent
 
 ## macOS-specific scripts