mirror of
https://github.com/microsoft/PowerToys.git
synced 2024-12-24 00:48:00 +08:00
864b862952
* Flatten everything and succeed build * Figure out Settings assets * Remove UseCommonOutputDirectory tag * Proper settings app path * [VCM] Fix assets location * Fix some runtime paths * [RegistryPreview]Use MRTCore specific pri file * [Hosts]Use MRTCore specific pri file * [Settings]Use MRTCore specific pri file * [Peek]Use MRTCore specific pri file * [FileLocksmith]Use MRTCore specific pri file * [ScreenRuler]Use MRTCore specific pri file * [PowerRename]Use MRTCore specific pri file * [Peek]Move assets to own folder * [FileLocksmith] Use own Assets path * [Hosts]Use own assets folder * [PowerRename]Use own assets dir * [MeasureTool] Use its own assets folder * [ImageResizer]Use its own assets path * Fix spellcheck * Fix tab instead of space in project files * Normalize target frameworks and platforms * Remove WINRT_NO_MAKE_DETECTION flag. No longer needed? * Fix AOT and Hosts locations * Fix Dll version differences on dependency * Add Common.UI.csproj as refernce to fix dll versions * Update ControlzEx to normalize dll versions * Update System.Management version to 7.0.2 * Add GPOWrapper to Registry Preview to fix dll versions * [PTRun]Reference Microsoft.Extensions.Hosting to fix dll versions * Fix remaining output paths / dll version conflicts * [KeyboardManager]Executables still on their own directories * Fix Monaco paths * WinAppSDK apps get to play outside again * Enable VCM settings again * Fix KBM Editor path again * [Monaco]Set to own Assets dir * Fix installer preamble; Fix publish. remove unneeded publishes * Remove Hardlink functions * Installer builds again (still needs work to work) * Readd Monaco to spellcheck excludes * Fix spellcheck and call publish.cmd again * [Installer] Remove components that don't need own dirs * [Installer] Refactor Power Launcher * [Installer] Refactor Color Picker * [Installer] Refactor Monaco assets * [Installer]Generate File script no longer needs to remove files * [Installer]Refactor FileLocksmith * [Installer] Refactor Hosts * [Installer]Refactor Image Resizer * [Installer]Refactor MouseUtils * [Installer]Refactor MWB * [Installer]Refactor MeasureTool * [Installer]Refactor Peek * [Installer]Refactor PowerRename and registry fixes * [Installer]Refactor RegistryPreview * [Installer]Refactor ShortcutGuide * [Installer]Refactor Settings * [Installer]Clean up some unused stuff * [Installer]Clean up stuff for user install * [Installer]Fix WinUi3Apps wxs * [Installer]Fix misplaced folders * [Installer]Move x86 VCM dll to right path * Fix monaco language list location * [Installer]Fix VCM directory reference * [CI]Fix signing * [Installer] Fix resources folder for release CI * [ci]Looks like we still ship NLog on PowerToys Run * [Settings]Add dependency to avoid dll collision with Experimentation * [RegistryPreview]Move XAML files to own path * [RegistryPreview]Fix app icon * [Hosts]Move XAML files to their own path * [FileLocksmith]Move XAML files to their own path * [Peek]Move XAML files to own path * [ScreenRuler]Move XAML files to its own path * [Settings]Move XAML to its own path * [ColorPicker]Move Resources to Assets * [ShortcutGuide]Move svgs to own Assets path * [Awake]Move images to assets path * [Runner]Remove debug checks for PowerToys Run assets * [PTRun]Move images to its own assets path * [ImageResizer]Icon for context menu on own assets path * [PowerRename]Move ico to its own path * Remove unneeded intermediary directories * Remove further int dirs * Move tests to its own output path * Fix spellcheck * spellcheck: remove warnings * [CppAnalyzers]Ignore rule in a tool * [CI]Check if all deps.json files reference same versions * fix spellcheck * [ci]Fix task identation * [ci]Add script to guard against asset conflicts * [ci]Add more deps.json audit steps in the release build * Add xbf to spellcheck expects * Fix typo in asset conflict check scripts * Fix some more dependency conflicts * Downgrade CsWinRT to have the same dll version as sdk * [ci]Do a recursive check for every deps.json * Fix spellcheck error inside comment * [ci]Fix asset script error * [ci]Name deps.json verify tasks a bit better * [ci]Improve deps json verify script output * [ci]Update WinRT version to the same running in CI * Also upgrade CsWinRT in NOTICE.MD * [PowerRename]Move XAML files to own path * [Common]Fix Settings executable path * [ci]Verify there's no xbf files in app directories * [installer]Fix firewall path * [Monaco]Move new files to their proper assets path * [Monaco]Fix paths for new files after merge * [Feedback]Removed unneeded build conditions * [Feedback]Clear vcxproj direct reference to frameworks * [Feedback]RunPlugins name to hold PTRun plugins * [Feedback]Remove unneeded foreach * [Feedback]Shortcut Guide svgs with ** in project file * [Feedback]Fix spellcheck
196 lines
10 KiB
XML
196 lines
10 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<Project ToolsVersion="4.0" DefaultTargets="Build" InitialTargets="EnsureNuGetPackageBuildImports" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
<Import Project="..\wix.props" Condition="Exists('..\wix.props')" />
|
|
<Import Project="..\..\src\Version.props" />
|
|
|
|
<PropertyGroup Condition="'$(Platform)' == 'x64'">
|
|
<DefineConstants>Version=$(Version);MonacoSRCHarvestPath=$(ProjectDir)..\..\x64\$(Configuration)\Assets\Monaco\monacoSRC</DefineConstants>
|
|
<!-- THIS IS AN INNER LOOP OPTIMIZATION
|
|
The build pipeline builds the Settings and Launcher projects for Publication
|
|
using a specific profile. If you're doing local installer builds, this will
|
|
simulate the build pipeline doing that for you. -->
|
|
<PreBuildEvent>IF NOT DEFINED IsPipeline (
|
|
call "$([MSBuild]::GetVsInstallRoot())\Common7\Tools\VsDevCmd.bat" -arch=amd64 -host_arch=amd64 -winsdk=10.0.19041.0
|
|
SET PTRoot=$(SolutionDir)\..
|
|
call "..\..\..\publish.cmd" x64
|
|
)
|
|
call powershell.exe -NonInteractive -executionpolicy Unrestricted -File $(MSBuildThisFileDirectory)\generateMonacoWxs.ps1 -monacoWxsFile "$(MSBuildThisFileDirectory)\MonacoSRC.wxs"
|
|
</PreBuildEvent>
|
|
</PropertyGroup>
|
|
|
|
<PropertyGroup Condition="'$(Platform)' != 'x64'">
|
|
<DefineConstants>Version=$(Version);MonacoSRCHarvestPath=$(ProjectDir)..\..\ARM64\$(Configuration)\Assets\Monaco\monacoSRC</DefineConstants>
|
|
<PreBuildEvent>IF NOT DEFINED IsPipeline (
|
|
call "$([MSBuild]::GetVsInstallRoot())\Common7\Tools\VsDevCmd.bat" -arch=arm64 -host_arch=amd64 -winsdk=10.0.19041.0
|
|
SET PTRoot=$(SolutionDir)\..
|
|
call "..\..\..\publish.cmd" arm64
|
|
)
|
|
call powershell.exe -NonInteractive -executionpolicy Unrestricted -File $(MSBuildThisFileDirectory)\generateMonacoWxs.ps1 -monacoWxsFile "$(MSBuildThisFileDirectory)\MonacoSRC.wxs"
|
|
</PreBuildEvent>
|
|
</PropertyGroup>
|
|
<PropertyGroup>
|
|
<RunPostBuildEvent>Always</RunPostBuildEvent>
|
|
<PostBuildEvent>
|
|
call move /Y ..\..\..\Awake.wxs.bk ..\..\..\Awake.wxs
|
|
call move /Y ..\..\..\BaseApplications.wxs.bk ..\..\..\BaseApplications.wxs
|
|
call move /Y ..\..\..\ColorPicker.wxs.bk ..\..\..\ColorPicker.wxs
|
|
call move /Y ..\..\..\Core.wxs.bk ..\..\..\Core.wxs
|
|
call move /Y ..\..\..\FileExplorerPreview.wxs.bk ..\..\..\FileExplorerPreview.wxs
|
|
call move /Y ..\..\..\FileLocksmith.wxs.bk ..\..\..\FileLocksmith.wxs
|
|
call move /Y ..\..\..\Hosts.wxs.bk ..\..\..\Hosts.wxs
|
|
call move /Y ..\..\..\ImageResizer.wxs.bk ..\..\..\ImageResizer.wxs
|
|
call move /Y ..\..\..\KeyboardManager.wxs.bk ..\..\..\KeyboardManager.wxs
|
|
call move /Y ..\..\..\MouseWithoutBorders.wxs.bk ..\..\..\MouseWithoutBorders.wxs
|
|
call move /Y ..\..\..\Peek.wxs.bk ..\..\..\Peek.wxs
|
|
call move /Y ..\..\..\PowerRename.wxs.bk ..\..\..\PowerRename.wxs
|
|
call move /Y ..\..\..\Product.wxs.bk ..\..\..\Product.wxs
|
|
call move /Y ..\..\..\RegistryPreview.wxs.bk ..\..\..\RegistryPreview.wxs
|
|
call move /Y ..\..\..\Resources.wxs.bk ..\..\..\Resources.wxs
|
|
call move /Y ..\..\..\Run.wxs.bk ..\..\..\Run.wxs
|
|
call move /Y ..\..\..\Settings.wxs.bk ..\..\..\Settings.wxs
|
|
call move /Y ..\..\..\ShortcutGuide.wxs.bk ..\..\..\ShortcutGuide.wxs
|
|
call move /Y ..\..\..\Tools.wxs.bk ..\..\..\Tools.wxs
|
|
call move /Y ..\..\..\VideoConference.wxs.bk ..\..\..\VideoConference.wxs
|
|
call move /Y ..\..\..\WinAppSDK.wxs.bk ..\..\..\WinAppSDK.wxs
|
|
call move /Y ..\..\..\WinUI3Applications.wxs.bk ..\..\..\WinUI3Applications.wxs
|
|
</PostBuildEvent>
|
|
</PropertyGroup>
|
|
<PropertyGroup>
|
|
<Name>PowerToysInstaller</Name>
|
|
</PropertyGroup>
|
|
<PropertyGroup Label="UserMacros" Condition=" '$(PerUser)' == 'true' ">
|
|
<DefineConstants>$(DefineConstants);PerUser=true</DefineConstants>
|
|
</PropertyGroup>
|
|
<PropertyGroup Label="UserMacros" Condition=" '$(PerUser)' != 'true' ">
|
|
<DefineConstants>$(DefineConstants);PerUser=false</DefineConstants>
|
|
</PropertyGroup>
|
|
|
|
<PropertyGroup>
|
|
<!-- We do not support debug installer builds -->
|
|
<Configuration Condition=" '$(Configuration)' == '' ">Release</Configuration>
|
|
<Platform>$(Platform)</Platform>
|
|
<ProductVersion>3.10</ProductVersion>
|
|
<ProjectGuid>022a9d30-7c4f-416d-a9df-5ff2661cc0ad</ProjectGuid>
|
|
<SchemaVersion>2.0</SchemaVersion>
|
|
<OutputName Condition=" '$(PerUser)' != 'true' ">PowerToysSetup-$(Version)-$(Platform)</OutputName>
|
|
<OutputName Condition=" '$(PerUser)' == 'true' ">PowerToysUserSetup-$(Version)-$(Platform)</OutputName>
|
|
<OutputType>Package</OutputType>
|
|
<SuppressAclReset>True</SuppressAclReset>
|
|
<NuGetPackageImportStamp>
|
|
</NuGetPackageImportStamp>
|
|
<!-- 1076 and ICE91 - warning: using this configuration for perMachine install could cause problems. -->
|
|
<!-- 1026 - warning: file ID is too long -->
|
|
<SuppressIces>ICE91</SuppressIces>
|
|
<SuppressSpecificWarnings>1026;1076</SuppressSpecificWarnings>
|
|
</PropertyGroup>
|
|
<PropertyGroup>
|
|
<OutputPath Condition=" '$(PerUser)' != 'true' ">$(Platform)\$(Configuration)\MachineSetup</OutputPath>
|
|
<OutputPath Condition=" '$(PerUser)' == 'true' ">$(Platform)\$(Configuration)\UserSetup</OutputPath>
|
|
<IntermediateOutputPath Condition=" '$(PerUser)' != 'true' ">obj\$(Platform)\$(Configuration)\MachineSetup</IntermediateOutputPath>
|
|
<IntermediateOutputPath Condition=" '$(PerUser)' == 'true' ">obj\$(Platform)\$(Configuration)\UserSetup</IntermediateOutputPath>
|
|
<SuppressIces>ICE40</SuppressIces>
|
|
</PropertyGroup>
|
|
<PropertyGroup>
|
|
<!-- suppress warning 1108 regarding -sh being deprecated -->
|
|
<!-- -sh suppresses file information which was causing wix build to hang in CI -->
|
|
<LinkerAdditionalOptions>-v -sh -sw1108</LinkerAdditionalOptions>
|
|
</PropertyGroup>
|
|
<ItemGroup>
|
|
<Compile Include="CustomDialogs\PTInstallDirDlg.wxs" />
|
|
<Compile Include="CustomDialogs\PTLicenseDlg.wxs" />
|
|
<Compile Include="CustomDialogs\WixUI_PTInstallDir.wxs" />
|
|
<Compile Include="Product.wxs" />
|
|
|
|
<Compile Include="Awake.wxs" />
|
|
<Compile Include="BaseApplications.wxs" />
|
|
<Compile Include="ColorPicker.wxs" />
|
|
<Compile Include="FileExplorerPreview.wxs" />
|
|
<Compile Include="FileLocksmith.wxs" />
|
|
<Compile Include="Hosts.wxs" />
|
|
<Compile Include="ImageResizer.wxs" />
|
|
<Compile Include="KeyboardManager.wxs" />
|
|
<Compile Include="Peek.wxs" />
|
|
<Compile Include="PowerRename.wxs" />
|
|
<Compile Include="RegistryPreview.wxs" />
|
|
<Compile Include="Run.wxs" />
|
|
<Compile Include="Settings.wxs" />
|
|
<Compile Include="ShortcutGuide.wxs" />
|
|
<Compile Include="Tools.wxs" />
|
|
<Compile Include="VideoConference.wxs" />
|
|
<Compile Include="MouseWithoutBorders.wxs" />
|
|
<Compile Include="WinUI3Applications.wxs" />
|
|
|
|
<Compile Include="MonacoSRC.wxs" />
|
|
|
|
<Compile Include="Core.wxs" />
|
|
<Compile Include="Resources.wxs" />
|
|
<Compile Include="WinAppSDK.wxs" />
|
|
</ItemGroup>
|
|
<ItemGroup>
|
|
<WixExtension Include="WixFirewallExtension">
|
|
<HintPath>$(WixExtDir)\WixFirewallExtension.dll</HintPath>
|
|
<Name>WixFirewallExtension</Name>
|
|
</WixExtension>
|
|
<WixExtension Include="WixUtilExtension">
|
|
<HintPath>$(WixExtDir)\WixUtilExtension.dll</HintPath>
|
|
<Name>WixUtilExtension</Name>
|
|
</WixExtension>
|
|
<WixExtension Include="WixUIExtension">
|
|
<HintPath>$(WixExtDir)\WixUIExtension.dll</HintPath>
|
|
<Name>WixUIExtension</Name>
|
|
</WixExtension>
|
|
<WixExtension Include="WixNetFxExtension">
|
|
<HintPath>$(WixExtDir)\WixNetFxExtension.dll</HintPath>
|
|
<Name>WixNetFxExtension</Name>
|
|
</WixExtension>
|
|
</ItemGroup>
|
|
<ItemGroup>
|
|
<Folder Include="CustomDialogs" />
|
|
</ItemGroup>
|
|
<ItemGroup>
|
|
<ProjectReference Include="..\PowerToysSetupCustomActions\PowerToysSetupCustomActions.vcxproj">
|
|
<Name>PowerToysSetupCustomActions</Name>
|
|
<Project>{32f3882b-f2d6-4586-b5ed-11e39e522bd3}</Project>
|
|
<Private>True</Private>
|
|
<DoNotHarvest>True</DoNotHarvest>
|
|
<RefProjectOutputGroups>Binaries;Content;Satellites</RefProjectOutputGroups>
|
|
<RefTargetDir>INSTALLFOLDER</RefTargetDir>
|
|
</ProjectReference>
|
|
</ItemGroup>
|
|
<ItemGroup>
|
|
<Content Include="packages.config" />
|
|
</ItemGroup>
|
|
<Import Project="$(WixTargetsPath)" Condition=" '$(WixTargetsPath)' != '' " />
|
|
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\WiX\v3.x\Wix.targets" Condition=" '$(WixTargetsPath)' == '' AND Exists('$(MSBuildExtensionsPath32)\Microsoft\WiX\v3.x\Wix.targets') " />
|
|
<Target Name="EnsureWixToolsetInstalled" Condition=" '$(WixTargetsImported)' != 'true' ">
|
|
<Error Text="The WiX Toolset v3 build tools must be installed to build this project. To download the WiX Toolset, see http://wixtoolset.org/releases/" />
|
|
</Target>
|
|
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
|
|
<PropertyGroup>
|
|
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
|
|
</PropertyGroup>
|
|
<Error Condition="!Exists('..\wix.props')" Text="$([System.String]::Format('$(ErrorText)', '..\wix.props'))" />
|
|
</Target>
|
|
<!--
|
|
To modify your build process, add your task inside one of the targets below and uncomment it.
|
|
Other similar extension points exist, see Wix.targets.
|
|
<Target Name="BeforeBuild">
|
|
</Target>
|
|
<Target Name="AfterBuild">
|
|
</Target> -->
|
|
<Target Name="BeforeBuild">
|
|
<HeatDirectory Directory="..\..\src\common\FilePreviewCommon\Assets\Monaco\monacoSRC"
|
|
PreprocessorVariable="var.MonacoSRCHarvestPath"
|
|
OutputFile="MonacoSRC.wxs"
|
|
ComponentGroupName="MonacoSRCHeatGenerated"
|
|
DirectoryRefId="MonacoPreviewHandlerMonacoSRCFolder"
|
|
AutogenerateGuids="false"
|
|
GenerateGuidsNow="true"
|
|
ToolPath="$(WixToolPath)"
|
|
RunAsSeparateProcess="true"
|
|
SuppressFragments="false"
|
|
SuppressRegistry="false"
|
|
SuppressRootDirectory="true"/>
|
|
</Target>
|
|
|
|
</Project> |