1 # Toolchain config for iOS.
4 # mkdir build; cd build
7 # cmake -DLLVM_IOS_TOOLCHAIN_DIR=/path/to/ios/ndk \
8 # -DCMAKE_TOOLCHAIN_FILE=../../cmake/platforms/iOS.cmake ../..
11 SET(CMAKE_SYSTEM_NAME Darwin)
12 SET(CMAKE_SYSTEM_VERSION 13)
13 SET(CMAKE_CXX_COMPILER_WORKS True)
14 SET(CMAKE_C_COMPILER_WORKS True)
15 SET(DARWIN_TARGET_OS_NAME ios)
17 IF(NOT DEFINED ENV{SDKROOT})
18 MESSAGE(FATAL_ERROR "SDKROOT env var must be set: " $ENV{SDKROOT})
21 IF(NOT CMAKE_C_COMPILER)
22 execute_process(COMMAND xcrun -sdk iphoneos -find clang
23 OUTPUT_VARIABLE CMAKE_C_COMPILER
25 OUTPUT_STRIP_TRAILING_WHITESPACE)
26 message(STATUS "Using c compiler ${CMAKE_C_COMPILER}")
29 IF(NOT CMAKE_CXX_COMPILER)
30 execute_process(COMMAND xcrun -sdk iphoneos -find clang++
31 OUTPUT_VARIABLE CMAKE_CXX_COMPILER
33 OUTPUT_STRIP_TRAILING_WHITESPACE)
34 message(STATUS "Using c compiler ${CMAKE_CXX_COMPILER}")
37 IF (NOT DEFINED IOS_MIN_TARGET)
38 execute_process(COMMAND xcodebuild -sdk iphoneos -version SDKVersion
39 OUTPUT_VARIABLE IOS_MIN_TARGET
41 OUTPUT_STRIP_TRAILING_WHITESPACE)
44 SET(IOS_COMMON_FLAGS "-isysroot $ENV{SDKROOT} -mios-version-min=${IOS_MIN_TARGET}")
45 SET(CMAKE_C_FLAGS "${IOS_COMMON_FLAGS}" CACHE STRING "toolchain_cflags" FORCE)
46 SET(CMAKE_CXX_FLAGS "${IOS_COMMON_FLAGS}" CACHE STRING "toolchain_cxxflags" FORCE)
47 SET(CMAKE_LINK_FLAGS "${IOS_COMMON_FLAGS}" CACHE STRING "toolchain_linkflags" FORCE)