diff options
author | Robert Maynard <robert.maynard@kitware.com> | 2020-06-01 17:45:13 (GMT) |
---|---|---|
committer | Robert Maynard <robert.maynard@kitware.com> | 2020-06-09 23:41:20 (GMT) |
commit | 74b1c9fc8e8b33c8faa9aadf6ce09c15d94ea011 (patch) | |
tree | 4574908690751173637e9ef498c495f6a1501e63 /Source/cmMakefileTargetGenerator.cxx | |
parent | 457170a476ca3ff3b5db80360a7fd8202ac31e91 (diff) | |
download | CMake-74b1c9fc8e8b33c8faa9aadf6ce09c15d94ea011.zip CMake-74b1c9fc8e8b33c8faa9aadf6ce09c15d94ea011.tar.gz CMake-74b1c9fc8e8b33c8faa9aadf6ce09c15d94ea011.tar.bz2 |
Explicitly specify language flag when source LANGUAGE property is set
Fixes: #14516, #20716
Diffstat (limited to 'Source/cmMakefileTargetGenerator.cxx')
-rw-r--r-- | Source/cmMakefileTargetGenerator.cxx | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/Source/cmMakefileTargetGenerator.cxx b/Source/cmMakefileTargetGenerator.cxx index 8396fa3..6887569 100644 --- a/Source/cmMakefileTargetGenerator.cxx +++ b/Source/cmMakefileTargetGenerator.cxx @@ -532,6 +532,13 @@ void cmMakefileTargetGenerator::WriteObjectRuleFiles( // Build the set of compiler flags. std::string flags; + // explicitly add the explicit language flag before any other flag + // this way backwards compatibility with user flags is maintained + if (source.GetProperty("LANGUAGE")) { + this->LocalGenerator->AppendFeatureOptions(flags, lang, + "EXPLICIT_LANGUAGE"); + } + // Add language-specific flags. std::string langFlags = cmStrCat("$(", lang, "_FLAGS", filterArch, ")"); this->LocalGenerator->AppendFlags(flags, langFlags); |