On 05/27/2014 11:10 AM, J Decker wrote:
These result from the libraries resulting from the built sources, not
from the sysroot libs or things discovered with find packages.
I probably don't fully understand the issue but couldn't this easily
enough be patched in CMake itself (e.g. attached untested patch with
CMAKE_PLATFORM_NO_SONAME_SUPPORT set to ON)?
Is there an open issue for this?
Nils
diff --git a/Source/cmComputeLinkInformation.cxx b/Source/cmComputeLinkInformation.cxx
index ea8536f..59b0c8e 100644
--- a/Source/cmComputeLinkInformation.cxx
+++ b/Source/cmComputeLinkInformation.cxx
@@ -345,6 +345,10 @@ cmComputeLinkInformation
this->NoSONameUsesPath =
this->Makefile->IsOn("CMAKE_PLATFORM_USES_PATH_WHEN_NO_SONAME");
+ // Check if the platform supports SONAMEs at all
+ this->NoSONameSupport =
+ this->Makefile->IsOn("CMAKE_PLATFORM_NO_SONAME_SUPPORT");
+
// Get link type information.
this->ComputeLinkTypeInfo();
@@ -1084,8 +1088,8 @@ void cmComputeLinkInformation::AddTargetItem(std::string const& item,
}
// Handle case of an imported shared library with no soname.
- if(this->NoSONameUsesPath &&
- target->IsImportedSharedLibWithoutSOName(this->Config))
+ if(this->NoSONameSupport || (this->NoSONameUsesPath &&
+ target->IsImportedSharedLibWithoutSOName(this->Config)))
{
this->AddSharedLibNoSOName(item);
return;
diff --git a/Source/cmComputeLinkInformation.h b/Source/cmComputeLinkInformation.h
index e345fe2..f690d87 100644
--- a/Source/cmComputeLinkInformation.h
+++ b/Source/cmComputeLinkInformation.h
@@ -106,6 +106,7 @@ private:
std::string RuntimeAlways;
bool RuntimeUseChrpath;
bool NoSONameUsesPath;
+ bool NoSONameSupport;
bool LinkWithRuntimePath;
std::string RPathLinkFlag;
SharedDepMode SharedDependencyMode;
--
Powered by www.kitware.com
Please keep messages on-topic and check the CMake FAQ at:
http://www.cmake.org/Wiki/CMake_FAQ
Kitware offers various services to support the CMake community. For more
information on each offering, please visit:
CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html
Visit other Kitware open-source projects at
http://www.kitware.com/opensource/opensource.html
Follow this link to subscribe/unsubscribe:
http://www.cmake.org/mailman/listinfo/cmake