• J
    Fix our MSB3270 warnings · 40029154
    Jared Parsons 提交于
    There are a few parts to this change:
    
    1. Ensure that MSB3270 and MSB3277 warnings are promoted to errors in CI
    and hence block merging.
    1. Move our DiaSymReader.Native logic into a separate targets file.
    This resource cannot be consumed with a simple package reference but
    rather requires a package reference and custom logic to pull out the
    contained binaries. This logic used to be spread through our build. Now
    it's in a single place.
    1. Remove the x86 bootstrapping logic. This was testing a pretty obscure
    scenario and the cost of maintaining that logic is siginificant at this
    point. Can bring back if we ever find a bug in this area.
    
    The root cause of the MSB3270 warnings is a subtle change in the SDK. It
    now passes the runtime graph to NuGet for native assets. In the case of
    DiaSymReader.Native there are runtime specific assets hence the SDK /
    NuGet had to pick one for framework projects. This eventually lead to
    `PlatformTarget` being set to x86 where it shoud have been AnyCPU.
    
    Part of the change includes adding `ExcludeAssets=all` to the package
    reference which means they no longer figure into this logic and hence
    the binaries are marked as AnyCPU.
    
    This regression in behavior is being tracked by
    https://github.com/dotnet/sdk/issues/3495
    40029154
build-utils.ps1 10.7 KB