mirror of
https://github.com/microsoft/PowerToys
synced 2024-11-22 00:03:48 +00:00
ccdfbb0f68
* [Workspaces] fix defaulticon.ico, move it to the Assets directory * Move assets to single source of truth. Installer logic --------- Co-authored-by: Stefan Markovic <stefan@janeasystems.com>
193 lines
11 KiB
XML
193 lines
11 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="..\..\src\Version.props" Condition="Exists('..\..\src\Version.props')" />
|
|
<Import Project="..\wix.props" Condition="Exists('..\wix.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 -vcvars_ver=$(VCToolsVersion)
|
|
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 -vcvars_ver=$(VCToolsVersion)
|
|
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 ..\..\..\AdvancedPaste.wxs.bk ..\..\..\AdvancedPaste.wxs
|
|
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 ..\..\..\EnvironmentVariables.wxs.bk ..\..\..\EnvironmentVariables.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 ..\..\..\NewPlus.wxs.bk ..\..\..\NewPlus.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
|
|
call move /Y ..\..\..\Workspaces.wxs.bk ..\..\..\Workspaces.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="NewPlus.wxs" />
|
|
<Compile Include="Product.wxs" />
|
|
<Compile Include="AdvancedPaste.wxs" />
|
|
<Compile Include="Awake.wxs" />
|
|
<Compile Include="BaseApplications.wxs" />
|
|
<Compile Include="ColorPicker.wxs" />
|
|
<Compile Include="EnvironmentVariables.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" />
|
|
<Compile Include="Workspaces.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>
|
|
<!-- Prevents NU1503 -->
|
|
<Target Name="_IsProjectRestoreSupported" Returns="@(_ValidProjectsForRestore)">
|
|
<ItemGroup>
|
|
<_ValidProjectsForRestore Include="$(MSBuildProjectFullPath)" />
|
|
</ItemGroup>
|
|
</Target>
|
|
<Target Name="Restore" />
|
|
</Project> |