summaryrefslogtreecommitdiffstats
path: root/Modules/CMakeParseImplicitLinkInfo.cmake
Commit message (Collapse)AuthorAgeFilesLines
* Modules: Fix spelling 'To distributed' -> 'To distribute'Todd Gamblin2010-08-091-1/+1
|
* Remove non-language implicit link dependenciesBrad King2009-11-051-5/+16
| | | | | | | | | | | | | | | | Some compilers use implicit link options of the form -lcrt*.o -lgcc* -lSystem (on Mac) -lSystemStubs (on Mac) that provide system-wide symbols not specific to any language. These need not be listed explicitly for mixed-language linking. We teach CMake to remove the above items from the implicit library list of each language. This change makes it possible to mix GNU compiler versions in some cases.
* More robust implicit link line detection regexBrad King2009-10-071-1/+3
| | | | | | | | The regex used by CMAKE_PARSE_IMPLICIT_LINK_INFO to detect link lines should not match lines that happen to have ".../ld.../..." in them. A linker name should match only as the last component of a path. See issue #9666.
* Log implicit link line detection regexBrad King2009-10-061-0/+1
| | | | | | | | | | This commit teaches the CMAKE_PARSE_IMPLICIT_LINK_INFO function to log the regex it uses to detect the linker invocation line. The regex is computed from the CMAKE_LINKER if it is found, so it might change. A strange value might match the wrong line and cause implicit link info extraction to fail. See issue #9666.
* Log implicit link information parsing actionsBrad King2009-10-061-1/+21
| | | | | | | 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.
* Recognize linker commands without pathsBrad King2009-07-291-1/+1
| | | | | | | This teaches the implicit link line parsing code to recognize link lines that do not have a full path to the linker executable. At least one version of the Intel compiler on Linux invokes the linker as just "ld" instead of "/usr/bin/ld".
* BUG: Parse implicit link editor -z*extract optionsBrad King2009-07-281-1/+4
| | | | | | | | The Sun Fortran compiler passes -zallextract and -zdefaultextract to the linker so that all objects from one of its archives are included in the link. This teaches the implicit options parser to recognize the flags. We need to pass them explicitly on C++ link lines when Fortran code is linked.
* ENH: Implicit link info for C, CXX, and FortranBrad King2009-07-231-0/+71
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.