[llvm] r260763 - cmake: Simplify the iOS.cmake toolchain

Justin Bogner via llvm-commits llvm-commits at lists.llvm.org
Fri Feb 12 15:36:05 PST 2016


Author: bogner
Date: Fri Feb 12 17:36:05 2016
New Revision: 260763

URL: http://llvm.org/viewvc/llvm-project?rev=260763&view=rev
Log:
cmake: Simplify the iOS.cmake toolchain

- Remove a comment that was clearly copy pasted from Android.cmake and
  isn't relevant.
- Remove the toolchain's sensitivity to the environment. It's less
  error prone to just allow users to set CMAKE_OSX_SYSROOT if they
  want to use a custom SDK.
- Stop explicitly setting -mios-version-min to the default value. It
  just adds needless complexity.

This makes building the native tablegen work for me even when SDKROOT
is set in the environment (or passed in as -DCMAKE_OSX_SYSROOT).

Modified:
    llvm/trunk/cmake/platforms/iOS.cmake

Modified: llvm/trunk/cmake/platforms/iOS.cmake
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/cmake/platforms/iOS.cmake?rev=260763&r1=260762&r2=260763&view=diff
==============================================================================
--- llvm/trunk/cmake/platforms/iOS.cmake (original)
+++ llvm/trunk/cmake/platforms/iOS.cmake Fri Feb 12 17:36:05 2016
@@ -1,39 +1,26 @@
 # 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_OSX_SYSROOT)
+  execute_process(COMMAND xcodebuild -version -sdk iphoneos Path
+    OUTPUT_VARIABLE SDKROOT
+    ERROR_QUIET
+    OUTPUT_STRIP_TRAILING_WHITESPACE)
+
+  IF(NOT EXISTS ${SDKROOT})
+    MESSAGE(FATAL_ERROR "SDKROOT could not be detected!")
+  ENDIF()
+
+  message(STATUS "Using SDKROOT ${SDKROOT}")
+  set(CMAKE_OSX_SYSROOT ${SDKROOT})
+endif()
 
 IF(NOT CMAKE_C_COMPILER)
-  execute_process(COMMAND xcrun -sdk ${SDKROOT} -find clang
+  execute_process(COMMAND xcrun -sdk ${CMAKE_OSX_SYSROOT} -find clang
    OUTPUT_VARIABLE CMAKE_C_COMPILER
    ERROR_QUIET
    OUTPUT_STRIP_TRAILING_WHITESPACE)
@@ -41,7 +28,7 @@ IF(NOT CMAKE_C_COMPILER)
 ENDIF()
 
 IF(NOT CMAKE_CXX_COMPILER)
-  execute_process(COMMAND xcrun -sdk ${SDKROOT} -find clang++
+  execute_process(COMMAND xcrun -sdk ${CMAKE_OSX_SYSROOT} -find clang++
    OUTPUT_VARIABLE CMAKE_CXX_COMPILER
    ERROR_QUIET
    OUTPUT_STRIP_TRAILING_WHITESPACE)
@@ -49,7 +36,7 @@ IF(NOT CMAKE_CXX_COMPILER)
 ENDIF()
 
 IF(NOT CMAKE_AR)
-  execute_process(COMMAND xcrun -sdk ${SDKROOT} -find ar
+  execute_process(COMMAND xcrun -sdk ${CMAKE_OSX_SYSROOT} -find ar
    OUTPUT_VARIABLE CMAKE_AR_val
    ERROR_QUIET
    OUTPUT_STRIP_TRAILING_WHITESPACE)
@@ -58,22 +45,10 @@ IF(NOT CMAKE_AR)
 ENDIF()
 
 IF(NOT CMAKE_RANLIB)
-  execute_process(COMMAND xcrun -sdk ${SDKROOT} -find ranlib
+  execute_process(COMMAND xcrun -sdk ${CMAKE_OSX_SYSROOT} -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)




More information about the llvm-commits mailing list