mirror of
https://github.com/microsoft/PowerToys.git
synced 2026-04-03 09:46:54 +02:00
Reverts microsoft/PowerToys#44208 Basically enable back: https://github.com/microsoft/PowerToys/pull/43920 the core change is adding this new Target to ensure when "building in Visual Studio", it will restore the nuget package first for vcxproj: ```xml <!-- Auto-restore NuGet for native vcxproj (PackageReference) when building inside VS --> <Target Name="EnsureNuGetRestoreForVcxproj" BeforeTargets="PrepareForBuild" Condition=" '$(BuildingInsideVisualStudio)' == 'true' and '$(DesignTimeBuild)' != 'true' and '$(RestoreInProgress)' != 'true' and '$(MSBuildProjectExtension)' == '.vcxproj' and '$(RestoreProjectStyle)' == 'PackageReference' and '$(MSBuildProjectExtensionsPath)' != '' and !Exists('$(MSBuildProjectExtensionsPath)project.assets.json') "> <Message Importance="normal" Text="NuGet assets missing for $(MSBuildProjectName); running Restore...; IntDir=$(IntDir); BaseIntermediateOutputPath=$(BaseIntermediateOutputPath)" /> <MSBuild Projects="$(MSBuildProjectFullPath)" Targets="Restore" Properties="RestoreInProgress=true" BuildInParallel="false" /> </Target> ```
308 lines
13 KiB
XML
308 lines
13 KiB
XML
<Project Sdk="Microsoft.NET.Sdk">
|
|
<Import Project="..\..\..\Common.Dotnet.CsWinRT.props" />
|
|
<Import Project="..\..\..\Common.Dotnet.AotCompatibility.props" />
|
|
<Import Project="..\..\..\CmdPalVersion.props" />
|
|
<Import Project="CmdPal.pre.props" />
|
|
<Import Project="CmdPal.Branding.props" />
|
|
|
|
<PropertyGroup>
|
|
<OutputType>WinExe</OutputType>
|
|
<RootNamespace>Microsoft.CmdPal.UI</RootNamespace>
|
|
<ApplicationManifest>app.manifest</ApplicationManifest>
|
|
<PublishProfile>win-$(Platform).pubxml</PublishProfile>
|
|
<UseWinUI>true</UseWinUI>
|
|
<EnableMsixTooling>true</EnableMsixTooling>
|
|
<ImplicitUsings>enable</ImplicitUsings>
|
|
<Nullable>enable</Nullable>
|
|
<WindowsAppSDKSelfContained>true</WindowsAppSDKSelfContained>
|
|
<LangVersion>preview</LangVersion>
|
|
|
|
<Version>$(CmdPalVersion)</Version>
|
|
|
|
<!-- OutputPath is set in CmdPal.Branding.props -->
|
|
|
|
<AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
|
|
<AppendRuntimeIdentifierToOutputPath>false</AppendRuntimeIdentifierToOutputPath>
|
|
<UseWinRT>true</UseWinRT>
|
|
</PropertyGroup>
|
|
|
|
<!-- For debugging purposes, uncomment this block to enable AOT builds -->
|
|
<!--<PropertyGroup>
|
|
<EnableCmdPalAOT>true</EnableCmdPalAOT>
|
|
<GeneratePackageLocally>true</GeneratePackageLocally>
|
|
</PropertyGroup>-->
|
|
|
|
<PropertyGroup Condition="'$(EnableCmdPalAOT)' == 'true'">
|
|
<SelfContained>true</SelfContained>
|
|
<PublishSingleFile>false</PublishSingleFile>
|
|
<DisableRuntimeMarshalling>false</DisableRuntimeMarshalling>
|
|
<PublishAot>true</PublishAot>
|
|
</PropertyGroup>
|
|
|
|
<PropertyGroup Condition="'$(CIBuild)' == 'true' or '$(GeneratePackageLocally)' == 'true'">
|
|
<GenerateAppxPackageOnBuild>true</GenerateAppxPackageOnBuild>
|
|
<AppxBundle>Never</AppxBundle>
|
|
<AppxPackageTestDir>$(OutputPath)\AppPackages\Microsoft.CmdPal.UI_$(Version)_Test\</AppxPackageTestDir>
|
|
</PropertyGroup>
|
|
|
|
<PropertyGroup>
|
|
<!-- This lets us actually reference types from Microsoft.Terminal.UI and CmdPalKeyboardService -->
|
|
<CsWinRTIncludes>Microsoft.Terminal.UI;CmdPalKeyboardService</CsWinRTIncludes>
|
|
<CsWinRTGeneratedFilesDir>$(OutDir)</CsWinRTGeneratedFilesDir>
|
|
</PropertyGroup>
|
|
|
|
<PropertyGroup>
|
|
<!-- This disables the auto-generated main, so we can be single-instanced -->
|
|
<DefineConstants>DISABLE_XAML_GENERATED_MAIN</DefineConstants>
|
|
</PropertyGroup>
|
|
|
|
<!-- BODGY: XES Versioning and WinAppSDK get into a fight about the app manifest, which breaks WinAppSDK. -->
|
|
<Target Name="RearrangeXefVersioningAndWinAppSDKResourceGeneration" DependsOnTargets="GetNewAppManifestValues;CreateWinRTRegistration" BeforeTargets="XesWriteVersionInfoResourceFile">
|
|
<PropertyGroup>
|
|
<!-- XES uses this property to store the "final" location of the app manifest, before it erases it.
|
|
We have to update it to the value WinAppSDK set it to. -->
|
|
<OriginalApplicationManifest>$(ApplicationManifest.Replace("$(MSBuildProjectDirectory)\",""))</OriginalApplicationManifest>
|
|
</PropertyGroup>
|
|
<Message Importance="High" Text="Updated final manifest path to $(OriginalApplicationManifest)" />
|
|
</Target>
|
|
|
|
<ItemGroup>
|
|
<None Remove="Controls\ActionBar.xaml" />
|
|
<None Remove="Controls\ColorPalette.xaml" />
|
|
<None Remove="Controls\CommandPalettePreview.xaml" />
|
|
<None Remove="Controls\DevRibbon.xaml" />
|
|
<None Remove="Controls\KeyVisual\KeyCharPresenter.xaml" />
|
|
<None Remove="Controls\ScreenPreview.xaml" />
|
|
<None Remove="Controls\SearchBar.xaml" />
|
|
<None Remove="IsEnabledTextBlock.xaml" />
|
|
<None Remove="ListDetailPage.xaml" />
|
|
<None Remove="LoadingPage.xaml" />
|
|
<None Remove="MainPage.xaml" />
|
|
<None Remove="Pages\Settings\ExtensionsPage.xaml" />
|
|
<None Remove="Pages\Settings\GeneralPage.xaml" />
|
|
<None Remove="SettingsWindow.xaml" />
|
|
<None Remove="Settings\AppearancePage.xaml" />
|
|
<None Remove="ShellPage.xaml" />
|
|
<None Remove="Styles\Colors.xaml" />
|
|
<None Remove="Styles\Settings.xaml" />
|
|
<None Remove="Styles\TextBox.xaml" />
|
|
<None Remove="Styles\Theme.Normal.xaml" />
|
|
</ItemGroup>
|
|
|
|
|
|
<ItemGroup>
|
|
<PackageReference Include="CommunityToolkit.WinUI.Controls.Primitives" />
|
|
<PackageReference Include="CommunityToolkit.WinUI.Controls.SettingsControls" />
|
|
<PackageReference Include="CommunityToolkit.WinUI.Converters" />
|
|
<PackageReference Include="CommunityToolkit.WinUI.Animations" />
|
|
<PackageReference Include="CommunityToolkit.WinUI.Extensions" />
|
|
<PackageReference Include="CommunityToolkit.Labs.WinUI.Controls.MarkdownTextBlock" />
|
|
<PackageReference Include="Microsoft.Extensions.DependencyInjection" />
|
|
<PackageReference Include="Microsoft.Graphics.Win2D" />
|
|
<PackageReference Include="Microsoft.Windows.SDK.BuildTools" />
|
|
<PackageReference Include="Microsoft.WindowsAppSDK" />
|
|
<PackageReference Include="Microsoft.Xaml.Behaviors.WinUI.Managed" />
|
|
<PackageReference Include="WinUIEx" />
|
|
<PackageReference Include="Microsoft.Windows.CsWin32">
|
|
<PrivateAssets>all</PrivateAssets>
|
|
<IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
|
|
</PackageReference>
|
|
|
|
<PackageReference Include="Microsoft.Extensions.Hosting" />
|
|
</ItemGroup>
|
|
|
|
<!--
|
|
Defining the "Msix" ProjectCapability here allows the Single-project MSIX Packaging
|
|
Tools extension to be activated for this project even if the Windows App SDK Nuget
|
|
package has not yet been restored.
|
|
-->
|
|
<ItemGroup Condition="'$(DisableMsixProjectCapabilityAddedByProject)'!='true' and '$(EnableMsixTooling)'=='true'">
|
|
<ProjectCapability Include="Msix" />
|
|
</ItemGroup>
|
|
|
|
<ItemGroup>
|
|
<SDKReference Include="Microsoft.VCLibs.Desktop, Version=14.0" />
|
|
</ItemGroup>
|
|
|
|
<ItemGroup>
|
|
<ProjectReference Include="..\..\..\common\ManagedTelemetry\Telemetry\ManagedTelemetry.csproj" />
|
|
<ProjectReference Include="..\ext\Microsoft.CmdPal.Ext.ClipboardHistory\Microsoft.CmdPal.Ext.ClipboardHistory.csproj" />
|
|
<ProjectReference Include="..\ext\Microsoft.CmdPal.Ext.RemoteDesktop\Microsoft.CmdPal.Ext.RemoteDesktop.csproj" />
|
|
<ProjectReference Include="..\ext\Microsoft.CmdPal.Ext.System\Microsoft.CmdPal.Ext.System.csproj" />
|
|
<ProjectReference Include="..\ext\Microsoft.CmdPal.Ext.WebSearch\Microsoft.CmdPal.Ext.WebSearch.csproj" />
|
|
<ProjectReference Include="..\ext\Microsoft.CmdPal.Ext.Indexer\Microsoft.CmdPal.Ext.Indexer.csproj" />
|
|
<ProjectReference Include="..\Core\Microsoft.CmdPal.Core.Common\Microsoft.CmdPal.Core.Common.csproj" />
|
|
<ProjectReference Include="..\Microsoft.CmdPal.UI.ViewModels\Microsoft.CmdPal.UI.ViewModels.csproj" />
|
|
|
|
<ProjectReference Include="..\extensionsdk\Microsoft.CommandPalette.Extensions.Toolkit\Microsoft.CommandPalette.Extensions.Toolkit.csproj" />
|
|
|
|
<ProjectReference Include="..\ext\Microsoft.CmdPal.Ext.Apps\Microsoft.CmdPal.Ext.Apps.csproj" />
|
|
<ProjectReference Include="..\ext\Microsoft.CmdPal.Ext.Bookmark\Microsoft.CmdPal.Ext.Bookmarks.csproj" />
|
|
<ProjectReference Include="..\ext\Microsoft.CmdPal.Ext.Calc\Microsoft.CmdPal.Ext.Calc.csproj" />
|
|
<ProjectReference Include="..\ext\Microsoft.CmdPal.Ext.Registry\Microsoft.CmdPal.Ext.Registry.csproj" />
|
|
<ProjectReference Include="..\ext\Microsoft.CmdPal.Ext.Shell\Microsoft.CmdPal.Ext.Shell.csproj" />
|
|
<ProjectReference Include="..\ext\Microsoft.CmdPal.Ext.TimeDate\Microsoft.CmdPal.Ext.TimeDate.csproj" />
|
|
<ProjectReference Include="..\ext\Microsoft.CmdPal.Ext.WindowsServices\Microsoft.CmdPal.Ext.WindowsServices.csproj" />
|
|
<ProjectReference Include="..\ext\Microsoft.CmdPal.Ext.WindowsSettings\Microsoft.CmdPal.Ext.WindowsSettings.csproj" />
|
|
<ProjectReference Include="..\ext\Microsoft.CmdPal.Ext.WindowsTerminal\Microsoft.CmdPal.Ext.WindowsTerminal.csproj" />
|
|
<ProjectReference Include="..\ext\Microsoft.CmdPal.Ext.WindowWalker\Microsoft.CmdPal.Ext.WindowWalker.csproj" />
|
|
<ProjectReference Include="..\ext\Microsoft.CmdPal.Ext.WinGet\Microsoft.CmdPal.Ext.WinGet.csproj" />
|
|
|
|
<ProjectReference Include="$(ProjectDir)\..\Microsoft.Terminal.UI\Microsoft.Terminal.UI.vcxproj">
|
|
<ReferenceOutputAssembly>False</ReferenceOutputAssembly>
|
|
<BuildProject>True</BuildProject>
|
|
</ProjectReference>
|
|
<!-- WinRT metadata reference -->
|
|
<CsWinRTInputs Include="$(OutputPath)\Microsoft.Terminal.UI.winmd" />
|
|
<!-- Native implementation DLL -->
|
|
<None Include="$(OutputPath)\Microsoft.Terminal.UI.dll">
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
</None>
|
|
<ProjectReference Include="..\CmdPalKeyboardService\CmdPalKeyboardService.vcxproj">
|
|
<ReferenceOutputAssembly>True</ReferenceOutputAssembly>
|
|
<Private>True</Private>
|
|
<CopyLocalSatelliteAssemblies>True</CopyLocalSatelliteAssemblies>
|
|
</ProjectReference>
|
|
</ItemGroup>
|
|
|
|
<ItemGroup>
|
|
<Page Update="LoadingPage.xaml">
|
|
<Generator>MSBuild:Compile</Generator>
|
|
</Page>
|
|
<Page Update="ShellPage.xaml">
|
|
<Generator>MSBuild:Compile</Generator>
|
|
</Page>
|
|
<Page Update="ListDetailPage.xaml">
|
|
<Generator>MSBuild:Compile</Generator>
|
|
</Page>
|
|
<Page Update="MainPage.xaml">
|
|
<Generator>MSBuild:Compile</Generator>
|
|
</Page>
|
|
<Page Update="Controls\SearchBar.xaml">
|
|
<Generator>MSBuild:Compile</Generator>
|
|
</Page>
|
|
<Page Update="Controls\DevRibbon.xaml">
|
|
<Generator>MSBuild:Compile</Generator>
|
|
</Page>
|
|
<Page Update="Styles\TextBox.xaml">
|
|
<XamlRuntime>$(DefaultXamlRuntime)</XamlRuntime>
|
|
</Page>
|
|
</ItemGroup>
|
|
|
|
<!--
|
|
Defining the "HasPackageAndPublishMenuAddedByProject" property here allows the Solution
|
|
Explorer "Package and Publish" context menu entry to be enabled for this project even if
|
|
the Windows App SDK Nuget package has not yet been restored.
|
|
-->
|
|
<PropertyGroup Condition="'$(DisableHasPackageAndPublishMenuAddedByProject)'!='true' and '$(EnableMsixTooling)'=='true'">
|
|
<HasPackageAndPublishMenu>true</HasPackageAndPublishMenu>
|
|
</PropertyGroup>
|
|
|
|
<ItemGroup>
|
|
<Content Update="..\Microsoft.CmdPal.UI.ViewModels\Assets\template.zip">
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
</Content>
|
|
<Content Update="Assets\StoreLogo.dark.svg">
|
|
<CopyToOutputDirectory>Never</CopyToOutputDirectory>
|
|
</Content>
|
|
<Content Update="Assets\StoreLogo.light.svg">
|
|
<CopyToOutputDirectory>Never</CopyToOutputDirectory>
|
|
</Content>
|
|
<Content Update="Assets\WinGetLogo.svg">
|
|
<CopyToOutputDirectory>Never</CopyToOutputDirectory>
|
|
</Content>
|
|
</ItemGroup>
|
|
|
|
<ItemGroup>
|
|
<Page Update="Controls\CommandPalettePreview.xaml">
|
|
<Generator>MSBuild:Compile</Generator>
|
|
</Page>
|
|
</ItemGroup>
|
|
|
|
<ItemGroup>
|
|
<Page Update="Controls\ScreenPreview.xaml">
|
|
<Generator>MSBuild:Compile</Generator>
|
|
</Page>
|
|
</ItemGroup>
|
|
|
|
<ItemGroup>
|
|
<Page Update="Controls\ColorPalette.xaml">
|
|
<Generator>MSBuild:Compile</Generator>
|
|
</Page>
|
|
</ItemGroup>
|
|
|
|
<ItemGroup>
|
|
<Page Update="Styles\Theme.Colorful.xaml">
|
|
<SubType>Designer</SubType>
|
|
</Page>
|
|
<Page Update="Styles\Theme.Normal.xaml">
|
|
<Generator>MSBuild:Compile</Generator>
|
|
</Page>
|
|
</ItemGroup>
|
|
|
|
<ItemGroup>
|
|
<Page Update="Settings\AppearancePage.xaml">
|
|
<Generator>MSBuild:Compile</Generator>
|
|
</Page>
|
|
</ItemGroup>
|
|
|
|
<ItemGroup>
|
|
<Page Update="IsEnabledTextBlock.xaml">
|
|
<Generator>MSBuild:Compile</Generator>
|
|
</Page>
|
|
</ItemGroup>
|
|
|
|
<ItemGroup>
|
|
<Page Update="Controls\KeyVisual\KeyCharPresenter.xaml">
|
|
<Generator>MSBuild:Compile</Generator>
|
|
</Page>
|
|
</ItemGroup>
|
|
<ItemGroup>
|
|
<Page Update="Styles\Colors.xaml">
|
|
<Generator>MSBuild:Compile</Generator>
|
|
</Page>
|
|
</ItemGroup>
|
|
<ItemGroup>
|
|
<Page Update="Styles\Settings.xaml">
|
|
<Generator>MSBuild:Compile</Generator>
|
|
</Page>
|
|
</ItemGroup>
|
|
<ItemGroup>
|
|
<Page Update="Pages\Settings\ExtensionsPage.xaml">
|
|
<Generator>MSBuild:Compile</Generator>
|
|
</Page>
|
|
</ItemGroup>
|
|
<ItemGroup>
|
|
<Page Update="SettingsWindow.xaml">
|
|
<Generator>MSBuild:Compile</Generator>
|
|
</Page>
|
|
</ItemGroup>
|
|
<ItemGroup>
|
|
<Page Update="Pages\Settings\GeneralPage.xaml">
|
|
<Generator>MSBuild:Compile</Generator>
|
|
</Page>
|
|
</ItemGroup>
|
|
<!-- </AdaptiveCardsWorkaround> -->
|
|
|
|
<!-- Metadata for build information -->
|
|
<ItemGroup>
|
|
<AssemblyAttribute Include="System.Reflection.AssemblyMetadataAttribute">
|
|
<_Parameter1>PublishTrimmed</_Parameter1>
|
|
<_Parameter2>$(PublishTrimmed)</_Parameter2>
|
|
</AssemblyAttribute>
|
|
<AssemblyAttribute Include="System.Reflection.AssemblyMetadataAttribute">
|
|
<_Parameter1>PublishAot</_Parameter1>
|
|
<_Parameter2>$(PublishAot)</_Parameter2>
|
|
</AssemblyAttribute>
|
|
<AssemblyAttribute Include="System.Reflection.AssemblyMetadataAttribute">
|
|
<_Parameter1>CIBuild</_Parameter1>
|
|
<_Parameter2>$(CIBuild)</_Parameter2>
|
|
</AssemblyAttribute>
|
|
<AssemblyAttribute Include="System.Reflection.AssemblyMetadataAttribute">
|
|
<_Parameter1>CommandPaletteBranding</_Parameter1>
|
|
<_Parameter2>$(CommandPaletteBranding)</_Parameter2>
|
|
</AssemblyAttribute>
|
|
</ItemGroup>
|
|
|
|
</Project>
|