OS X: Add platform-specific Frameworks search path

Otherwise find_library is unable to lookup the XCTest framework which
is not located in the SDK serach path:

In the 10.10 SDK the SDK frameworks are located here:

  $DEVELOPER_DIR/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/System/Library/Frameworks

whereas the Platform SDKs are located here:

  $DEVELOPER_DIR/Platforms/MacOSX.platform/Developer/Library/Frameworks

Signed-off-by: Gregor Jasny <gjasny@googlemail.com>
This commit is contained in:
Gregor Jasny 2015-02-22 19:00:11 +01:00 committed by Brad King
parent cb16c7844d
commit 0ee2a004e7
4 changed files with 17 additions and 1 deletions

View File

@ -166,6 +166,13 @@ if(_CMAKE_OSX_SYSROOT_PATH)
${_CMAKE_OSX_SYSROOT_PATH}/Network/Library/Frameworks
${_CMAKE_OSX_SYSROOT_PATH}/System/Library/Frameworks
)
# add platform developer framework path if exists
get_filename_component(_CMAKE_OSX_PLATFORM_FRAMEWORK_PATH
${_CMAKE_OSX_SYSROOT_PATH}/../../Library/Frameworks ABSOLUTE)
if(IS_DIRECTORY ${_CMAKE_OSX_PLATFORM_FRAMEWORK_PATH})
list(APPEND CMAKE_SYSTEM_FRAMEWORK_PATH
${_CMAKE_OSX_PLATFORM_FRAMEWORK_PATH})
endif()
endif()
list(APPEND CMAKE_SYSTEM_FRAMEWORK_PATH
/Library/Frameworks

View File

@ -176,7 +176,7 @@ if("${CMAKE_GENERATOR}" MATCHES "Visual Studio [^6]")
endif()
if(XCODE_VERSION AND NOT "${XCODE_VERSION}" VERSION_LESS 3)
add_RunCMake_test(XcodeProject)
add_RunCMake_test(XcodeProject -DXCODE_VERSION=${XCODE_VERSION})
endif()
add_RunCMake_test(File_Generate)

View File

@ -3,3 +3,6 @@ include(RunCMake)
run_cmake(XcodeFileType)
run_cmake(XcodeAttributeGenex)
run_cmake(XcodeAttributeGenexError)
if (NOT XCODE_VERSION VERSION_LESS 6)
run_cmake(XcodePlatformFrameworks)
endif()

View File

@ -0,0 +1,6 @@
enable_language(C)
find_library(XCTEST_LIBRARY XCTest)
if(NOT XCTEST_LIBRARY)
message(FATAL_ERROR "XCTest Framework not found.")
endif()