Skip implicit link info for multiple OS X archs
Implicit link information contains architecture-specific libraries and directories. The link information cannot be explicitly specified safely when CMAKE_OSX_ARCHITECTURES contains more than one architecture. As a result, we currently cannot support mixed-language C++/Fortran targets and OS X universal binaries simultaneously. In order to avoid conflicts for simple C/C++ cases, we now simply skip detection of implicit link information in this case.
This commit is contained in:
parent
fe57e7252f
commit
5195a664b9
|
@ -45,10 +45,14 @@ FUNCTION(CMAKE_DETERMINE_COMPILER_ABI lang src)
|
||||||
ENDIF(ABI_NAME)
|
ENDIF(ABI_NAME)
|
||||||
|
|
||||||
# Parse implicit linker information for this language, if available.
|
# Parse implicit linker information for this language, if available.
|
||||||
# Skip this with Xcode for now.
|
|
||||||
SET(implicit_dirs "")
|
SET(implicit_dirs "")
|
||||||
SET(implicit_libs "")
|
SET(implicit_libs "")
|
||||||
IF(CMAKE_${lang}_VERBOSE_FLAG AND NOT "${CMAKE_GENERATOR}" MATCHES Xcode)
|
IF(CMAKE_${lang}_VERBOSE_FLAG
|
||||||
|
# Implicit link information cannot be used explicitly for
|
||||||
|
# multiple OS X architectures, so we skip it.
|
||||||
|
AND NOT "${CMAKE_OSX_ARCHITECTURES}" MATCHES ";"
|
||||||
|
# Skip this with Xcode for now.
|
||||||
|
AND NOT "${CMAKE_GENERATOR}" MATCHES Xcode)
|
||||||
CMAKE_PARSE_IMPLICIT_LINK_INFO("${OUTPUT}" implicit_libs implicit_dirs)
|
CMAKE_PARSE_IMPLICIT_LINK_INFO("${OUTPUT}" implicit_libs implicit_dirs)
|
||||||
ENDIF()
|
ENDIF()
|
||||||
SET(CMAKE_${lang}_IMPLICIT_LINK_LIBRARIES "${implicit_libs}" PARENT_SCOPE)
|
SET(CMAKE_${lang}_IMPLICIT_LINK_LIBRARIES "${implicit_libs}" PARENT_SCOPE)
|
||||||
|
|
Loading…
Reference in New Issue