15007741dSChris Bieneman# Toolchain config for iOS. 25007741dSChris Bieneman 35007741dSChris BienemanSET(CMAKE_SYSTEM_NAME Darwin) 45007741dSChris BienemanSET(CMAKE_SYSTEM_VERSION 13) 55007741dSChris BienemanSET(CMAKE_CXX_COMPILER_WORKS True) 65007741dSChris BienemanSET(CMAKE_C_COMPILER_WORKS True) 7e43bffa7SChris BienemanSET(IOS True) 85007741dSChris Bieneman 976fbdeb7SJustin Bognerif(NOT CMAKE_OSX_SYSROOT) 103e15eedbSChris Bieneman execute_process(COMMAND xcodebuild -version -sdk iphoneos Path 113e15eedbSChris Bieneman OUTPUT_VARIABLE SDKROOT 123e15eedbSChris Bieneman ERROR_QUIET 133e15eedbSChris Bieneman OUTPUT_STRIP_TRAILING_WHITESPACE) 14f170d7edSChris Bieneman 153e15eedbSChris Bieneman IF(NOT EXISTS ${SDKROOT}) 163e15eedbSChris Bieneman MESSAGE(FATAL_ERROR "SDKROOT could not be detected!") 173e15eedbSChris Bieneman ENDIF() 183e15eedbSChris Bieneman 1976fbdeb7SJustin Bogner message(STATUS "Using SDKROOT ${SDKROOT}") 203e15eedbSChris Bieneman set(CMAKE_OSX_SYSROOT ${SDKROOT}) 2176fbdeb7SJustin Bognerendif() 223e15eedbSChris Bieneman 235007741dSChris BienemanIF(NOT CMAKE_C_COMPILER) 2476fbdeb7SJustin Bogner execute_process(COMMAND xcrun -sdk ${CMAKE_OSX_SYSROOT} -find clang 255007741dSChris Bieneman OUTPUT_VARIABLE CMAKE_C_COMPILER 265007741dSChris Bieneman ERROR_QUIET 275007741dSChris Bieneman OUTPUT_STRIP_TRAILING_WHITESPACE) 28*50655235SLouis Dionne message(STATUS "Using C compiler ${CMAKE_C_COMPILER}") 295007741dSChris BienemanENDIF() 305007741dSChris Bieneman 315007741dSChris BienemanIF(NOT CMAKE_CXX_COMPILER) 3276fbdeb7SJustin Bogner execute_process(COMMAND xcrun -sdk ${CMAKE_OSX_SYSROOT} -find clang++ 335007741dSChris Bieneman OUTPUT_VARIABLE CMAKE_CXX_COMPILER 345007741dSChris Bieneman ERROR_QUIET 355007741dSChris Bieneman OUTPUT_STRIP_TRAILING_WHITESPACE) 36*50655235SLouis Dionne message(STATUS "Using C++ compiler ${CMAKE_CXX_COMPILER}") 375007741dSChris BienemanENDIF() 385007741dSChris Bieneman 39f170d7edSChris BienemanIF(NOT CMAKE_AR) 4076fbdeb7SJustin Bogner execute_process(COMMAND xcrun -sdk ${CMAKE_OSX_SYSROOT} -find ar 41f170d7edSChris Bieneman OUTPUT_VARIABLE CMAKE_AR_val 42f170d7edSChris Bieneman ERROR_QUIET 43f170d7edSChris Bieneman OUTPUT_STRIP_TRAILING_WHITESPACE) 44f170d7edSChris Bieneman SET(CMAKE_AR ${CMAKE_AR_val} CACHE FILEPATH "Archiver") 45f170d7edSChris Bieneman message(STATUS "Using ar ${CMAKE_AR}") 46f170d7edSChris BienemanENDIF() 47f170d7edSChris Bieneman 483e15eedbSChris BienemanIF(NOT CMAKE_RANLIB) 4976fbdeb7SJustin Bogner execute_process(COMMAND xcrun -sdk ${CMAKE_OSX_SYSROOT} -find ranlib 503e15eedbSChris Bieneman OUTPUT_VARIABLE CMAKE_RANLIB_val 513e15eedbSChris Bieneman ERROR_QUIET 523e15eedbSChris Bieneman OUTPUT_STRIP_TRAILING_WHITESPACE) 533e15eedbSChris Bieneman SET(CMAKE_RANLIB ${CMAKE_RANLIB_val} CACHE FILEPATH "Ranlib") 543e15eedbSChris Bieneman message(STATUS "Using ranlib ${CMAKE_RANLIB}") 553e15eedbSChris BienemanENDIF() 56ca12bbb8SJustin Bogner 57ca12bbb8SJustin BognerIF(NOT CMAKE_STRIP) 58ca12bbb8SJustin Bogner execute_process(COMMAND xcrun -sdk ${CMAKE_OSX_SYSROOT} -find strip 59ca12bbb8SJustin Bogner OUTPUT_VARIABLE CMAKE_STRIP_val 60ca12bbb8SJustin Bogner ERROR_QUIET 61ca12bbb8SJustin Bogner OUTPUT_STRIP_TRAILING_WHITESPACE) 62ca12bbb8SJustin Bogner SET(CMAKE_STRIP ${CMAKE_STRIP_val} CACHE FILEPATH "Strip") 63ca12bbb8SJustin Bogner message(STATUS "Using strip ${CMAKE_STRIP}") 64ca12bbb8SJustin BognerENDIF() 65ca12bbb8SJustin Bogner 66ca12bbb8SJustin BognerIF(NOT CMAKE_DSYMUTIL) 67ca12bbb8SJustin Bogner execute_process(COMMAND xcrun -sdk ${CMAKE_OSX_SYSROOT} -find dsymutil 68ca12bbb8SJustin Bogner OUTPUT_VARIABLE CMAKE_DSYMUTIL_val 69ca12bbb8SJustin Bogner ERROR_QUIET 70ca12bbb8SJustin Bogner OUTPUT_STRIP_TRAILING_WHITESPACE) 71ca12bbb8SJustin Bogner SET(CMAKE_DSYMUTIL ${CMAKE_DSYMUTIL_val} CACHE FILEPATH "Dsymutil") 72ca12bbb8SJustin Bogner message(STATUS "Using dsymutil ${CMAKE_DSYMUTIL}") 73ca12bbb8SJustin BognerENDIF() 74ca12bbb8SJustin Bogner 75ca12bbb8SJustin BognerIF(NOT CMAKE_LIBTOOL) 76ca12bbb8SJustin Bogner execute_process(COMMAND xcrun -sdk ${CMAKE_OSX_SYSROOT} -find libtool 77ca12bbb8SJustin Bogner OUTPUT_VARIABLE CMAKE_LIBTOOL_val 78ca12bbb8SJustin Bogner ERROR_QUIET 79ca12bbb8SJustin Bogner OUTPUT_STRIP_TRAILING_WHITESPACE) 80ca12bbb8SJustin Bogner SET(CMAKE_LIBTOOL ${CMAKE_LIBTOOL_val} CACHE FILEPATH "Libtool") 81ca12bbb8SJustin Bogner message(STATUS "Using libtool ${CMAKE_LIBTOOL}") 82ca12bbb8SJustin BognerENDIF() 838fa26084SJustin Bogner 848fa26084SJustin BognerIF(NOT CMAKE_CODESIGN) 858fa26084SJustin Bogner execute_process(COMMAND xcrun -sdk ${CMAKE_OSX_SYSROOT} -find codesign 868fa26084SJustin Bogner OUTPUT_VARIABLE CMAKE_CODESIGN_val 878fa26084SJustin Bogner ERROR_QUIET 888fa26084SJustin Bogner OUTPUT_STRIP_TRAILING_WHITESPACE) 898fa26084SJustin Bogner SET(CMAKE_CODESIGN ${CMAKE_CODESIGN_val} CACHE FILEPATH "Codesign") 908fa26084SJustin Bogner message(STATUS "Using codesign ${CMAKE_CODESIGN}") 918fa26084SJustin BognerENDIF() 928fa26084SJustin Bogner 938fa26084SJustin BognerIF(NOT CMAKE_CODESIGN_ALLOCATE) 948fa26084SJustin Bogner execute_process( 958fa26084SJustin Bogner COMMAND xcrun -sdk ${CMAKE_OSX_SYSROOT} -find codesign_allocate 968fa26084SJustin Bogner OUTPUT_VARIABLE CMAKE_CODESIGN_ALLOCATE_val 978fa26084SJustin Bogner ERROR_QUIET 988fa26084SJustin Bogner OUTPUT_STRIP_TRAILING_WHITESPACE) 998fa26084SJustin Bogner SET(CMAKE_CODESIGN_ALLOCATE ${CMAKE_CODESIGN_ALLOCATE_val} CACHE 1008fa26084SJustin Bogner FILEPATH "Codesign_Allocate") 1018fa26084SJustin Bogner message(STATUS "Using codesign_allocate ${CMAKE_CODESIGN_ALLOCATE}") 1028fa26084SJustin BognerENDIF() 103