/ src / modules / cmdpal / ext / Microsoft.CmdPal.Ext.WinGet / Microsoft.CmdPal.Ext.WinGet.csproj
Microsoft.CmdPal.Ext.WinGet.csproj
  1  <Project Sdk="Microsoft.NET.Sdk">
  2    <Import Project="$(RepoRoot)src\Common.Dotnet.CsWinRT.props" />
  3    <Import Project="..\Common.ExtDependencies.props" />
  4    <PropertyGroup>
  5      <RootNamespace>Microsoft.CmdPal.Ext.WinGet</RootNamespace>
  6      <ApplicationManifest>app.manifest</ApplicationManifest>
  7      <PublishProfile>win-$(Platform).pubxml</PublishProfile>
  8      <UseWinUI>false</UseWinUI>
  9      <Nullable>enable</Nullable>
 10      <EnableMsixTooling>true</EnableMsixTooling>
 11      <OutputPath>$(SolutionDir)$(Platform)\$(Configuration)\WinUI3Apps\CmdPal</OutputPath>
 12      <AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
 13      <AppendRuntimeIdentifierToOutputPath>false</AppendRuntimeIdentifierToOutputPath>
 14    </PropertyGroup>
 15  
 16    <PropertyGroup>
 17        <CsWinRTIncludes>Microsoft.Management.Deployment</CsWinRTIncludes>
 18        <CsWinRTGeneratedFilesDir>$(OutDir)</CsWinRTGeneratedFilesDir>
 19    </PropertyGroup>
 20  
 21    <ItemGroup>
 22      <None Remove="Assets\Extension.png" />
 23      <None Remove="Assets\Extension.svg" />
 24      <None Remove="Assets\Store.dark.png" />
 25      <None Remove="Assets\Store.dark.svg" />
 26      <None Remove="Assets\Store.light.png" />
 27      <None Remove="Assets\Store.light.svg" />
 28      <None Remove="Assets\WinGet.png" />
 29      <None Remove="Assets\WinGet.svg" />
 30    </ItemGroup>
 31  
 32    <ItemGroup>
 33      <Manifest Include="$(ApplicationManifest)" />
 34    </ItemGroup>
 35  
 36    <ItemGroup>
 37      <AdditionalFiles Include="NativeMethods.txt" />
 38      <AdditionalFiles Include="NativeMethods.json" />
 39    </ItemGroup>
 40  
 41    <ItemGroup>
 42      <ProjectReference Include="..\..\..\..\common\ManagedCommon\ManagedCommon.csproj" />
 43      <ProjectReference Include="..\..\Core\Microsoft.CmdPal.Core.Common\Microsoft.CmdPal.Core.Common.csproj" />
 44    </ItemGroup>
 45  
 46    <!--
 47      Defining the "Msix" ProjectCapability here allows the Single-project MSIX Packaging
 48      Tools extension to be activated for this project even if the Windows App SDK Nuget
 49      package has not yet been restored.
 50    -->
 51    <ItemGroup Condition="'$(DisableMsixProjectCapabilityAddedByProject)'!='true' and '$(EnableMsixTooling)'=='true'">
 52      <ProjectCapability Include="Msix" />
 53    </ItemGroup>
 54  
 55    <ItemGroup>
 56      <CsWinRTInputs Include="$(PkgMicrosoft_WindowsPackageManager_ComInterop)\lib\uap10.0\Microsoft.Management.Deployment.winmd" />
 57  
 58      <!-- Before v1.10 of this package, it wasn't in the uap10.0 dir  -->
 59      <Content Include="$(PkgMicrosoft_WindowsPackageManager_ComInterop)\lib\uap10.0\Microsoft.Management.Deployment.winmd" Link="Microsoft.Management.Deployment.winmd" CopyToOutputDirectory="PreserveNewest" />
 60    </ItemGroup>
 61    <ItemGroup>
 62      <PackageReference Include="Microsoft.Windows.CsWin32">
 63        <PrivateAssets>all</PrivateAssets>
 64        <IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
 65      </PackageReference>
 66      <PackageReference Include="Microsoft.WindowsPackageManager.ComInterop">
 67        <NoWarn>NU1701</NoWarn>
 68        <GeneratePathProperty>true</GeneratePathProperty>
 69        <IncludeAssets>none</IncludeAssets>
 70      </PackageReference>
 71    </ItemGroup>
 72  
 73    <!--
 74      Defining the "HasPackageAndPublishMenuAddedByProject" property here allows the Solution
 75      Explorer "Package and Publish" context menu entry to be enabled for this project even if
 76      the Windows App SDK Nuget package has not yet been restored.
 77    -->
 78    <PropertyGroup Condition="'$(DisableHasPackageAndPublishMenuAddedByProject)'!='true' and '$(EnableMsixTooling)'=='true'">
 79      <HasPackageAndPublishMenu>true</HasPackageAndPublishMenu>
 80    </PropertyGroup>
 81  
 82    <ItemGroup>
 83      <Compile Update="Properties\Resources.Designer.cs">
 84        <DependentUpon>Resources.resx</DependentUpon>
 85        <DesignTime>True</DesignTime>
 86        <AutoGen>True</AutoGen>
 87      </Compile>
 88    </ItemGroup>
 89  
 90    <ItemGroup>
 91      <Content Update="Assets\**\*.*">
 92        <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
 93      </Content>
 94    </ItemGroup>
 95  
 96    <ItemGroup>
 97      <EmbeddedResource Update="Properties\Resources.resx">
 98        <LastGenOutput>Resources.Designer.cs</LastGenOutput>
 99        <Generator>PublicResXFileCodeGenerator</Generator>
100      </EmbeddedResource>
101    </ItemGroup>
102  </Project>