Ninja Multi-Config: Fix bug with MacOS frameworks

This commit is contained in:
Kyle Edwards
2020-01-24 15:51:44 -05:00
parent 072a95350c
commit 63c9cd2088
4 changed files with 55 additions and 8 deletions
+6 -2
View File
@@ -9,6 +9,7 @@
#include <memory>
#include <set>
#include <string>
#include <utility>
#include <vector>
#include "cm_jsoncpp_value.h"
@@ -173,8 +174,10 @@ protected:
struct MacOSXContentGeneratorType
: cmOSXBundleGenerator::MacOSXContentGeneratorType
{
MacOSXContentGeneratorType(cmNinjaTargetGenerator* g)
MacOSXContentGeneratorType(cmNinjaTargetGenerator* g,
std::string fileConfig)
: Generator(g)
, FileConfig(std::move(fileConfig))
{
}
@@ -183,10 +186,10 @@ protected:
private:
cmNinjaTargetGenerator* Generator;
std::string FileConfig;
};
friend struct MacOSXContentGeneratorType;
std::unique_ptr<MacOSXContentGeneratorType> MacOSXContentGenerator;
// Properly initialized by sub-classes.
std::unique_ptr<cmOSXBundleGenerator> OSXBundleGenerator;
std::set<std::string> MacContentFolders;
@@ -209,6 +212,7 @@ private:
Json::Value SwiftOutputMap;
std::vector<cmCustomCommand const*> CustomCommands;
cmNinjaDeps ExtraFiles;
std::unique_ptr<MacOSXContentGeneratorType> MacOSXContentGenerator;
};
std::map<std::string, ByConfig> Configs;