diff options
author | Brad King <brad.king@kitware.com> | 2014-06-06 17:48:06 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2014-06-06 18:03:42 (GMT) |
commit | 42f74df6d4ffca8f6f08dfe191e441173be0f270 (patch) | |
tree | 9a0ebb2e87ace4a37eb7ac671f0b5c2e29e74a6a /Source/cmTarget.cxx | |
parent | 618b7df5bf7767561822c1673a9640860a2613a1 (diff) | |
download | CMake-42f74df6d4ffca8f6f08dfe191e441173be0f270.zip CMake-42f74df6d4ffca8f6f08dfe191e441173be0f270.tar.gz CMake-42f74df6d4ffca8f6f08dfe191e441173be0f270.tar.bz2 |
Add basic Android platform module
Create a Platform/Android module that includes Platform/Linux since
Android is based on Linux. Provide only the minimal settings needed to
get builds with Android NDK toolchains to work.
Disable use of RPATH since the Android loader ignores it and we cannot
predict the install destination anyway.
Android supports soname but shared library names must end in ".so" and
we cannot represent the versioned names with associated symlinks on all
host operating systems anyway. However, we do want the SONAME of
library files to be set so that linking to them by path to the library
file produces NEEDED entries with the soname and not the path. Add a
new CMAKE_PLATFORM_NO_VERSIONED_SONAME setting to tell the
cmTarget::GetLibraryNames method that not to use the VERSION or
SOVERSION target properties in the soname.
Diffstat (limited to 'Source/cmTarget.cxx')
-rw-r--r-- | Source/cmTarget.cxx | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/Source/cmTarget.cxx b/Source/cmTarget.cxx index 15acfdd..8143556 100644 --- a/Source/cmTarget.cxx +++ b/Source/cmTarget.cxx @@ -4348,6 +4348,7 @@ void cmTarget::GetLibraryNames(std::string& name, const char* version = this->GetProperty("VERSION"); const char* soversion = this->GetProperty("SOVERSION"); if(!this->HasSOName(config) || + this->Makefile->IsOn("CMAKE_PLATFORM_NO_VERSIONED_SONAME") || this->IsFrameworkOnApple()) { // Versioning is supported only for shared libraries and modules, |