Browse Source

Refactor: Add allowArch parameter to cmake::CreateGlobalGenerator()

pull/336/head
Kyle Edwards 5 years ago
parent
commit
5a36542086
  1. 4
      Source/cmGlobalGeneratorFactory.h
  2. 4
      Source/cmGlobalVisualStudio10Generator.cxx
  3. 4
      Source/cmGlobalVisualStudio11Generator.cxx
  4. 4
      Source/cmGlobalVisualStudio12Generator.cxx
  5. 4
      Source/cmGlobalVisualStudio14Generator.cxx
  6. 4
      Source/cmGlobalVisualStudio9Generator.cxx
  7. 6
      Source/cmGlobalVisualStudioVersionedGenerator.cxx
  8. 3
      Source/cmGlobalXCodeGenerator.cxx
  9. 4
      Source/cmake.cxx
  10. 2
      Source/cmake.h

4
Source/cmGlobalGeneratorFactory.h

@ -25,7 +25,7 @@ public:
/** Create a GlobalGenerator */
virtual std::unique_ptr<cmGlobalGenerator> CreateGlobalGenerator(
const std::string& n, cmake* cm) const = 0;
const std::string& n, bool allowArch, cmake* cm) const = 0;
/** Get the documentation entry for this factory */
virtual void GetDocumentation(cmDocumentationEntry& entry) const = 0;
@ -53,7 +53,7 @@ class cmGlobalGeneratorSimpleFactory : public cmGlobalGeneratorFactory
public:
/** Create a GlobalGenerator */
std::unique_ptr<cmGlobalGenerator> CreateGlobalGenerator(
const std::string& name, cmake* cm) const override
const std::string& name, bool /*allowArch*/, cmake* cm) const override
{
if (name != T::GetActualName()) {
return std::unique_ptr<cmGlobalGenerator>();

4
Source/cmGlobalVisualStudio10Generator.cxx

@ -59,7 +59,7 @@ class cmGlobalVisualStudio10Generator::Factory
{
public:
std::unique_ptr<cmGlobalGenerator> CreateGlobalGenerator(
const std::string& name, cmake* cm) const override
const std::string& name, bool allowArch, cmake* cm) const override
{
std::string genName;
const char* p = cmVS10GenName(name, genName);
@ -70,7 +70,7 @@ public:
return std::unique_ptr<cmGlobalGenerator>(
new cmGlobalVisualStudio10Generator(cm, genName, ""));
}
if (*p++ != ' ') {
if (!allowArch || *p++ != ' ') {
return std::unique_ptr<cmGlobalGenerator>();
}
if (strcmp(p, "Win64") == 0) {

4
Source/cmGlobalVisualStudio11Generator.cxx

@ -31,7 +31,7 @@ class cmGlobalVisualStudio11Generator::Factory
{
public:
std::unique_ptr<cmGlobalGenerator> CreateGlobalGenerator(
const std::string& name, cmake* cm) const override
const std::string& name, bool allowArch, cmake* cm) const override
{
std::string genName;
const char* p = cmVS11GenName(name, genName);
@ -42,7 +42,7 @@ public:
return std::unique_ptr<cmGlobalGenerator>(
new cmGlobalVisualStudio11Generator(cm, genName, ""));
}
if (*p++ != ' ') {
if (!allowArch || *p++ != ' ') {
return std::unique_ptr<cmGlobalGenerator>();
}
if (strcmp(p, "Win64") == 0) {

4
Source/cmGlobalVisualStudio12Generator.cxx

@ -29,7 +29,7 @@ class cmGlobalVisualStudio12Generator::Factory
{
public:
std::unique_ptr<cmGlobalGenerator> CreateGlobalGenerator(
const std::string& name, cmake* cm) const override
const std::string& name, bool allowArch, cmake* cm) const override
{
std::string genName;
const char* p = cmVS12GenName(name, genName);
@ -40,7 +40,7 @@ public:
return std::unique_ptr<cmGlobalGenerator>(
new cmGlobalVisualStudio12Generator(cm, genName, ""));
}
if (*p++ != ' ') {
if (!allowArch || *p++ != ' ') {
return std::unique_ptr<cmGlobalGenerator>();
}
if (strcmp(p, "Win64") == 0) {

4
Source/cmGlobalVisualStudio14Generator.cxx

@ -30,7 +30,7 @@ class cmGlobalVisualStudio14Generator::Factory
{
public:
std::unique_ptr<cmGlobalGenerator> CreateGlobalGenerator(
const std::string& name, cmake* cm) const override
const std::string& name, bool allowArch, cmake* cm) const override
{
std::string genName;
const char* p = cmVS14GenName(name, genName);
@ -41,7 +41,7 @@ public:
return std::unique_ptr<cmGlobalGenerator>(
new cmGlobalVisualStudio14Generator(cm, genName, ""));
}
if (*p++ != ' ') {
if (!allowArch || *p++ != ' ') {
return std::unique_ptr<cmGlobalGenerator>();
}
if (strcmp(p, "Win64") == 0) {

4
Source/cmGlobalVisualStudio9Generator.cxx

@ -16,7 +16,7 @@ class cmGlobalVisualStudio9Generator::Factory : public cmGlobalGeneratorFactory
{
public:
std::unique_ptr<cmGlobalGenerator> CreateGlobalGenerator(
const std::string& name, cmake* cm) const override
const std::string& name, bool allowArch, cmake* cm) const override
{
if (strncmp(name.c_str(), vs9generatorName,
sizeof(vs9generatorName) - 1) != 0) {
@ -29,7 +29,7 @@ public:
new cmGlobalVisualStudio9Generator(cm, name, ""));
}
if (p[0] != ' ') {
if (!allowArch || p[0] != ' ') {
return std::unique_ptr<cmGlobalGenerator>();
}

6
Source/cmGlobalVisualStudioVersionedGenerator.cxx

@ -140,7 +140,7 @@ class cmGlobalVisualStudioVersionedGenerator::Factory15
{
public:
std::unique_ptr<cmGlobalGenerator> CreateGlobalGenerator(
const std::string& name, cmake* cm) const override
const std::string& name, bool allowArch, cmake* cm) const override
{
std::string genName;
const char* p = cmVS15GenName(name, genName);
@ -152,7 +152,7 @@ public:
new cmGlobalVisualStudioVersionedGenerator(
cmGlobalVisualStudioGenerator::VS15, cm, genName, ""));
}
if (*p++ != ' ') {
if (!allowArch || *p++ != ' ') {
return std::unique_ptr<cmGlobalGenerator>();
}
if (strcmp(p, "Win64") == 0) {
@ -234,7 +234,7 @@ class cmGlobalVisualStudioVersionedGenerator::Factory16
{
public:
std::unique_ptr<cmGlobalGenerator> CreateGlobalGenerator(
const std::string& name, cmake* cm) const override
const std::string& name, bool /*allowArch*/, cmake* cm) const override
{
std::string genName;
const char* p = cmVS16GenName(name, genName);

3
Source/cmGlobalXCodeGenerator.cxx

@ -135,7 +135,7 @@ class cmGlobalXCodeGenerator::Factory : public cmGlobalGeneratorFactory
{
public:
std::unique_ptr<cmGlobalGenerator> CreateGlobalGenerator(
const std::string& name, cmake* cm) const override;
const std::string& name, bool allowArch, cmake* cm) const override;
void GetDocumentation(cmDocumentationEntry& entry) const override
{
@ -197,6 +197,7 @@ std::unique_ptr<cmGlobalGeneratorFactory> cmGlobalXCodeGenerator::NewFactory()
std::unique_ptr<cmGlobalGenerator>
cmGlobalXCodeGenerator::Factory::CreateGlobalGenerator(const std::string& name,
bool /*allowArch*/,
cmake* cm) const
{
if (name != GetActualName()) {

4
Source/cmake.cxx

@ -1217,7 +1217,7 @@ createExtraGenerator(
}
std::unique_ptr<cmGlobalGenerator> cmake::CreateGlobalGenerator(
const std::string& gname)
const std::string& gname, bool allowArch)
{
std::pair<std::unique_ptr<cmExternalMakefileProjectGenerator>, std::string>
extra = createExtraGenerator(this->ExtraGenerators, gname);
@ -1227,7 +1227,7 @@ std::unique_ptr<cmGlobalGenerator> cmake::CreateGlobalGenerator(
std::unique_ptr<cmGlobalGenerator> generator;
for (const auto& g : this->Generators) {
generator = g->CreateGlobalGenerator(name, this);
generator = g->CreateGlobalGenerator(name, allowArch, this);
if (generator) {
break;
}

2
Source/cmake.h

@ -219,7 +219,7 @@ public:
//! Create a GlobalGenerator
std::unique_ptr<cmGlobalGenerator> CreateGlobalGenerator(
const std::string& name);
const std::string& name, bool allowArch = true);
//! Return the global generator assigned to this instance of cmake
cmGlobalGenerator* GetGlobalGenerator()

Loading…
Cancel
Save