ENH: Support exporting/importing of Framework targets.

- Imported frameworks have the FRAMEWORK property set
  - Added cmTarget::IsFrameworkOnApple method to simplify checks
  - Also remove separate IMPORTED_ENABLE_EXPORTS property and just use ENABLE_EXPORTS since, like FRAMEWORK, it just represents the target type.
  - Document FRAMEWORK keyword in INSTALL command.
  - Updated IMPORTED_LOCATION property documentation for Frameworks
This commit is contained in:
Brad King
2008-01-28 13:05:58 -05:00
parent 3d94b3b717
commit 28ea034737
11 changed files with 62 additions and 65 deletions

View File

@@ -158,8 +158,9 @@ cmExportInstallFileGenerator
te->LibraryGenerator, properties);
this->SetImportLocationProperty(config, suffix,
te->RuntimeGenerator, properties);
this->SetImportLocationProperty(config, suffix,
te->FrameworkGenerator, properties);
// TODO: Frameworks?
// TODO: Bundles?
// If any file location was set for the target add it to the
@@ -223,7 +224,15 @@ cmExportInstallFileGenerator
value += "/";
// Append the installed file name.
value += itgen->GetInstallFilename(config);
std::string fname = itgen->GetInstallFilename(config);
value += fname;
// Fix name for frameworks.
if(itgen->GetTarget()->IsFrameworkOnApple())
{
value += ".framework/";
value += fname;
}
// Store the property.
properties[prop] = value;