diff options
author | Brad King <brad.king@kitware.com> | 2008-01-28 13:38:36 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2008-01-28 13:38:36 (GMT) |
commit | 5594ad488576a77d9c6b8c3c1999a04fb4e6867d (patch) | |
tree | f22726476b6eaaf3832e48c185fe3c112601db17 /Source/cmLocalGenerator.cxx | |
parent | a7cb9d1120c0555f1da67dd585bd1b4fd16d389d (diff) | |
download | CMake-5594ad488576a77d9c6b8c3c1999a04fb4e6867d.zip CMake-5594ad488576a77d9c6b8c3c1999a04fb4e6867d.tar.gz CMake-5594ad488576a77d9c6b8c3c1999a04fb4e6867d.tar.bz2 |
ENH: Updated exporting and importing of targets to support libraries and configurations.
- Created cmExportFileGenerator hierarchy to implement export file generation
- Installed exports use per-config import files loaded by a central one.
- Include soname of shared libraries in import information
- Renamed PREFIX to NAMESPACE in INSTALL(EXPORT) and EXPORT() commands
- Move addition of CMAKE_INSTALL_PREFIX to destinations to install generators
- Import files compute the installation prefix relative to their location when loaded
- Add mapping of importer configurations to importee configurations
- Rename IMPORT targets to IMPORTED targets to distinguish from windows import libraries
- Scope IMPORTED targets within directories to isolate them
- Place all properties created by import files in the IMPORTED namespace
- Document INSTALL(EXPORT) and EXPORT() commands.
- Document IMPORTED signature of add_executable and add_library
- Enable finding of imported targets in cmComputeLinkDepends
Diffstat (limited to 'Source/cmLocalGenerator.cxx')
-rw-r--r-- | Source/cmLocalGenerator.cxx | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/Source/cmLocalGenerator.cxx b/Source/cmLocalGenerator.cxx index f49e1bd..4812572 100644 --- a/Source/cmLocalGenerator.cxx +++ b/Source/cmLocalGenerator.cxx @@ -1809,7 +1809,7 @@ std::string cmLocalGenerator::GetRealDependency(const char* inName, } // Look for a CMake target with the given name. - if(cmTarget* target = this->GlobalGenerator->FindTarget(0,name.c_str(),true)) + if(cmTarget* target = this->Makefile->FindTargetToUse(name.c_str())) { // make sure it is not just a coincidence that the target name // found is part of the inName @@ -1876,7 +1876,7 @@ std::string cmLocalGenerator::GetRealLocation(const char* inName, std::string outName=inName; // Look for a CMake target with the given name, which is an executable // and which can be run - cmTarget* target = this->GlobalGenerator->FindTarget(0, inName, true); + cmTarget* target = this->Makefile->FindTargetToUse(inName); if ((target != 0) && (target->GetType() == cmTarget::EXECUTABLE) && ((this->Makefile->IsOn("CMAKE_CROSSCOMPILING") == false) @@ -2348,8 +2348,8 @@ cmLocalGenerator { // Compute the full install destination. Note that converting // to unix slashes also removes any trailing slash. - std::string destination = "${CMAKE_INSTALL_PREFIX}"; - destination += l->second.GetInstallPath(); + // We also skip over the leading slash given by the user. + std::string destination = l->second.GetInstallPath().substr(1); cmSystemTools::ConvertToUnixSlashes(destination); // Generate the proper install generator for this target type. @@ -2372,8 +2372,8 @@ cmLocalGenerator // destination. cmInstallTargetGenerator g1(l->second, destination.c_str(), true); g1.Generate(os, config, configurationTypes); - destination = "${CMAKE_INSTALL_PREFIX}"; - destination += l->second.GetRuntimeInstallPath(); + // We also skip over the leading slash given by the user. + destination = l->second.GetRuntimeInstallPath().substr(1); cmSystemTools::ConvertToUnixSlashes(destination); cmInstallTargetGenerator g2(l->second, destination.c_str(), false); g2.Generate(os, config, configurationTypes); |