Skip to content

Commit 8c9ffe9

Browse files
authored
Fix iOS debug build and update xcode
1 parent 9132737 commit 8c9ffe9

2 files changed

Lines changed: 12 additions & 6 deletions

File tree

.github/workflows/ci.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -44,9 +44,9 @@ jobs:
4444
- { name: Linux GCC OpenGL ES, os: ubuntu-22.04, flags: -DSFML_OPENGL_ES=ON -DSFML_RUN_DISPLAY_TESTS=OFF -GNinja }
4545
- { name: macOS x64, os: macos-13, flags: -GNinja }
4646
- { name: macOS x64 Xcode, os: macos-13, flags: -GXcode }
47-
- { name: macOS arm64, os: macos-14, flags: -GNinja -DSFML_RUN_AUDIO_DEVICE_TESTS=OFF }
48-
- { name: iOS, os: macos-14, flags: -DCMAKE_SYSTEM_NAME=iOS -DCMAKE_OSX_ARCHITECTURES=arm64 }
49-
- { name: iOS Xcode, os: macos-14, flags: -DCMAKE_SYSTEM_NAME=iOS -GXcode -DCMAKE_XCODE_ATTRIBUTE_CODE_SIGNING_ALLOWED=NO }
47+
- { name: macOS arm64, os: macos-15, flags: -GNinja -DSFML_RUN_AUDIO_DEVICE_TESTS=OFF }
48+
- { name: iOS, os: macos-15, flags: -DCMAKE_SYSTEM_NAME=iOS -DCMAKE_OSX_ARCHITECTURES=arm64 }
49+
- { name: iOS Xcode, os: macos-15, flags: -DCMAKE_SYSTEM_NAME=iOS -GXcode -DCMAKE_XCODE_ATTRIBUTE_CODE_SIGNING_ALLOWED=NO }
5050
config:
5151
- { name: Shared, flags: -DBUILD_SHARED_LIBS=ON }
5252
- { name: Static, flags: -DBUILD_SHARED_LIBS=OFF }

CMakeLists.txt

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -183,9 +183,15 @@ endif()
183183

184184
option(SFML_ENABLE_STDLIB_ASSERTIONS "Enable standard library assertions" OFF)
185185
if(SFML_ENABLE_STDLIB_ASSERTIONS)
186-
# intentionally using `add_definitions` here to propagate defines to subdirectories
187-
add_definitions(-D_GLIBCXX_ASSERTIONS=1) # see https://gcc.gnu.org/wiki/LibstdcxxDebugMode
188-
add_definitions(-D_LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_EXTENSIVE) # see https://libcxx.llvm.org/Hardening.html
186+
# intentionally using `add_compile_definitions` here to propagate defines to subdirectories
187+
add_compile_definitions(_GLIBCXX_ASSERTIONS=1) # see https://gcc.gnu.org/wiki/LibstdcxxDebugMode
188+
189+
# Xcode has a property to control this - adding the define ourselves causes multiple definitions
190+
if(XCODE)
191+
set(CMAKE_XCODE_ATTRIBUTE_CLANG_CXX_STANDARD_LIBRARY_HARDENING "Yes (extensive)")
192+
else()
193+
add_compile_definitions(_LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_EXTENSIVE) # see https://libcxx.llvm.org/Hardening.html
194+
endif()
189195
endif()
190196

191197
# set the output directory for SFML DLLs and executables

0 commit comments

Comments
 (0)