1# Distributed under the OSI-approved BSD 3-Clause License. See accompanying 2# file Copyright.txt or https://cmake.org/licensing for details. 3 4 5# This module is shared by multiple languages; use include blocker. 6include_guard() 7 8macro(__apple_compiler_clang lang) 9 set(CMAKE_${lang}_VERBOSE_FLAG "-v -Wl,-v") # also tell linker to print verbose output 10 set(CMAKE_SHARED_LIBRARY_CREATE_${lang}_FLAGS "-dynamiclib -Wl,-headerpad_max_install_names") 11 set(CMAKE_SHARED_MODULE_CREATE_${lang}_FLAGS "-bundle -Wl,-headerpad_max_install_names") 12 set(CMAKE_${lang}_SYSROOT_FLAG "-isysroot") 13 set(CMAKE_${lang}_OSX_DEPLOYMENT_TARGET_FLAG "-mmacosx-version-min=") 14 if(NOT CMAKE_${lang}_COMPILER_VERSION VERSION_LESS 3.2) 15 set(CMAKE_${lang}_SYSTEM_FRAMEWORK_SEARCH_FLAG "-iframework ") 16 endif() 17 if(_CMAKE_OSX_SYSROOT_PATH MATCHES "/iPhoneOS") 18 set(CMAKE_${lang}_OSX_DEPLOYMENT_TARGET_FLAG "-miphoneos-version-min=") 19 elseif(_CMAKE_OSX_SYSROOT_PATH MATCHES "/iPhoneSimulator") 20 set(CMAKE_${lang}_OSX_DEPLOYMENT_TARGET_FLAG "-mios-simulator-version-min=") 21 elseif(_CMAKE_OSX_SYSROOT_PATH MATCHES "/AppleTVOS") 22 set(CMAKE_${lang}_OSX_DEPLOYMENT_TARGET_FLAG "-mtvos-version-min=") 23 elseif(_CMAKE_OSX_SYSROOT_PATH MATCHES "/AppleTVSimulator") 24 set(CMAKE_${lang}_OSX_DEPLOYMENT_TARGET_FLAG "-mtvos-simulator-version-min=") 25 elseif(_CMAKE_OSX_SYSROOT_PATH MATCHES "/WatchOS") 26 set(CMAKE_${lang}_OSX_DEPLOYMENT_TARGET_FLAG "-mwatchos-version-min=") 27 elseif(_CMAKE_OSX_SYSROOT_PATH MATCHES "/WatchSimulator") 28 set(CMAKE_${lang}_OSX_DEPLOYMENT_TARGET_FLAG "-mwatchos-simulator-version-min=") 29 else() 30 set(CMAKE_${lang}_OSX_DEPLOYMENT_TARGET_FLAG "-mmacosx-version-min=") 31 endif() 32endmacro() 33