summaryrefslogtreecommitdiff
path: root/Source/cmSystemTools.h
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2008-02-21 13:58:41 -0500
committerBrad King <brad.king@kitware.com>2008-02-21 13:58:41 -0500
commit782e9f7ffe722fc7dac1353cd95a31e7140e5c6f (patch)
treeb4acc56525e8c006fd2da48e28d5f28c41a8e3e0 /Source/cmSystemTools.h
parentfd37a6ec3d31e65eed2dfa88246e86b8d0ab66ab (diff)
downloadcmake-782e9f7ffe722fc7dac1353cd95a31e7140e5c6f.tar.gz
ENH: Improve linking to third-party shared libraries on soname platforms
- 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
Diffstat (limited to 'Source/cmSystemTools.h')
-rw-r--r--Source/cmSystemTools.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/Source/cmSystemTools.h b/Source/cmSystemTools.h
index 3bf22f78d3..e03c24cd2c 100644
--- a/Source/cmSystemTools.h
+++ b/Source/cmSystemTools.h
@@ -377,6 +377,10 @@ public:
bool newLine, bool enabled);
#endif
+ /** Try to guess the soname of a shared library. */
+ static bool GuessLibrarySOName(std::string const& fullPath,
+ std::string& soname);
+
private:
static bool s_ForceUnixPaths;
static bool s_RunCommandHideConsole;