12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879 |
- # Toolchain config for iOS.
- #
- # Usage:
- # mkdir build; cd build
- # cmake ..; make
- # mkdir ios; cd ios
- # cmake -DLLVM_IOS_TOOLCHAIN_DIR=/path/to/ios/ndk \
- # -DCMAKE_TOOLCHAIN_FILE=../../cmake/platforms/iOS.cmake ../..
- # make <target>
- SET(CMAKE_SYSTEM_NAME Darwin)
- SET(CMAKE_SYSTEM_VERSION 13)
- SET(CMAKE_CXX_COMPILER_WORKS True)
- SET(CMAKE_C_COMPILER_WORKS True)
- SET(DARWIN_TARGET_OS_NAME ios)
- IF(NOT DEFINED ENV{SDKROOT})
- execute_process(COMMAND xcodebuild -version -sdk iphoneos Path
- OUTPUT_VARIABLE SDKROOT
- ERROR_QUIET
- OUTPUT_STRIP_TRAILING_WHITESPACE)
- ELSE()
- execute_process(COMMAND xcodebuild -version -sdk $ENV{SDKROOT} Path
- OUTPUT_VARIABLE SDKROOT
- ERROR_QUIET
- OUTPUT_STRIP_TRAILING_WHITESPACE)
- ENDIF()
- IF(NOT EXISTS ${SDKROOT})
- MESSAGE(FATAL_ERROR "SDKROOT could not be detected!")
- ENDIF()
- set(CMAKE_OSX_SYSROOT ${SDKROOT})
- IF(NOT CMAKE_C_COMPILER)
- execute_process(COMMAND xcrun -sdk ${SDKROOT} -find clang
- OUTPUT_VARIABLE CMAKE_C_COMPILER
- ERROR_QUIET
- OUTPUT_STRIP_TRAILING_WHITESPACE)
- message(STATUS "Using c compiler ${CMAKE_C_COMPILER}")
- ENDIF()
- IF(NOT CMAKE_CXX_COMPILER)
- execute_process(COMMAND xcrun -sdk ${SDKROOT} -find clang++
- OUTPUT_VARIABLE CMAKE_CXX_COMPILER
- ERROR_QUIET
- OUTPUT_STRIP_TRAILING_WHITESPACE)
- message(STATUS "Using c compiler ${CMAKE_CXX_COMPILER}")
- ENDIF()
- IF(NOT CMAKE_AR)
- execute_process(COMMAND xcrun -sdk ${SDKROOT} -find ar
- OUTPUT_VARIABLE CMAKE_AR_val
- ERROR_QUIET
- OUTPUT_STRIP_TRAILING_WHITESPACE)
- SET(CMAKE_AR ${CMAKE_AR_val} CACHE FILEPATH "Archiver")
- message(STATUS "Using ar ${CMAKE_AR}")
- ENDIF()
- IF(NOT CMAKE_RANLIB)
- execute_process(COMMAND xcrun -sdk ${SDKROOT} -find ranlib
- OUTPUT_VARIABLE CMAKE_RANLIB_val
- ERROR_QUIET
- OUTPUT_STRIP_TRAILING_WHITESPACE)
- SET(CMAKE_RANLIB ${CMAKE_RANLIB_val} CACHE FILEPATH "Ranlib")
- message(STATUS "Using ranlib ${CMAKE_RANLIB}")
- ENDIF()
- IF (NOT DEFINED IOS_MIN_TARGET)
- execute_process(COMMAND xcodebuild -sdk ${SDKROOT} -version SDKVersion
- OUTPUT_VARIABLE IOS_MIN_TARGET
- ERROR_QUIET
- OUTPUT_STRIP_TRAILING_WHITESPACE)
- ENDIF()
- SET(IOS_COMMON_FLAGS "-mios-version-min=${IOS_MIN_TARGET}")
- SET(CMAKE_C_FLAGS "${IOS_COMMON_FLAGS}" CACHE STRING "toolchain_cflags" FORCE)
- SET(CMAKE_CXX_FLAGS "${IOS_COMMON_FLAGS}" CACHE STRING "toolchain_cxxflags" FORCE)
- SET(CMAKE_LINK_FLAGS "${IOS_COMMON_FLAGS}" CACHE STRING "toolchain_linkflags" FORCE)
|