summaryrefslogtreecommitdiffstats
path: root/Modules/CMakeDetermineCompilerABI.cmake
Commit message (Collapse)AuthorAgeFilesLines
* Fortran: Detect pointer size in gfortran on MinGWBrad King2011-12-051-0/+2
| | | | | | Use __SIZEOF_POINTER__ which the GNU Fortran compiler defines at least on 64-bit MinGW. Assume default size 4 on MinGW if gfortran does not define the size.
* Simplify IntelVSImplicitPath detection projectBrad King2011-09-141-4/+1
| | | | | | Use the ENV{LIB} variable directly instead of parsing the output of the whole environment from "set". Store the output in a .cmake script and include it from CMakeDetermineCompilerABI instead of using file(READ).
* Move IntelVSImplicitPath project to better locationBrad King2011-09-141-1/+1
| | | | | This project is not part of the FortranCInterface module. Make it a sibling instead of a child directory.
* For VS Intel Fortran IDE builds, add a check to find the Fortran library PATH.Bill Hoffman2011-09-081-0/+26
| | | | | | | | To use VS C and Fotran in the same solution, it is required that VS be able to find the Fortran run time libraries as they will be implicitly linked by any Fortran library used by VS C programs. This adds a check into CMakeDetermineCompilerABI using a try-compile to find the correct PATH.
* Teach find_(library|package) about Linux multiarch (#12037)Brad King2011-06-081-0/+11
| | | | | | | | | | | | | Implement support for multiarch as specified here: http://wiki.debian.org/Multiarch https://wiki.ubuntu.com/MultiarchSpec Detect the <arch> part of <prefix>/lib/<arch> from the implicit library search path from each compiler to set CMAKE_<lang>_LIBRARY_ARCHITECTURE. Define CMAKE_LIBRARY_ARCHITECTURE using one of these values (they should all be the same). Teach the find_library and find_package commands to search <prefix>/lib/<arch> whenever they would search <prefix>/lib.
* Merge branch 'dev/add_test-working-directory' into dev/strict-modeBrad King2011-01-271-1/+2
|\ | | | | | | | | Conflicts: Tests/CMakeLists.txt
| * Detect object files in implicit link informationBrad King2010-12-091-1/+2
| | | | | | | | | | | | The NAG Fortran compiler implicitly passes object files by full path to the linker. Teach CMakeParseImplicitLinkInfo to parse object files that match some tool-specific regular expression.
* | Ignore CLI warnings for ABI determinationBen Boeckel2010-09-161-0/+4
| |
* | Make --strict-mode option, and integrate with cmake-guiBill Hoffman2010-09-011-2/+12
|/
* Modules: Fix spelling 'To distributed' -> 'To distribute'Todd Gamblin2010-08-091-1/+1
|
* Load compiler information after configuring itBrad King2010-05-061-2/+0
| | | | | | | | | | | After configuring CMakeFiles/CMake<lang>Compiler.cmake in the build tree the second time (to store ABI information), include it immediately. This allows any logic and settings in the compiler information files to be used without duplicating it in CMakeDetermineCompilerABI.cmake. The change in commit "Use Fortran ABI detection results conservatively" (2010-05-05) needs this to use the same logic to set CMAKE_SIZEOF_VOID_P during first and later runs of CMake.
* Log implicit link information parsing actionsBrad King2009-10-061-1/+3
| | | | | | | This commit teaches the CMAKE_PARSE_IMPLICIT_LINK_INFO function to log its actions. We store the log in CMakeFiles/CMakeOutput.log at the top of the project build tree. This will make diagnosis of implicit link information parsing problems easier.
* Convert CMake non-find modules to BSD LicenseBrad King2009-09-281-0/+13
| | | | | | | This adds copyright/license notification blocks CMake's non-find modules. Most of the modules had no notices at all. Some had notices referring to the BSD license already. This commit normalizes existing notices and adds missing notices.
* Skip implicit link info for multiple OS X archsBrad King2009-09-221-2/+6
| | | | | | | | | | | 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.
* BUG: Skip implicit link information on XcodeBrad King2009-07-231-1/+2
| | | | | | | Xcode adds extra link directories that point at the build tree, so detection of implicit link directories is not reliable. Since Fortran is not supported in Xcode we will not need implicit link information yet anyway.
* ENH: Implicit link info for C, CXX, and FortranBrad King2009-07-231-0/+13
| | | | | | | | | | | | | This teaches CMake to detect implicit link information for C, C++, and Fortran compilers. We detect the implicit linker search directories and implicit linker options for UNIX-like environments using verbose output from compiler front-ends. We store results in new variables called CMAKE_<LANG>_IMPLICIT_LINK_LIBRARIES CMAKE_<LANG>_IMPLICIT_LINK_DIRECTORIES The implicit libraries can contain linker flags as well as library names.
* ENH: Clarify message about checking for compiler ABI information.Brad King2008-04-141-5/+5
|
* ENH: Generalize the check for sizeof void* to detect more ABI information.Brad King2008-01-211-0/+49