Skip to content
  • Brad King's avatar
    CSharp: Fix regression in VS project type selection · 375b420f
    Brad King authored
    A that target contains only `.cs` sources should be generated as a
    `.csproj` project even if it links to non-CSharp static libraries.
    The latter case was broken by refactoring in commit v3.12.0-rc1~160^2~7
    (remove TargetIsCSharpOnly() and use methods from cmGeneratorTarget,
    2018-03-19).  The reason is that the `HasLanguage` method added by
    commit v3.12.0-rc1~239^2~6 (cmGeneratorTarget: add HasLanguage() as
    wrapper for GetLanguages(), 2018-03-19) enforces its "exclusive" check
    on the combined set of source file languages and the link language.
    To restore the original `TargetIsCSharpOnly` semantics, update
    `HasLanguage` to enforce exclusiveness only on the list of sources.
    
    Fixes: #18239
    375b420f