mirror of
https://github.com/Kitware/CMake.git
synced 2026-01-11 08:20:18 -06:00
export: Convert ExportInfo to a struct with meaningful field names
This commit is contained in:
@@ -139,10 +139,9 @@ void cmExportBuildFileGenerator::HandleMissingTarget(
|
||||
// The target is not in the export.
|
||||
if (!this->AppendMode) {
|
||||
auto const& exportInfo = this->FindExportInfo(dependee);
|
||||
auto const& exportFiles = exportInfo.first;
|
||||
|
||||
if (exportFiles.size() == 1) {
|
||||
std::string missingTarget = exportInfo.second;
|
||||
if (exportInfo.Files.size() == 1) {
|
||||
std::string missingTarget = exportInfo.Namespace;
|
||||
|
||||
missingTarget += dependee->GetExportName();
|
||||
link_libs += missingTarget;
|
||||
@@ -151,7 +150,7 @@ void cmExportBuildFileGenerator::HandleMissingTarget(
|
||||
}
|
||||
// We are not appending, so all exported targets should be
|
||||
// known here. This is probably user-error.
|
||||
this->ComplainAboutMissingTarget(depender, dependee, exportFiles);
|
||||
this->ComplainAboutMissingTarget(depender, dependee, exportInfo.Files);
|
||||
}
|
||||
// Assume the target will be exported by another command.
|
||||
// Append it with the export namespace.
|
||||
|
||||
@@ -8,7 +8,6 @@
|
||||
#include <map>
|
||||
#include <set>
|
||||
#include <string>
|
||||
#include <utility>
|
||||
#include <vector>
|
||||
|
||||
#include <cm/string_view>
|
||||
@@ -133,7 +132,11 @@ protected:
|
||||
|
||||
virtual void ReportError(std::string const& errorMessage) const = 0;
|
||||
|
||||
using ExportInfo = std::pair<std::vector<std::string>, std::string>;
|
||||
struct ExportInfo
|
||||
{
|
||||
std::vector<std::string> Files;
|
||||
std::string Namespace;
|
||||
};
|
||||
|
||||
/** Find the set of export files and the unique namespace (if any) for a
|
||||
* target. */
|
||||
|
||||
@@ -247,10 +247,9 @@ void cmExportInstallFileGenerator::HandleMissingTarget(
|
||||
cmGeneratorTarget* dependee)
|
||||
{
|
||||
auto const& exportInfo = this->FindExportInfo(dependee);
|
||||
auto const& exportFiles = exportInfo.first;
|
||||
|
||||
if (exportFiles.size() == 1) {
|
||||
std::string missingTarget = exportInfo.second;
|
||||
if (exportInfo.Files.size() == 1) {
|
||||
std::string missingTarget = exportInfo.Namespace;
|
||||
|
||||
missingTarget += dependee->GetExportName();
|
||||
link_libs += missingTarget;
|
||||
@@ -258,7 +257,7 @@ void cmExportInstallFileGenerator::HandleMissingTarget(
|
||||
} else {
|
||||
// All exported targets should be known here and should be unique.
|
||||
// This is probably user-error.
|
||||
this->ComplainAboutMissingTarget(depender, dependee, exportFiles);
|
||||
this->ComplainAboutMissingTarget(depender, dependee, exportInfo.Files);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -266,8 +266,8 @@ bool cmExportPackageInfoGenerator::NoteLinkedTarget(
|
||||
|
||||
// Target belongs to another export from this build.
|
||||
auto const& exportInfo = this->FindExportInfo(linkedTarget);
|
||||
if (exportInfo.first.size() == 1) {
|
||||
auto const& linkNamespace = exportInfo.second;
|
||||
if (exportInfo.Files.size() == 1) {
|
||||
auto const& linkNamespace = exportInfo.Namespace;
|
||||
if (!cmHasSuffix(linkNamespace, "::")) {
|
||||
target->Makefile->IssueMessage(
|
||||
MessageType::FATAL_ERROR,
|
||||
|
||||
Reference in New Issue
Block a user