Commit 5195a664 authored by Brad King's avatar Brad King 💬
Browse files

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.
parent fe57e725
......@@ -45,10 +45,14 @@ FUNCTION(CMAKE_DETERMINE_COMPILER_ABI lang src)
ENDIF(ABI_NAME)
# Parse implicit linker information for this language, if available.
# Skip this with Xcode for now.
SET(implicit_dirs "")
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)
ENDIF()
SET(CMAKE_${lang}_IMPLICIT_LINK_LIBRARIES "${implicit_libs}" PARENT_SCOPE)
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment