Removing UAPvNext Assets from OOB packages (dotnet/corefx#35119)
authorJose Perez Rodriguez <joperezr@microsoft.com>
Wed, 6 Feb 2019 16:43:54 +0000 (08:43 -0800)
committerGitHub <noreply@github.com>
Wed, 6 Feb 2019 16:43:54 +0000 (08:43 -0800)
Commit migrated from https://github.com/dotnet/corefx/commit/c38c10d28e223aeea2f363a6ef0bf4a63d00a776

eng/Packaging.props
eng/disableUap.targets [new file with mode: 0644]
src/libraries/pkg/Microsoft.Private.CoreFx.UAP/Microsoft.Private.CoreFx.UAP.pkgproj

index c19b129..9922cb9 100644 (file)
@@ -67,4 +67,6 @@
         <SkipPackageFileCheck>true</SkipPackageFileCheck>
     </File>
   </ItemGroup>
+
+  <Import Condition="'$(MSBuildProjectExtension)' == '.pkgproj'" Project="$(MSBuildThisFileDirectory)disableUap.targets" />
 </Project>
diff --git a/eng/disableUap.targets b/eng/disableUap.targets
new file mode 100644 (file)
index 0000000..1a2e0d8
--- /dev/null
@@ -0,0 +1,12 @@
+<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Target Name="RemoveUapvNextContent"
+          Condition="'$(KeepUAPContent)' != 'true'"
+          DependsOnTargets="GetPackageReport"
+          BeforeTargets="GenerateNuSpec">
+    <ItemGroup>
+      <PackageFile Remove="@(PackageFile)" Condition="'%(PackageFile.TargetFramework)' == '$(UAPvNextTFM)'" />
+      <PackageFile Remove="@(PackageFile)" Condition="$([System.String]::new('%(PackageFile.TargetPath)').Contains('/$(UAPvNextTFM)'))" />
+      <Dependency Remove="@(Dependency)" Condition="'%(Dependency.TargetFramework)' == '$(UAPvNextTFM)'" />
+    </ItemGroup>
+  </Target>
+</Project>
\ No newline at end of file
index 2d80605..7bb0aba 100644 (file)
@@ -12,6 +12,9 @@
     <IsFrameworkPackage>true</IsFrameworkPackage>
     <!-- Private packages need symbols -->
     <IncludeSymbolsInPackage Condition="'$(IncludeSymbolsInPackage)' == ''">true</IncludeSymbolsInPackage>
+
+    <!-- Uap assets are stripped out of other packages, but we don't want to do that for the framework package -->
+    <KeepUAPContent>true</KeepUAPContent>
   </PropertyGroup>
   <ItemGroup>
     <IgnoredReference Include="System.Private.CoreLib" />