• Brad King's avatar
    MSVC: Add abstraction for runtime library selection · fb3370b6
    Brad King authored
    Replace our hard-coded defaults for `/MD` and `/MDd` with a first-class
    abstraction to select the runtime library from an enumeration of logical
    names.  We've long hesitated to do this because the idea of "runtime
    library selection" touches on related concepts on several platforms.
    Avoid that scope creep by simply defining an abstraction that applies
    only when targeting the MSVC ABI on Windows.
    
    Removing the old default flags requires a policy because existing
    projects may rely on string processing to edit them and choose a runtime
    library under the old behavior.  Add policy CMP0091 to provide
    compatibility.
    
    Fixes: #19108
    fb3370b6