summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBen Boeckel <ben.boeckel@kitware.com>2023-02-01 03:46:25 (GMT)
committerBen Boeckel <ben.boeckel@kitware.com>2023-02-14 17:34:46 (GMT)
commitbde9d4ad014bd93181281fdfc2262d84ac9fd487 (patch)
tree5f9c8d666438d26e2456d4100a74180f05f57ae0
parentc97de1047f2fd08a74c42982012e8bb96a5e2f89 (diff)
downloadCMake-bde9d4ad014bd93181281fdfc2262d84ac9fd487.zip
CMake-bde9d4ad014bd93181281fdfc2262d84ac9fd487.tar.gz
CMake-bde9d4ad014bd93181281fdfc2262d84ac9fd487.tar.bz2
cmCommonTargetGenerator: also consider synthetic targets
-rw-r--r--Source/cmCommonTargetGenerator.cxx4
1 files changed, 3 insertions, 1 deletions
diff --git a/Source/cmCommonTargetGenerator.cxx b/Source/cmCommonTargetGenerator.cxx
index a63c162..1705763 100644
--- a/Source/cmCommonTargetGenerator.cxx
+++ b/Source/cmCommonTargetGenerator.cxx
@@ -176,7 +176,9 @@ std::vector<std::string> cmCommonTargetGenerator::GetLinkedTargetDirectories(
// We can ignore the INTERFACE_LIBRARY items because
// Target->GetLinkInformation already processed their
// link interface and they don't have any output themselves.
- && linkee->GetType() != cmStateEnums::INTERFACE_LIBRARY &&
+ && (linkee->GetType() != cmStateEnums::INTERFACE_LIBRARY
+ // Synthesized targets may have relevant rules.
+ || linkee->IsSynthetic()) &&
((lang == "CXX"_s && linkee->HaveCxx20ModuleSources()) ||
(lang == "Fortran"_s && linkee->HaveFortranSources(config))) &&
emitted.insert(linkee).second) {