diff options
author | Tor Egge <Tor.Egge@broadpark.no> | 2019-03-18 12:28:28 +0100 |
---|---|---|
committer | Tor Egge <Tor.Egge@broadpark.no> | 2019-03-18 12:28:28 +0100 |
commit | f20957c4d0d6eaf574d711bab19abf793ef7c084 (patch) | |
tree | 4206a9ba2525ac325efc50d25f401692ff2641d3 /fastos/src | |
parent | e52b3ab39a5ae05fc1b1d538b6efa852f321a2f2 (diff) |
Handle shared library names on darwin.
Diffstat (limited to 'fastos/src')
-rw-r--r-- | fastos/src/vespa/fastos/unix_dynamiclibrary.cpp | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/fastos/src/vespa/fastos/unix_dynamiclibrary.cpp b/fastos/src/vespa/fastos/unix_dynamiclibrary.cpp index f3d3aa35511..16533445757 100644 --- a/fastos/src/vespa/fastos/unix_dynamiclibrary.cpp +++ b/fastos/src/vespa/fastos/unix_dynamiclibrary.cpp @@ -6,13 +6,24 @@ namespace { const std::string FASTOS_DYNLIB_PREFIX("lib"); +#ifdef __APPLE__ +const std::string FASTOS_DYNLIB_SUFFIX(".dylib"); +#else const std::string FASTOS_DYNLIB_SUFFIX(".so"); const std::string FASTOS_DYNLIB_SUFPREFIX(".so."); +#endif bool hasValidSuffix(const std::string & s) { - return (s.rfind(FASTOS_DYNLIB_SUFFIX) == (s.size() - FASTOS_DYNLIB_SUFFIX.size())) - || (s.rfind(FASTOS_DYNLIB_SUFPREFIX) != std::string::npos); + if (s.rfind(FASTOS_DYNLIB_SUFFIX) == (s.size() - FASTOS_DYNLIB_SUFFIX.size())) { + return true; + } +#ifndef __APPLE__ + if (s.rfind(FASTOS_DYNLIB_SUFPREFIX) != std::string::npos) { + return true; + } +#endif + return false; } } |