5a23029dac
This commit reduces the number of generated VS profiles from 6 down to just 2 per VS instance. The reason we did this is out of concern of overwhelming or annoying new users with too many profiles. Especially since it's far easier at the moment to add new generators compared to removing them. As before only the latest instance is not hidden by default. ## PR Checklist * [x] I work here * [x] Tests added/passed * [x] As discussed in a Team Sync meeting ## Validation Steps Performed * Installed Visual Studio 2019 and 2022 Preview * A profile for both is generated, while the 2019 one is hidden by default ✔️ * $env:VSCMD_ARG_TGT_ARCH is x64 on my AMD64 machine ✔️
269 lines
14 KiB
XML
269 lines
14 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
||
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||
<PropertyGroup Label="Globals">
|
||
<ProjectGuid>{CA5CAD1A-d7ec-4107-b7c6-79cb77ae2907}</ProjectGuid>
|
||
<Keyword>Win32Proj</Keyword>
|
||
<ProjectName>Microsoft.Terminal.Settings.Model.Lib</ProjectName>
|
||
<RootNamespace>Microsoft.Terminal.Settings.Model</RootNamespace>
|
||
<TargetName>Microsoft.Terminal.Settings.Model.Lib</TargetName>
|
||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||
<SubSystem>Console</SubSystem>
|
||
<OpenConsoleUniversalApp>true</OpenConsoleUniversalApp>
|
||
</PropertyGroup>
|
||
<Import Project="..\..\..\common.openconsole.props" Condition="'$(OpenConsoleDir)'==''" />
|
||
<Import Project="$(OpenConsoleDir)src\cppwinrt.build.pre.props" />
|
||
<!-- ========================= Headers ======================== -->
|
||
<ItemGroup>
|
||
<ClInclude Include="VisualStudioGenerator.h" />
|
||
<ClInclude Include="DefaultTerminal.h">
|
||
<DependentUpon>DefaultTerminal.idl</DependentUpon>
|
||
</ClInclude>
|
||
<ClInclude Include="IconPathConverter.h">
|
||
<DependentUpon>IconPathConverter.idl</DependentUpon>
|
||
</ClInclude>
|
||
<ClInclude Include="pch.h" />
|
||
<ClInclude Include="ActionArgs.h">
|
||
<DependentUpon>ActionArgs.idl</DependentUpon>
|
||
</ClInclude>
|
||
<ClInclude Include="ActionAndArgs.h">
|
||
<DependentUpon>ActionArgs.idl</DependentUpon>
|
||
</ClInclude>
|
||
<ClInclude Include="ActionMap.h">
|
||
<DependentUpon>ActionMap.idl</DependentUpon>
|
||
</ClInclude>
|
||
<ClInclude Include="AzureCloudShellGenerator.h" />
|
||
<ClInclude Include="ApplicationState.h">
|
||
<DependentUpon>ApplicationState.idl</DependentUpon>
|
||
</ClInclude>
|
||
<ClInclude Include="CascadiaSettings.h">
|
||
<DependentUpon>CascadiaSettings.idl</DependentUpon>
|
||
</ClInclude>
|
||
<ClInclude Include="ColorScheme.h">
|
||
<DependentUpon>ColorScheme.idl</DependentUpon>
|
||
</ClInclude>
|
||
<ClInclude Include="Command.h">
|
||
<DependentUpon>Command.idl</DependentUpon>
|
||
</ClInclude>
|
||
<ClInclude Include="DynamicProfileUtils.h" />
|
||
<ClInclude Include="FileUtils.h" />
|
||
<ClInclude Include="GlobalAppSettings.h">
|
||
<DependentUpon>GlobalAppSettings.idl</DependentUpon>
|
||
</ClInclude>
|
||
<ClInclude Include="IInheritable.h" />
|
||
<ClInclude Include="IDynamicProfileGenerator.h" />
|
||
<ClInclude Include="JsonUtils.h" />
|
||
<ClInclude Include="HashUtils.h" />
|
||
<ClInclude Include="KeyChordSerialization.h">
|
||
<DependentUpon>KeyChordSerialization.idl</DependentUpon>
|
||
</ClInclude>
|
||
<ClInclude Include="PowershellCoreProfileGenerator.h" />
|
||
<ClInclude Include="Profile.h">
|
||
<DependentUpon>Profile.idl</DependentUpon>
|
||
</ClInclude>
|
||
<ClInclude Include="AppearanceConfig.h">
|
||
<DependentUpon>AppearanceConfig.idl</DependentUpon>
|
||
</ClInclude>
|
||
<ClInclude Include="FontConfig.h">
|
||
<DependentUpon>FontConfig.idl</DependentUpon>
|
||
</ClInclude>
|
||
<ClInclude Include="EnumMappings.h">
|
||
<DependentUpon>EnumMappings.idl</DependentUpon>
|
||
</ClInclude>
|
||
<ClInclude Include="SettingsTypes.h" />
|
||
<ClInclude Include="TerminalSettings.h">
|
||
<DependentUpon>TerminalSettings.idl</DependentUpon>
|
||
</ClInclude>
|
||
<ClInclude Include="TerminalSettingsSerializationHelpers.h" />
|
||
<ClInclude Include="TerminalWarnings.h">
|
||
<DependentUpon>TerminalWarnings.idl</DependentUpon>
|
||
</ClInclude>
|
||
<ClInclude Include="VsDevCmdGenerator.h" />
|
||
<ClInclude Include="VsDevShellGenerator.h" />
|
||
<ClInclude Include="VsSetupConfiguration.h" />
|
||
<ClInclude Include="WslDistroGenerator.h" />
|
||
</ItemGroup>
|
||
<!-- ========================= Cpp Files ======================== -->
|
||
<ItemGroup>
|
||
<ClCompile Include="VisualStudioGenerator.cpp" />
|
||
<ClCompile Include="DefaultTerminal.cpp">
|
||
<DependentUpon>DefaultTerminal.idl</DependentUpon>
|
||
</ClCompile>
|
||
<ClCompile Include="IconPathConverter.cpp">
|
||
<DependentUpon>IconPathConverter.idl</DependentUpon>
|
||
</ClCompile>
|
||
<ClCompile Include="init.cpp" />
|
||
<ClCompile Include="pch.cpp">
|
||
<PrecompiledHeader>Create</PrecompiledHeader>
|
||
</ClCompile>
|
||
<ClCompile Include="ActionAndArgs.cpp">
|
||
<DependentUpon>ActionArgs.idl</DependentUpon>
|
||
</ClCompile>
|
||
<ClCompile Include="ActionArgs.cpp">
|
||
<DependentUpon>ActionArgs.idl</DependentUpon>
|
||
</ClCompile>
|
||
<ClCompile Include="ActionMap.cpp">
|
||
<DependentUpon>ActionMap.idl</DependentUpon>
|
||
</ClCompile>
|
||
<ClCompile Include="ActionMapSerialization.cpp">
|
||
<DependentUpon>ActionMap.idl</DependentUpon>
|
||
</ClCompile>
|
||
<ClCompile Include="AzureCloudShellGenerator.cpp" />
|
||
<ClCompile Include="ApplicationState.cpp">
|
||
<DependentUpon>ApplicationState.idl</DependentUpon>
|
||
</ClCompile>
|
||
<ClCompile Include="CascadiaSettings.cpp">
|
||
<DependentUpon>CascadiaSettings.idl</DependentUpon>
|
||
</ClCompile>
|
||
<ClCompile Include="CascadiaSettingsSerialization.cpp">
|
||
<DependentUpon>CascadiaSettings.idl</DependentUpon>
|
||
</ClCompile>
|
||
<ClCompile Include="ColorScheme.cpp">
|
||
<DependentUpon>ColorScheme.idl</DependentUpon>
|
||
</ClCompile>
|
||
<ClCompile Include="Command.cpp">
|
||
<DependentUpon>Command.idl</DependentUpon>
|
||
</ClCompile>
|
||
<ClCompile Include="DynamicProfileUtils.cpp" />
|
||
<ClCompile Include="FileUtils.cpp" />
|
||
<ClCompile Include="GlobalAppSettings.cpp">
|
||
<DependentUpon>GlobalAppSettings.idl</DependentUpon>
|
||
</ClCompile>
|
||
<ClCompile Include="KeyChordSerialization.cpp">
|
||
<DependentUpon>KeyChordSerialization.idl</DependentUpon>
|
||
</ClCompile>
|
||
<ClCompile Include="PowershellCoreProfileGenerator.cpp" />
|
||
<ClCompile Include="Profile.cpp">
|
||
<DependentUpon>Profile.idl</DependentUpon>
|
||
</ClCompile>
|
||
<ClCompile Include="AppearanceConfig.cpp">
|
||
<DependentUpon>AppearanceConfig.idl</DependentUpon>
|
||
</ClCompile>
|
||
<ClCompile Include="FontConfig.cpp">
|
||
<DependentUpon>FontConfig.idl</DependentUpon>
|
||
</ClCompile>
|
||
<ClCompile Include="TerminalSettings.cpp">
|
||
<DependentUpon>TerminalSettings.idl</DependentUpon>
|
||
</ClCompile>
|
||
<ClCompile Include="EnumMappings.cpp">
|
||
<DependentUpon>EnumMappings.idl</DependentUpon>
|
||
</ClCompile>
|
||
<ClCompile Include="VsDevCmdGenerator.cpp" />
|
||
<ClCompile Include="VsDevShellGenerator.cpp" />
|
||
<ClCompile Include="VsSetupConfiguration.cpp" />
|
||
<ClCompile Include="WslDistroGenerator.cpp" />
|
||
<!-- You _NEED_ to include this file and the jsoncpp IncludePath (below) if
|
||
you want to use jsoncpp -->
|
||
<ClCompile Include="$(OpenConsoleDir)\dep\jsoncpp\jsoncpp.cpp">
|
||
<PrecompiledHeader>NotUsing</PrecompiledHeader>
|
||
</ClCompile>
|
||
<ClCompile Include="$(GeneratedFilesDir)module.g.cpp" />
|
||
</ItemGroup>
|
||
<!-- ========================= idl Files ======================== -->
|
||
<ItemGroup>
|
||
<Midl Include="ActionArgs.idl" />
|
||
<Midl Include="ActionMap.idl" />
|
||
<Midl Include="ApplicationState.idl" />
|
||
<Midl Include="CascadiaSettings.idl" />
|
||
<Midl Include="ColorScheme.idl" />
|
||
<Midl Include="Command.idl" />
|
||
<Midl Include="DefaultTerminal.idl" />
|
||
<Midl Include="GlobalAppSettings.idl" />
|
||
<Midl Include="IconPathConverter.idl" />
|
||
<Midl Include="Profile.idl" />
|
||
<Midl Include="EnumMappings.idl" />
|
||
<Midl Include="TerminalSettings.idl" />
|
||
<Midl Include="TerminalWarnings.idl" />
|
||
<Midl Include="KeyChordSerialization.idl" />
|
||
<Midl Include="AppearanceConfig.idl" />
|
||
<Midl Include="IAppearanceConfig.idl" />
|
||
<Midl Include="FontConfig.idl" />
|
||
</ItemGroup>
|
||
<!-- ========================= Misc Files ======================== -->
|
||
<ItemGroup>
|
||
<PRIResource Include="Resources\en-US\Resources.resw" />
|
||
<OCResourceDirectory Include="Resources" />
|
||
<None Include="packages.config" />
|
||
</ItemGroup>
|
||
<!-- ========================= Project References ======================== -->
|
||
<ItemGroup>
|
||
<!--
|
||
the packaging project won't recurse through our dependencies, you have to
|
||
make sure that if you add a cppwinrt dependency to any of these projects,
|
||
you also update all the consumers
|
||
-->
|
||
<ProjectReference Include="$(OpenConsoleDir)src\types\lib\types.vcxproj" />
|
||
<ProjectReference Include="$(OpenConsoleDir)src\cascadia\WinRTUtils\WinRTUtils.vcxproj">
|
||
<Project>{CA5CAD1A-039A-4929-BA2A-8BEB2E4106FE}</Project>
|
||
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
|
||
</ProjectReference>
|
||
<!-- For whatever reason, we can't include the TerminalControl and
|
||
TerminalSettings projects' winmds via project references. So we'll have to
|
||
manually include the winmds as References below -->
|
||
</ItemGroup>
|
||
<ItemGroup>
|
||
<!-- Manually add references to each of our dependent winmds. Mark them as
|
||
private=false and CopyLocalSatelliteAssemblies=false, so that we don't
|
||
propagate them upwards (which can make referencing this project result in
|
||
duplicate type definitions)-->
|
||
<Reference Include="Microsoft.Terminal.TerminalConnection">
|
||
<HintPath>$(OpenConsoleCommonOutDir)TerminalConnection\Microsoft.Terminal.TerminalConnection.winmd</HintPath>
|
||
<IsWinMDFile>true</IsWinMDFile>
|
||
<Private>false</Private>
|
||
<CopyLocalSatelliteAssemblies>false</CopyLocalSatelliteAssemblies>
|
||
</Reference>
|
||
<Reference Include="Microsoft.Terminal.Control">
|
||
<HintPath>$(OpenConsoleCommonOutDir)Microsoft.Terminal.Control\Microsoft.Terminal.Control.winmd</HintPath>
|
||
<IsWinMDFile>true</IsWinMDFile>
|
||
<Private>false</Private>
|
||
<CopyLocalSatelliteAssemblies>false</CopyLocalSatelliteAssemblies>
|
||
</Reference>
|
||
<Reference Include="Microsoft.Terminal.Core">
|
||
<HintPath>$(OpenConsoleCommonOutDir)TerminalCore\Microsoft.Terminal.Core.winmd</HintPath>
|
||
<IsWinMDFile>true</IsWinMDFile>
|
||
<Private>false</Private>
|
||
<CopyLocalSatelliteAssemblies>false</CopyLocalSatelliteAssemblies>
|
||
</Reference>
|
||
</ItemGroup>
|
||
<!-- ====================== Compiler & Linker Flags ===================== -->
|
||
<ItemDefinitionGroup>
|
||
<ClCompile>
|
||
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
|
||
<AdditionalIncludeDirectories>..;$(OpenConsoleDir)\dep\jsoncpp\json;%(AdditionalIncludeDirectories);</AdditionalIncludeDirectories>
|
||
<!-- Manually disable unreachable code warning, because jconcpp has a ton of that. -->
|
||
<DisableSpecificWarnings>4702;%(DisableSpecificWarnings)</DisableSpecificWarnings>
|
||
</ClCompile>
|
||
<Link>
|
||
<AdditionalDependencies>WindowsApp.lib;user32.lib;shell32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||
</Link>
|
||
<Reference>
|
||
<Private>false</Private>
|
||
</Reference>
|
||
</ItemDefinitionGroup>
|
||
<!-- ========================= Globals ======================== -->
|
||
<Import Project="$(OpenConsoleDir)src\cppwinrt.build.post.props" />
|
||
<Import Project="..\..\..\packages\Microsoft.UI.Xaml.2.7.0-prerelease.210913003\build\native\Microsoft.UI.Xaml.targets" Condition="Exists('..\..\..\packages\Microsoft.UI.Xaml.2.7.0-prerelease.210913003\build\native\Microsoft.UI.Xaml.targets')" />
|
||
<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('$(OpenConsoleDir)\packages\Microsoft.UI.Xaml.2.7.0-prerelease.210913003\build\native\Microsoft.UI.Xaml.targets')" Text="$([System.String]::Format('$(ErrorText)', '$(OpenConsoleDir)\packages\Microsoft.UI.Xaml.2.7.0-prerelease.210913003\build\native\Microsoft.UI.Xaml.targets'))" />
|
||
<Error Condition="!Exists('..\..\..\packages\Microsoft.VisualStudio.Setup.Configuration.Native.2.3.2262\build\native\Microsoft.VisualStudio.Setup.Configuration.Native.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\..\packages\Microsoft.VisualStudio.Setup.Configuration.Native.2.3.2262\build\native\Microsoft.VisualStudio.Setup.Configuration.Native.targets'))" />
|
||
</Target>
|
||
<!-- This target will take our defaults.json and stamp it into a .h file that
|
||
we can include in the code directly. This way, we don't need to worry about
|
||
failing to load the default settings at runtime. -->
|
||
<Target Name="_TerminalAppGenerateDefaultsH" Inputs="defaults.json" Outputs="Generated Files\defaults.h" BeforeTargets="BeforeClCompile">
|
||
<Exec Command="pwsh.exe -NoProfile –ExecutionPolicy Unrestricted $(OpenConsoleDir)\tools\GenerateHeaderForJson.ps1 -JsonFile defaults.json -OutPath "Generated Files\defaults.h" -VariableName DefaultJson" />
|
||
</Target>
|
||
<!-- A different set of defaults for Universal variant -->
|
||
<Target Name="_TerminalAppGenerateDefaultsUniversalH" Inputs="defaults-universal.json" Outputs="Generated Files\defaults-universal.h" BeforeTargets="BeforeClCompile">
|
||
<Exec Command="pwsh.exe -NoProfile –ExecutionPolicy Unrestricted $(OpenConsoleDir)\tools\GenerateHeaderForJson.ps1 -JsonFile defaults-universal.json -OutPath "Generated Files\defaults-universal.h" -VariableName DefaultUniversalJson" />
|
||
</Target>
|
||
<!-- Same as above, but for the default settings.json template -->
|
||
<Target Name="_TerminalAppGenerateUserSettingsH" Inputs="userDefaults.json" Outputs="Generated Files\userDefaults.h" BeforeTargets="BeforeClCompile">
|
||
<Exec Command="pwsh.exe -NoProfile –ExecutionPolicy Unrestricted $(OpenConsoleDir)\tools\GenerateHeaderForJson.ps1 -JsonFile userDefaults.json -OutPath "Generated Files\userDefaults.h" -VariableName UserSettingsJson" />
|
||
</Target>
|
||
<Import Project="$(SolutionDir)build\rules\CollectWildcardResources.targets" />
|
||
<Import Project="..\..\..\packages\Microsoft.VisualStudio.Setup.Configuration.Native.2.3.2262\build\native\Microsoft.VisualStudio.Setup.Configuration.Native.targets" Condition="Exists('..\..\..\packages\Microsoft.VisualStudio.Setup.Configuration.Native.2.3.2262\build\native\Microsoft.VisualStudio.Setup.Configuration.Native.targets')" />
|
||
</Project>
|