diff options
-rw-r--r-- | Source/cmJsonObjects.cxx | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/Source/cmJsonObjects.cxx b/Source/cmJsonObjects.cxx index bc50f9f..0da6f4f 100644 --- a/Source/cmJsonObjects.cxx +++ b/Source/cmJsonObjects.cxx @@ -6,6 +6,7 @@ #include "cmGeneratorTarget.h" #include "cmGlobalGenerator.h" #include "cmInstallGenerator.h" +#include "cmInstallSubdirectoryGenerator.h" #include "cmInstallTargetGenerator.h" #include "cmJsonObjectDictionary.h" #include "cmJsonObjects.h" @@ -640,8 +641,13 @@ static Json::Value DumpProjectList(const cmake* cm, std::string const& config) // associated generators. bool hasInstallRule = false; for (const auto generator : projectIt.second) { - hasInstallRule = - generator->GetMakefile()->GetInstallGenerators().empty() == false; + for (const auto installGen : + generator->GetMakefile()->GetInstallGenerators()) { + if (!dynamic_cast<cmInstallSubdirectoryGenerator*>(installGen)) { + hasInstallRule = true; + break; + } + } if (hasInstallRule) { break; |