@@ -101,11 +101,11 @@ target_sources(libultraship PRIVATE ${Source_Files__Window__Gui})
101
101
102
102
file (GLOB Source_Files__Utils RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "utils/*.h" "utils/*.cpp" "utils/*.c" )
103
103
104
- if (CMAKE_SYSTEM_NAME STREQUAL "Darwin" )
105
- list (APPEND Source_Files__Utils ${CMAKE_CURRENT_SOURCE_DIR} /utils/OSXFolderManager .mm)
106
- set_source_files_properties (${CMAKE_CURRENT_SOURCE_DIR} /utils/OSXFolderManager .mm PROPERTIES COMPILE_FLAGS -fno-objc-arc)
104
+ if (CMAKE_SYSTEM_NAME STREQUAL "Darwin" OR CMAKE_SYSTEM_NAME STREQUAL "iOS" )
105
+ list (APPEND Source_Files__Utils ${CMAKE_CURRENT_SOURCE_DIR} /utils/AppleFolderManager .mm)
106
+ set_source_files_properties (${CMAKE_CURRENT_SOURCE_DIR} /utils/AppleFolderManager .mm PROPERTIES COMPILE_FLAGS -fno-objc-arc)
107
107
else ()
108
- list (REMOVE_ITEM Header_Files__include ${CMAKE_CURRENT_SOURCE_DIR} /utils/OSXFolderManager .h)
108
+ list (REMOVE_ITEM Header_Files__include ${CMAKE_CURRENT_SOURCE_DIR} /utils/AppleFolderManager .h)
109
109
endif ()
110
110
111
111
source_group ("utils" FILES ${Source_Files__Utils} )
@@ -131,10 +131,10 @@ elseif (CMAKE_SYSTEM_NAME STREQUAL "NintendoSwitch")
131
131
${CMAKE_CURRENT_SOURCE_DIR} /port/switch/SwitchImpl.cpp
132
132
${CMAKE_CURRENT_SOURCE_DIR} /port/switch/SwitchPerformanceProfiles.h
133
133
)
134
- elseif (CMAKE_SYSTEM_NAME STREQUAL "Android" )
134
+ elseif (CMAKE_SYSTEM_NAME STREQUAL "Android" OR CMAKE_SYSTEM_NAME STREQUAL "iOS" )
135
135
set (Source_Files__Port
136
- ${CMAKE_CURRENT_SOURCE_DIR} /port/android/AndroidImpl .h
137
- ${CMAKE_CURRENT_SOURCE_DIR} /port/android/AndroidImpl .cpp
136
+ ${CMAKE_CURRENT_SOURCE_DIR} /port/mobile/MobileImpl .h
137
+ ${CMAKE_CURRENT_SOURCE_DIR} /port/mobile/MobileImpl .cpp
138
138
)
139
139
endif ()
140
140
@@ -167,10 +167,14 @@ if (NOT CMAKE_SYSTEM_NAME STREQUAL "Windows")
167
167
list (FILTER Source_Files__Graphic EXCLUDE REGEX "graphic/Fast3D/dxsdk/*" )
168
168
endif ()
169
169
170
- if (NOT CMAKE_SYSTEM_NAME STREQUAL "Darwin" )
170
+ if (NOT CMAKE_SYSTEM_NAME STREQUAL "Darwin" AND NOT CMAKE_SYSTEM_NAME STREQUAL "iOS" )
171
171
list (FILTER Source_Files__Graphic EXCLUDE REGEX "graphic/Fast3D/gfx_metal*" )
172
172
endif ()
173
173
174
+ if (CMAKE_SYSTEM_NAME STREQUAL "iOS" )
175
+ list (FILTER Source_Files__Graphic EXCLUDE REGEX "graphic/Fast3D/gfx_opengl*" )
176
+ endif ()
177
+
174
178
if (NOT CMAKE_SYSTEM_NAME STREQUAL "CafeOS" )
175
179
list (FILTER Source_Files__Graphic EXCLUDE REGEX "graphic/Fast3D/gfx_wiiu*" )
176
180
list (FILTER Source_Files__Graphic EXCLUDE REGEX "graphic/Fast3D/gx2*" )
@@ -184,7 +188,7 @@ target_sources(libultraship PRIVATE ${Source_Files__Graphic})
184
188
185
189
#=================== metal-cpp ===================
186
190
187
- if (CMAKE_SYSTEM_NAME STREQUAL "Darwin" )
191
+ if (CMAKE_SYSTEM_NAME STREQUAL "Darwin" OR CMAKE_SYSTEM_NAME STREQUAL "iOS" )
188
192
target_include_directories (libultraship PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} /../extern/metal-cpp)
189
193
endif ()
190
194
@@ -205,7 +209,7 @@ endif()
205
209
206
210
target_include_directories (libultraship
207
211
PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} /../extern ${CMAKE_CURRENT_BINARY_DIR} $<$<BOOL :${GFX_DEBUG_DISASSEMBLER} >:${CMAKE_CURRENT_SOURCE_DIR} /../../ZAPDTR/lib/libgfxd>
208
- PUBLIC ${CMAKE_CURRENT_SOURCE_DIR} ${INCLUDE_DIR} ${CMAKE_CURRENT_SOURCE_DIR} /../extern/spdlog/include ${CMAKE_CURRENT_SOURCE_DIR} /../extern/stb
212
+ PUBLIC ${CMAKE_CURRENT_SOURCE_DIR} ${INCLUDE_DIR} ${CMAKE_CURRENT_SOURCE_DIR} /../extern/spdlog/include ${CMAKE_CURRENT_SOURCE_DIR} /../extern/stb ${ADDITIONAL_LIB_INCLUDES}
209
213
)
210
214
211
215
if (CMAKE_SYSTEM_NAME STREQUAL "CafeOS" )
@@ -248,7 +252,7 @@ if (CMAKE_SYSTEM_NAME STREQUAL "Darwin" OR CMAKE_SYSTEM_NAME STREQUAL "NintendoS
248
252
target_link_libraries (libultraship PRIVATE Threads::Threads)
249
253
endif ()
250
254
251
- if (CMAKE_SYSTEM_NAME STREQUAL "Darwin" )
255
+ if (CMAKE_SYSTEM_NAME STREQUAL "Darwin" OR CMAKE_SYSTEM_NAME STREQUAL "iOS" )
252
256
find_Library (OSX_FOUNDATION Foundation)
253
257
find_Library (OSX_AVFOUNDATION AVFoundation)
254
258
find_library (METAL Metal)
@@ -277,30 +281,57 @@ if (CMAKE_SYSTEM_NAME STREQUAL "Windows")
277
281
)
278
282
endif ()
279
283
280
- if (CMAKE_SYSTEM_NAME STREQUAL "Darwin" )
284
+ if (CMAKE_SYSTEM_NAME STREQUAL "Darwin" OR CMAKE_SYSTEM_NAME STREQUAL "iOS" )
281
285
set_target_properties (${PROJECT_NAME} PROPERTIES
282
286
XCODE_ATTRIBUTE_CLANG_ENABLE_OBJC_ARC YES
283
287
)
284
288
endif ()
285
289
286
- if (NOT CMAKE_SYSTEM_NAME STREQUAL "CafeOS" )
290
+ if (CMAKE_SYSTEM_NAME STREQUAL "CafeOS" )
291
+ target_compile_definitions (libultraship PRIVATE
292
+ $<$<CONFIG:Debug>:_DEBUG>
293
+ $<$<NOT :$<CONFIG:Debug>>:NDEBUG>
294
+ SPDLOG_NO_THREAD_ID
295
+ SPDLOG_NO_TLS
296
+ STBI_NO_THREAD_LOCALS
297
+ SPDLOG_ACTIVE_LEVEL=3
298
+ )
299
+ elseif (CMAKE_SYSTEM_NAME STREQUAL "iOS" )
287
300
target_compile_definitions (libultraship PRIVATE
288
- ENABLE_OPENGL
289
301
$<$<CONFIG:Debug>:_DEBUG>
290
302
$<$<NOT :$<CONFIG:Debug>>:NDEBUG>
291
303
$<$<CONFIG:Debug>:SPDLOG_ACTIVE_LEVEL=0>
292
304
$<$<NOT :$<CONFIG:Debug>>:SPDLOG_ACTIVE_LEVEL=1>
293
- $<$<BOOL :${USE_OPENGLES} >:USE_OPENGLES>
294
- $<$<BOOL :${GFX_DEBUG_DISASSEMBLER} >:GFX_DEBUG_DISASSEMBLER>
305
+ __IOS__
295
306
)
296
- else ()
307
+
308
+ set_xcode_property(${PROJECT_NAME} PRODUCT_BUNDLE_IDENTIFIER ${BUNDLE_ID} All )
309
+
310
+ if (NOT SIGN_LIBRARY)
311
+ set_target_properties (${PROJECT_NAME} PROPERTIES
312
+ XCODE_ATTRIBUTE_CODE_SIGN_IDENTITY ""
313
+ XCODE_ATTRIBUTE_CODE_SIGNING_ALLOWED "NO"
314
+ )
315
+
316
+ set_target_properties (SDL2 PROPERTIES
317
+ XCODE_ATTRIBUTE_CODE_SIGN_IDENTITY ""
318
+ XCODE_ATTRIBUTE_CODE_SIGNING_ALLOWED "NO"
319
+ )
320
+
321
+ set_target_properties (zip PROPERTIES
322
+ XCODE_ATTRIBUTE_CODE_SIGN_IDENTITY ""
323
+ XCODE_ATTRIBUTE_CODE_SIGNING_ALLOWED "NO"
324
+ )
325
+ endif ()
326
+ else ()
297
327
target_compile_definitions (libultraship PRIVATE
328
+ ENABLE_OPENGL
298
329
$<$<CONFIG:Debug>:_DEBUG>
299
330
$<$<NOT :$<CONFIG:Debug>>:NDEBUG>
300
- SPDLOG_NO_THREAD_ID
301
- SPDLOG_NO_TLS
302
- STBI_NO_THREAD_LOCALS
303
- SPDLOG_ACTIVE_LEVEL=3
331
+ $<$<CONFIG:Debug>:SPDLOG_ACTIVE_LEVEL=0>
332
+ $<$< NOT :$<CONFIG:Debug>>:SPDLOG_ACTIVE_LEVEL=1>
333
+ $<$< BOOL : ${USE_OPENGLES} >:USE_OPENGLES>
334
+ $<$< BOOL : ${GFX_DEBUG_DISASSEMBLER} >:GFX_DEBUG_DISASSEMBLER>
304
335
)
305
336
endif ()
306
337
@@ -341,6 +372,7 @@ if ("${CMAKE_CXX_COMPILER_ID}" MATCHES "GNU|Clang")
341
372
-Wno-parentheses
342
373
-Wno-narrowing
343
374
-Wno-missing-field-initializers
375
+ -Wno-implicit-function-declaration
344
376
$<$<COMPILE_LANGUAGE:C,OBJC>:-Wno-int-conversion>
345
377
)
346
378
endif ()
0 commit comments