summaryrefslogtreecommitdiffstats
path: root/Source/cmOrderDirectories.cxx
Commit message (Collapse)AuthorAgeFilesLines
* Convert CMake to OSI-approved BSD LicenseBrad King2009-09-281-14/+9
| | | | | | | This converts the CMake license to a pure 3-clause OSI-approved BSD License. We drop the previous license clause requiring modified versions to be plainly marked. We also update the CMake copyright to cover the full development time range.
* ENH: Link runtime libraries of all languagesBrad King2009-07-271-0/+12
| | | | | | | | | | | | | | | | | | This adds implicit libraries and search directories for languages linked into a target other than the linker language to its link line. For example, when linking an executable containing both C++ and Fortran code the C++ linker is used but we need to add the Fortran libraries. The variables CMAKE_<LANG>_IMPLICIT_LINK_LIBRARIES CMAKE_<LANG>_IMPLICIT_LINK_DIRECTORIES contain the implicit libraries and directories for each language. Entries for the linker language are known to be implicit in the generated link line. Entries for other languages that do not appear in the known implicit set are listed explicitly at the end of the link line.
* STYLE: Factor CollectOriginalDirectories codeBrad King2009-07-141-20/+27
| | | | | | This factors code out of cmOrderDirectories::CollectOriginalDirectories into cmOrderDirectories::AddOriginalDirectories. Later a new call will be added, and this is more readable anyway.
* BUG: Fix same-file check for directory orderingBrad King2008-12-261-14/+11
| | | | | | | | | | When computing runtime search path ordering a constraint exists when a file that may be found by the runtime search exists in a directory other than that containing the desired file. We test whether a potential conflict is really the same due to a symlink. Recently the change to cmFindLibraryCommand to load directory content created a case in which the same-file check would be incorrectly skipped. This avoids skipping the check.
* ENH: Warn when system libraries may be hidden.Brad King2008-07-291-3/+69
| | | | | | | | We never explicitly specify system library directories in linker or runtime search paths. Furthermore, libraries in these directories are always linked by asking the linker to search for them. We need to generate a warning when explicitly specified search directories contain files that may hide the system libraries during the search.
* ENH: Provide context in path ordering warningsBrad King2008-07-291-7/+10
|
* STYLE: Fix typo in comment in cmOrderDirectoriesBrad King2008-07-291-1/+1
|
* COMP: Fix unreachable code warning in cmOrderDirectories.Brad King2008-02-221-1/+1
|
* COMP: Remove unused local variable from cmOrderDirectories.Brad King2008-02-211-1/+0
|
* ENH: Improve linking to third-party shared libraries on soname platformsBrad King2008-02-211-1/+9
| | | | | | | | | | | | | | - Reduce false positives in cases of unknown soname - Make library extension regular expressions match only at end of string - When linking to libraries in implicit dirs convert to the -l option only if the file name is one that can be found by the linker (ex. /usr/lib/libfoo.so.1 should be linked by full path) - Add cmSystemTools::GuessLibrarySOName to guess the soname of a library based on presence of a symlink - In cmComputeLinkInformation try to guess an soname before assuming that a third-party library is built without an soname - In cmOrderDirectories guess the soname of shared libraries in cases it is otherwise unknown
* ENH: Better linker search path computation.Brad King2008-02-211-0/+524
- Use linker search path -L.. -lfoo for lib w/out soname when platform sets CMAKE_PLATFORM_USES_PATH_WHEN_NO_SONAME - Rename cmOrderRuntimeDirectories to cmOrderDirectories and generalize it for both soname constraints and link library constraints - Use cmOrderDirectories to order -L directories based on all needed constraints - Avoid processing implicit link directories - For CMAKE_OLD_LINK_PATHS add constraints from libs producing them to produce old ordering