xref: /aosp_15_r20/external/llvm/cmake/platforms/iOS.cmake (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker# Toolchain config for iOS.
2*9880d681SAndroid Build Coastguard Worker
3*9880d681SAndroid Build Coastguard WorkerSET(CMAKE_SYSTEM_NAME Darwin)
4*9880d681SAndroid Build Coastguard WorkerSET(CMAKE_SYSTEM_VERSION 13)
5*9880d681SAndroid Build Coastguard WorkerSET(CMAKE_CXX_COMPILER_WORKS True)
6*9880d681SAndroid Build Coastguard WorkerSET(CMAKE_C_COMPILER_WORKS True)
7*9880d681SAndroid Build Coastguard Worker
8*9880d681SAndroid Build Coastguard Workerif(NOT CMAKE_OSX_SYSROOT)
9*9880d681SAndroid Build Coastguard Worker  execute_process(COMMAND xcodebuild -version -sdk iphoneos Path
10*9880d681SAndroid Build Coastguard Worker    OUTPUT_VARIABLE SDKROOT
11*9880d681SAndroid Build Coastguard Worker    ERROR_QUIET
12*9880d681SAndroid Build Coastguard Worker    OUTPUT_STRIP_TRAILING_WHITESPACE)
13*9880d681SAndroid Build Coastguard Worker
14*9880d681SAndroid Build Coastguard Worker  IF(NOT EXISTS ${SDKROOT})
15*9880d681SAndroid Build Coastguard Worker    MESSAGE(FATAL_ERROR "SDKROOT could not be detected!")
16*9880d681SAndroid Build Coastguard Worker  ENDIF()
17*9880d681SAndroid Build Coastguard Worker
18*9880d681SAndroid Build Coastguard Worker  message(STATUS "Using SDKROOT ${SDKROOT}")
19*9880d681SAndroid Build Coastguard Worker  set(CMAKE_OSX_SYSROOT ${SDKROOT})
20*9880d681SAndroid Build Coastguard Workerendif()
21*9880d681SAndroid Build Coastguard Worker
22*9880d681SAndroid Build Coastguard WorkerIF(NOT CMAKE_C_COMPILER)
23*9880d681SAndroid Build Coastguard Worker  execute_process(COMMAND xcrun -sdk ${CMAKE_OSX_SYSROOT} -find clang
24*9880d681SAndroid Build Coastguard Worker   OUTPUT_VARIABLE CMAKE_C_COMPILER
25*9880d681SAndroid Build Coastguard Worker   ERROR_QUIET
26*9880d681SAndroid Build Coastguard Worker   OUTPUT_STRIP_TRAILING_WHITESPACE)
27*9880d681SAndroid Build Coastguard Worker  message(STATUS "Using c compiler ${CMAKE_C_COMPILER}")
28*9880d681SAndroid Build Coastguard WorkerENDIF()
29*9880d681SAndroid Build Coastguard Worker
30*9880d681SAndroid Build Coastguard WorkerIF(NOT CMAKE_CXX_COMPILER)
31*9880d681SAndroid Build Coastguard Worker  execute_process(COMMAND xcrun -sdk ${CMAKE_OSX_SYSROOT} -find clang++
32*9880d681SAndroid Build Coastguard Worker   OUTPUT_VARIABLE CMAKE_CXX_COMPILER
33*9880d681SAndroid Build Coastguard Worker   ERROR_QUIET
34*9880d681SAndroid Build Coastguard Worker   OUTPUT_STRIP_TRAILING_WHITESPACE)
35*9880d681SAndroid Build Coastguard Worker  message(STATUS "Using c compiler ${CMAKE_CXX_COMPILER}")
36*9880d681SAndroid Build Coastguard WorkerENDIF()
37*9880d681SAndroid Build Coastguard Worker
38*9880d681SAndroid Build Coastguard WorkerIF(NOT CMAKE_AR)
39*9880d681SAndroid Build Coastguard Worker  execute_process(COMMAND xcrun -sdk ${CMAKE_OSX_SYSROOT} -find ar
40*9880d681SAndroid Build Coastguard Worker   OUTPUT_VARIABLE CMAKE_AR_val
41*9880d681SAndroid Build Coastguard Worker   ERROR_QUIET
42*9880d681SAndroid Build Coastguard Worker   OUTPUT_STRIP_TRAILING_WHITESPACE)
43*9880d681SAndroid Build Coastguard Worker  SET(CMAKE_AR ${CMAKE_AR_val} CACHE FILEPATH "Archiver")
44*9880d681SAndroid Build Coastguard Worker  message(STATUS "Using ar ${CMAKE_AR}")
45*9880d681SAndroid Build Coastguard WorkerENDIF()
46*9880d681SAndroid Build Coastguard Worker
47*9880d681SAndroid Build Coastguard WorkerIF(NOT CMAKE_RANLIB)
48*9880d681SAndroid Build Coastguard Worker  execute_process(COMMAND xcrun -sdk ${CMAKE_OSX_SYSROOT} -find ranlib
49*9880d681SAndroid Build Coastguard Worker   OUTPUT_VARIABLE CMAKE_RANLIB_val
50*9880d681SAndroid Build Coastguard Worker   ERROR_QUIET
51*9880d681SAndroid Build Coastguard Worker   OUTPUT_STRIP_TRAILING_WHITESPACE)
52*9880d681SAndroid Build Coastguard Worker  SET(CMAKE_RANLIB ${CMAKE_RANLIB_val} CACHE FILEPATH "Ranlib")
53*9880d681SAndroid Build Coastguard Worker  message(STATUS "Using ranlib ${CMAKE_RANLIB}")
54*9880d681SAndroid Build Coastguard WorkerENDIF()
55