diff options
author | Brad King <brad.king@kitware.com> | 2009-09-22 20:02:39 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2009-09-22 20:02:39 (GMT) |
commit | 5195a664b9485fafba4643dbc620ef2494060f7d (patch) | |
tree | 15fe2ad23eeb01f26bfb6c7de4205f70a9117358 | |
parent | fe57e7252f618b827c38e2d49f3df94f546cc383 (diff) | |
download | CMake-5195a664b9485fafba4643dbc620ef2494060f7d.zip CMake-5195a664b9485fafba4643dbc620ef2494060f7d.tar.gz CMake-5195a664b9485fafba4643dbc620ef2494060f7d.tar.bz2 |
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.
-rw-r--r-- | Modules/CMakeDetermineCompilerABI.cmake | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/Modules/CMakeDetermineCompilerABI.cmake b/Modules/CMakeDetermineCompilerABI.cmake index 9baa893..0e2445a 100644 --- a/Modules/CMakeDetermineCompilerABI.cmake +++ b/Modules/CMakeDetermineCompilerABI.cmake @@ -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) |