Update Windows installer projects to use ProjectReference (#6078)

Changes:
* Build installer projects in parallel.
* Use `ProjectReference` to ferry bits between installer projects.
* Don't build wixproj to a unified output directory. This was only done to simplify finding file paths to MSI's built by other projects, but ProjectRef solves that.
* Add a VS solution for working on wixproj and the associated C++ custom actions.
   * To make wixproj work in VS, I replaced default globs with listing .wxs and .wxl files in the wixproj file.
* Add a target to copy the installers to the artifacts directory according to the layout described in /docs/Artifacts.md
This commit is contained in:
Nate McMaster 2018-12-21 09:44:31 -08:00 committed by GitHub
parent 2af766db49
commit 354c636498
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
34 changed files with 381 additions and 219 deletions

View File

@ -12,7 +12,9 @@
<TargetFramework>net461</TargetFramework>
<MSBuildProjectExtensionsPath>$(BaseIntermediateOutputPath)</MSBuildProjectExtensionsPath>
<MSBuildProjectExtensionsPath Condition="'$(MSBuildProjectExtensionsPath)' == ''">$(MSBuildProjectDir)\obj\</MSBuildProjectExtensionsPath>
<NuGetRestoreTargets Condition="'$(NuGetRestoreTargets)'==''">$(MSBuildExtensionsPath)\..\Common7\IDE\CommonExtensions\Microsoft\NuGet\NuGet.targets</NuGetRestoreTargets>
<!-- IsRunningFromVisualStudio may be true even when running msbuild.exe from command line. This generally means that MSBUild is Visual Studio installation and therefore we need to find NuGet.targets in a different location. -->
<NuGetRestoreTargets Condition="'$(NuGetRestoreTargets)'=='' and '$([MSBuild]::IsRunningFromVisualStudio())'=='true'">$(MSBuildToolsPath32)\..\..\..\Common7\IDE\CommonExtensions\Microsoft\NuGet\NuGet.targets</NuGetRestoreTargets>
<NuGetRestoreTargets Condition="'$(NuGetRestoreTargets)'==''">$(MSBuildToolsPath)\NuGet.targets</NuGetRestoreTargets>
</PropertyGroup>
<Import Project="$(MSBuildProjectExtensionsPath)$(MSBuildProjectFile).*.props" />

View File

@ -17,11 +17,6 @@
</SignBundleEngine>
</ItemDefinitionGroup>
<ItemGroup>
<Compile Include="**\*.wxs" Exclude="obj\**\*;bin\**\*" />
<EmbeddedResource Include="**\*.wxl" Exclude="obj\**\*;bin**\*;" />
</ItemGroup>
<PropertyGroup Condition="'$(OutputType)' == 'package'">
<EmbedCab Condition="'$(EmbedCab)' == ''">yes</EmbedCab>
<Cabinet Condition="'$(Cabinet)' == ''">$(OutputName.Replace('-', '_')).cab</Cabinet>

View File

@ -4,42 +4,15 @@
<PropertyGroup>
<Name>AspNetCoreModuleIISExpress</Name>
<IsProductInstaller>true</IsProductInstaller>
<ProjectGuid>2A6A4709-30D2-4716-A597-55DF0FB74D37</ProjectGuid>
<OutputType>Package</OutputType>
<OutputName>ancm_iis_express_$(Platform)_en</OutputName>
<SuppressIces>ICE03</SuppressIces>
<DisableGuidGeneration>true</DisableGuidGeneration>
<SchemaVersion>2.0</SchemaVersion>
</PropertyGroup>
<PropertyGroup Condition=" '$(Platform)' == 'x86'">
<OutputName>ancm_iis_express_x86_en</OutputName>
</PropertyGroup>
<PropertyGroup Condition=" '$(Platform)' == 'x64'">
<OutputName>ancm_iis_express_x64_en</OutputName>
</PropertyGroup>
<PropertyGroup Condition=" '$(SignType)' != '' ">
<SignOutput>True</SignOutput>
</PropertyGroup>
<ItemGroup>
<Compile Include="$(IIS-Setup)iisca\wix3\iisca.wxs">
<Link>iisca.wxs</Link>
</Compile>
</ItemGroup>
<Target Name="BeforeBuild">
<CreateProperty Condition="$(IIS-Setup) != ''" Value="IIS-Setup=$(IIS-Setup);$(DefineConstants)">
<Output TaskParameter="Value" PropertyName="DefineConstants" />
</CreateProperty>
</Target>
<Target Name="EnsureImportsExist" BeforeTargets="PrepareForBuild">
<PropertyGroup>
<ErrorText>This project is trying to import a missing file: {0}.</ErrorText>
</PropertyGroup>
<Error Condition="!Exists('..\build\settings.props')" Text="$([System.String]::Format('$(ErrorText)', '..\build\settings.props'))" />
<Error Condition="!Exists('..\build\versions.props')" Text="$([System.String]::Format('$(ErrorText)', '..\build\versions.props'))" />
</Target>
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), Directory.Build.targets))\Directory.Build.targets" />
<ItemGroup>
<WixExtension Include="WixUtilExtension">
<HintPath>$(WixExtDir)\WixUtilExtension.dll</HintPath>
@ -56,17 +29,28 @@
</ItemGroup>
<ItemGroup>
<Compile Include="$(IIS-Setup)iisca\wix3\iisca.wxs">
<Link>iisca.wxs</Link>
</Compile>
<Compile Include="ancm_iis_express.wxs" />
<EmbeddedResource Include="..\setupstrings.wxl">
<Link>setupstrings.wxl</Link>
</EmbeddedResource>
</ItemGroup>
<ItemGroup>
<Content Include="$(IIS-Setup)include.wxi">
<Link>include.wxi</Link>
</Content>
</ItemGroup>
<Import Project="..\build\settings.props" Condition="Exists('..\build\settings.props')" />
<Import Project="..\build\versions.props" Condition="Exists('..\build\versions.props')" />
<!-- Overwrite standard versioning scheme -->
</Project>
<ItemGroup>
<ProjectReference Include="..\CustomAction\aspnetcoreCA.vcxproj">
<Name>aspnetcoreCA</Name>
<Project>{7c27e72f-54d0-4820-8cfa-5e4be640974b}</Project>
<Private>True</Private>
<DoNotHarvest>True</DoNotHarvest>
</ProjectReference>
</ItemGroup>
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), Directory.Build.targets))\Directory.Build.targets" />
<Import Project="..\build\settings.props" />
<Import Project="..\build\versions.props" />
</Project>

View File

@ -667,7 +667,7 @@
</Fragment>
<Fragment>
<Binary Id="IISCustomActionDll" SourceFile="$(var.CustomAction)"/>
<Binary Id="IISCustomActionDll" SourceFile="$(var.aspnetcoreCA.TargetPath)"/>
</Fragment>
</Wix>

View File

@ -4,46 +4,15 @@
<PropertyGroup>
<Name>AspNetCoreModuleV2IISExpress</Name>
<IsProductInstaller>true</IsProductInstaller>
<ProjectGuid>17c76489-4c09-4e14-b81c-7a86cd937144</ProjectGuid>
<OutputType>Package</OutputType>
<OutputName>ancm_iis_express_$(Platform)_en_v2</OutputName>
<SuppressIces>ICE03</SuppressIces>
<DisableGuidGeneration>true</DisableGuidGeneration>
<SchemaVersion>2.0</SchemaVersion>
</PropertyGroup>
<PropertyGroup Condition=" '$(Platform)' == 'x86'">
<OutputName>ancm_iis_express_x86_en_v2</OutputName>
</PropertyGroup>
<PropertyGroup Condition=" '$(Platform)' == 'x64'">
<OutputName>ancm_iis_express_x64_en_v2</OutputName>
</PropertyGroup>
<PropertyGroup Condition=" '$(SignType)' != '' ">
<SignOutput>True</SignOutput>
</PropertyGroup>
<ItemGroup>
<!-- <Compile Include="ancm_iis_expressv2.wxs" /> -->
<Compile Include="$(IIS-Setup)iisca\wix3\iisca.wxs">
<Link>iisca.wxs</Link>
</Compile>
</ItemGroup>
<Target Name="BeforeBuild">
<CreateProperty Condition="$(IIS-Setup) != ''" Value="IIS-Setup=$(IIS-Setup);$(DefineConstants)">
<Output TaskParameter="Value" PropertyName="DefineConstants" />
</CreateProperty>
</Target>
<Target Name="EnsureImportsExist" BeforeTargets="PrepareForBuild">
<PropertyGroup>
<ErrorText>This project is trying to import a missing file: {0}.</ErrorText>
</PropertyGroup>
<Error Condition="!Exists('..\build\settings.props')" Text="$([System.String]::Format('$(ErrorText)', '..\build\settings.props'))" />
<Error Condition="!Exists('..\build\versions.props')" Text="$([System.String]::Format('$(ErrorText)', '..\build\versions.props'))" />
</Target>
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), Directory.Build.targets))\Directory.Build.targets" />
<ItemGroup>
<WixExtension Include="WixUtilExtension">
<HintPath>$(WixExtDir)\WixUtilExtension.dll</HintPath>
@ -60,17 +29,28 @@
</ItemGroup>
<ItemGroup>
<Compile Include="ancm_iis_expressv2.wxs" />
<Compile Include="$(IIS-Setup)iisca\wix3\iisca.wxs">
<Link>iisca.wxs</Link>
</Compile>
<EmbeddedResource Include="..\setupstrings.wxl">
<Link>setupstrings.wxl</Link>
</EmbeddedResource>
</ItemGroup>
<ItemGroup>
<Content Include="$(IIS-Setup)include.wxi">
<Link>include.wxi</Link>
</Content>
</ItemGroup>
<Import Project="..\build\settings.props" Condition="Exists('..\build\settings.props')" />
<Import Project="..\build\versions.props" Condition="Exists('..\build\versions.props')" />
<!-- Overwrite standard versioning scheme -->
</Project>
<ItemGroup>
<ProjectReference Include="..\CustomAction\aspnetcoreCA.vcxproj">
<Name>aspnetcoreCA</Name>
<Project>{7c27e72f-54d0-4820-8cfa-5e4be640974b}</Project>
<Private>True</Private>
<DoNotHarvest>True</DoNotHarvest>
</ProjectReference>
</ItemGroup>
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), Directory.Build.targets))\Directory.Build.targets" />
<Import Project="..\build\settings.props" />
<Import Project="..\build\versions.props" />
</Project>

View File

@ -697,7 +697,7 @@
</Fragment>
<Fragment>
<Binary Id="IISCustomActionDll" SourceFile="$(var.CustomAction)"/>
<Binary Id="IISCustomActionDll" SourceFile="$(var.aspnetcoreCA.TargetPath)"/>
</Fragment>
</Wix>

View File

@ -4,44 +4,14 @@
<PropertyGroup>
<Name>AspNetCoreModule</Name>
<IsProductInstaller>true</IsProductInstaller>
<ProjectGuid>D36FDC38-FE53-48CC-BC82-A17C28F1CEE1</ProjectGuid>
<GenerateRandomNamespaceGuid>true</GenerateRandomNamespaceGuid>
<OutputType>Package</OutputType>
<OutputName>aspnetcoremodule_$(Platform)_en</OutputName>
<DisableGuidGeneration>true</DisableGuidGeneration>
</PropertyGroup>
<PropertyGroup Condition=" '$(Platform)' == 'x86'">
<OutputName>aspnetcoremodule_x86_en</OutputName>
</PropertyGroup>
<PropertyGroup Condition=" '$(Platform)' == 'x64'">
<OutputName>aspnetcoremodule_x64_en</OutputName>
</PropertyGroup>
<PropertyGroup Condition=" '$(SignType)' != '' ">
<SignOutput>True</SignOutput>
</PropertyGroup>
<ItemGroup>
<Compile Include="$(IIS-Setup)iisca\wix3\iisca.wxs">
<Link>iisca.wxs</Link>
</Compile>
</ItemGroup>
<Target Name="BeforeBuild">
<CreateProperty Condition="$(IIS-Setup) != ''" Value="IIS-Setup=$(IIS-Setup);$(DefineConstants)">
<Output TaskParameter="Value" PropertyName="DefineConstants" />
</CreateProperty>
</Target>
<Target Name="EnsureImportsExist" BeforeTargets="PrepareForBuild">
<PropertyGroup>
<ErrorText>This project is trying to import a missing file: {0}.</ErrorText>
</PropertyGroup>
<Error Condition="!Exists('$(ANCMBuildDirectory)settings.props')" Text="$([System.String]::Format('$(ErrorText)', '$(ANCMBuildDirectory)settings.props'))" />
<Error Condition="!Exists('$(ANCMBuildDirectory)versions.props')" Text="$([System.String]::Format('$(ErrorText)', '$(ANCMBuildDirectory)versions.props'))" />
</Target>
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), Directory.Build.targets))\Directory.Build.targets" />
<ItemGroup>
<WixExtension Include="WixUtilExtension">
<HintPath>$(WixExtDir)\WixUtilExtension.dll</HintPath>
@ -58,17 +28,28 @@
</ItemGroup>
<ItemGroup>
<Compile Include="$(IIS-Setup)iisca\wix3\iisca.wxs">
<Link>iisca.wxs</Link>
</Compile>
<Compile Include="aspnetcoremodule.wxs" />
<EmbeddedResource Include="..\setupstrings.wxl">
<Link>setupstrings.wxl</Link>
</EmbeddedResource>
</ItemGroup>
<ItemGroup>
<Content Include="$(IIS-Setup)include.wxi">
<Link>include.wxi</Link>
</Content>
</ItemGroup>
<Import Project="$(ANCMBuildDirectory)settings.props" Condition="Exists('$(ANCMBuildDirectory)settings.props')" />
<Import Project="$(ANCMBuildDirectory)versions.props" Condition="Exists('$(ANCMBuildDirectory)versions.props')" />
<!-- Overwrite standard versioning scheme -->
</Project>
<ItemGroup>
<ProjectReference Include="..\CustomAction\aspnetcoreCA.vcxproj">
<Name>aspnetcoreCA</Name>
<Project>{7c27e72f-54d0-4820-8cfa-5e4be640974b}</Project>
<Private>True</Private>
<DoNotHarvest>True</DoNotHarvest>
</ProjectReference>
</ItemGroup>
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), Directory.Build.targets))\Directory.Build.targets" />
<Import Project="$(ANCMBuildDirectory)settings.props"/>
<Import Project="$(ANCMBuildDirectory)versions.props"/>
</Project>

View File

@ -273,7 +273,7 @@
</Fragment>
<Fragment>
<Binary Id="IISCustomActionDll" SourceFile="$(var.CustomAction)"/>
<Binary Id="IISCustomActionDll" SourceFile="$(var.aspnetcoreCA.TargetPath)"/>
</Fragment>
</Wix>

View File

@ -4,44 +4,15 @@
<PropertyGroup>
<Name>AspNetCoreModuleV2</Name>
<IsProductInstaller>true</IsProductInstaller>
<ProjectGuid>f9bacb48-3bd7-4ec2-ae31-664e8703ec12</ProjectGuid>
<OutputType>Package</OutputType>
<OutputName>aspnetcoremodule_$(Platform)_en_v2</OutputName>
<GenerateRandomNamespaceGuid>true</GenerateRandomNamespaceGuid>
<SchemaVersion>2.0</SchemaVersion>
<DisableGuidGeneration>true</DisableGuidGeneration>
</PropertyGroup>
<PropertyGroup Condition=" '$(Platform)' == 'x86'">
<OutputName>aspnetcoremodule_x86_en_v2</OutputName>
</PropertyGroup>
<PropertyGroup Condition=" '$(Platform)' == 'x64'">
<OutputName>aspnetcoremodule_x64_en_v2</OutputName>
</PropertyGroup>
<PropertyGroup Condition=" '$(SignType)' != '' ">
<SignOutput>True</SignOutput>
</PropertyGroup>
<ItemGroup>
<Compile Include="$(IIS-Setup)iisca\wix3\iisca.wxs">
<Link>iisca.wxs</Link>
</Compile>
</ItemGroup>
<Target Name="BeforeBuild">
<CreateProperty Condition="$(IIS-Setup) != ''" Value="IIS-Setup=$(IIS-Setup);$(DefineConstants)">
<Output TaskParameter="Value" PropertyName="DefineConstants" />
</CreateProperty>
</Target>
<Target Name="EnsureImportsExist" BeforeTargets="PrepareForBuild">
<PropertyGroup>
<ErrorText>This project is trying to import a missing file: {0}.</ErrorText>
</PropertyGroup>
<Error Condition="!Exists('..\build\settings.props')" Text="$([System.String]::Format('$(ErrorText)', '..\build\settings.props'))" />
<Error Condition="!Exists('..\build\versions.props')" Text="$([System.String]::Format('$(ErrorText)', '..\build\versions.props'))" />
</Target>
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), Directory.Build.targets))\Directory.Build.targets" />
<ItemGroup>
<WixExtension Include="WixUtilExtension">
<HintPath>$(WixExtDir)\WixUtilExtension.dll</HintPath>
@ -58,17 +29,28 @@
</ItemGroup>
<ItemGroup>
<Compile Include="aspnetcoremodulev2.wxs" />
<Compile Include="$(IIS-Setup)iisca\wix3\iisca.wxs">
<Link>iisca.wxs</Link>
</Compile>
<EmbeddedResource Include="..\setupstrings.wxl">
<Link>setupstrings.wxl</Link>
</EmbeddedResource>
</ItemGroup>
<ItemGroup>
<Content Include="$(IIS-Setup)include.wxi">
<Link>include.wxi</Link>
</Content>
</ItemGroup>
<Import Project="..\build\settings.props" Condition="Exists('..\build\settings.props')" />
<Import Project="..\build\versions.props" Condition="Exists('..\build\versions.props')" />
<!-- Overwrite standard versioning scheme -->
</Project>
<ItemGroup>
<ProjectReference Include="..\CustomAction\aspnetcoreCA.vcxproj">
<Name>aspnetcoreCA</Name>
<Project>{7c27e72f-54d0-4820-8cfa-5e4be640974b}</Project>
<Private>True</Private>
<DoNotHarvest>True</DoNotHarvest>
</ProjectReference>
</ItemGroup>
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), Directory.Build.targets))\Directory.Build.targets" />
<Import Project="..\build\settings.props" />
<Import Project="..\build\versions.props" />
</Project>

View File

@ -307,7 +307,7 @@
</Fragment>
<Fragment>
<Binary Id="IISCustomActionDll" SourceFile="$(var.CustomAction)"/>
<Binary Id="IISCustomActionDll" SourceFile="$(var.aspnetcoreCA.TargetPath)"/>
<Binary Id="AncmMofFile" SourceFile="$(var.PreBuiltANCMV2Schema)ancm.mof"/>
</Fragment>
</Wix>

View File

@ -55,6 +55,7 @@
<ClCompile>
<SDLCheck>true</SDLCheck>
<AdditionalIncludeDirectories>$(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>httpapi.lib;shlwapi.lib;ahadmin.lib;xmllite.lib;msi.lib;Version.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
@ -82,10 +83,9 @@
<ProjectReference Include="$(IIS-Common)lib\CommonLib.vcxproj">
<Project>{b54a8f61-60de-4ad9-87ca-d102f230678e}</Project>
</ProjectReference>
<FilesToSign Include="$(MSBuildProjectDirectory)\$(OutDir)$(TargetName)$(TargetExt)" Authenticode="Microsoft400" />
<FilesToSign Include="$(MSBuildProjectDirectory)\$(OutDir)$(TargetName)$(TargetExt)" Authenticode="Microsoft400" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<Target Name="EnsureImportsExist" BeforeTargets="PrepareForBuild">
<PropertyGroup>
<ErrorText>This project is trying to import a missing file: {0}.</ErrorText>
@ -95,4 +95,4 @@
<Error Condition="!Exists('$(MSBuildProjectDirectory)\..\build\copy-outputs.targets')" Text="$([System.String]::Format('$(ErrorText)', '$(MSBuildProjectDirectory)\..\build\copy-outputs.targets'))" />
</Target>
<Import Project="$(MSBuildProjectDirectory)\..\build\copy-outputs.targets" Condition="Exists('$(MSBuildProjectDirectory)\..\build\copy-outputs.targets')" />
</Project>
</Project>

View File

@ -21,14 +21,13 @@
The actual handler folder version is dependent on the ANCMMsiVersion -->
<ANCMOutOfProcessNugetPackageHandlerVersion>2.0.0</ANCMOutOfProcessNugetPackageHandlerVersion>
<!-- Location of main folders-->
<!-- Location of main folders-->
<AspNetCoreSetupRoot>$(RepositoryRoot)src\Installers\Windows\AspNetCoreModule-Setup\</AspNetCoreSetupRoot>
<IIS-Setup>$(AspNetCoreSetupRoot)IIS-Setup\</IIS-Setup>
<IIS-Common>$(IIS-Setup)IIS-Common\</IIS-Common>
<ANCMBuildDirectory>$(AspNetCoreSetupRoot)build\</ANCMBuildDirectory>
<!-- Variables used by ANCM wxs projects. -->
<CustomActionVariable>CustomAction=$(AspNetCoreSetupRoot)CustomAction\bin\$(Configuration)\$(Platform)\aspnetcoreca.dll</CustomActionVariable>
<PreBuiltANCMSchema>$(RepositoryRoot).deps\ANCM\Microsoft.AspNetCore.AspNetCoreModule\$(MicrosoftAspNetCoreAspNetCoreModulePackageVersion)\</PreBuiltANCMSchema>
<PreBuiltANCMV2Schema>$(RepositoryRoot).deps\ANCM\Microsoft.AspNetCore.AspNetCoreModuleV2\$(MicrosoftAspNetCoreAspNetCoreModuleV2PackageVersion)\</PreBuiltANCMV2Schema>
<PreBuiltANCMRoot>$(PreBuiltANCMSchema)contentFiles\any\any\</PreBuiltANCMRoot>
@ -37,7 +36,7 @@
<DefineConstants>BLDVERMAJOR=$(BLDVERMAJOR);BLDVERMINOR=$(BLDVERMINOR);BLDNUMMAJOR=$(BLDNUMMAJOR);BLDNUMMINOR=$(BLDNUMMINOR);$(DefineConstants)</DefineConstants>
<DefineConstants>ANCMMsiVersion=$(ANCMMsiVersion);ANCMOutOfProcessNugetPackageHandlerVersion=$(ANCMOutOfProcessNugetPackageHandlerVersion);$(DefineConstants)</DefineConstants>
<DefineConstants>PreBuiltANCMRoot=$(PreBuiltANCMRoot);PreBuiltANCMV2Root=$(PreBuiltANCMV2Root);$(DefineConstants)</DefineConstants>
<DefineConstants>$(CustomActionVariable);PreBuiltANCMSchema=$(PreBuiltANCMSchema);PreBuiltANCMV2Schema=$(PreBuiltANCMV2Schema);$(DefineConstants)</DefineConstants>
<DefineConstants>PreBuiltANCMSchema=$(PreBuiltANCMSchema);PreBuiltANCMV2Schema=$(PreBuiltANCMV2Schema);$(DefineConstants)</DefineConstants>
</PropertyGroup>
</Project>

View File

@ -46,6 +46,7 @@
<SDLCheck>true</SDLCheck>
<PrecompiledHeaderFile>precomp.h</PrecompiledHeaderFile>
<PreprocessorDefinitions>_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
@ -76,4 +77,4 @@
<Error Condition="!Exists('$(MSBuildProjectDirectory)\..\..\..\build\versions.props')" Text="$([System.String]::Format('$(ErrorText)', '$(MSBuildProjectDirectory)\..\..\..\build\versions.props'))" />
<Error Condition="!Exists('$(MSBuildProjectDirectory)\..\..\..\build\settings.props')" Text="$([System.String]::Format('$(ErrorText)', '$(MSBuildProjectDirectory)\..\..\..\build\settings.props'))" />
</Target>
</Project>
</Project>

View File

@ -1,4 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="VisualCppTools.Community.VS2017Layout" version="14.11.25547" developmentDependency="true" />
</packages>

View File

@ -87,6 +87,7 @@
<ClCompile>
<AdditionalIncludeDirectories>$(WIX)sdk\$(WixPlatformToolset)\inc;$(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<WarningLevel>Level4</WarningLevel>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<AdditionalDependencies>nothrownew.obj;httpapi.lib;shlwapi.lib;ahadmin.lib;xmllite.lib;msi.lib;dutil.lib;wcautil.lib;Version.lib;%(AdditionalDependencies)</AdditionalDependencies>
@ -128,4 +129,4 @@
<Error Condition="!Exists('$(MSBuildProjectDirectory)\..\..\..\build\settings.props')" Text="$([System.String]::Format('$(ErrorText)', '$(MSBuildProjectDirectory)\..\..\..\build\settings.props'))" />
<Error Condition="!Exists('$(MSBuildProjectDirectory)\..\..\..\build\versions.props')" Text="$([System.String]::Format('$(ErrorText)', '$(MSBuildProjectDirectory)\..\..\..\build\versions.props'))" />
</Target>
</Project>
</Project>

View File

@ -1,4 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="VisualCppTools.Community.VS2017Layout" version="14.11.25547" developmentDependency="true" />
</packages>

View File

@ -2,12 +2,12 @@
<PropertyGroup>
<RepositoryRoot>$([MSBuild]::NormalizeDirectory('$(MSBuildThisFileDirectory)..\..\..\'))</RepositoryRoot>
<RootOutputPath>$(RepositoryRoot)artifacts/</RootOutputPath>
<BaseOutputPath>$(RootOutputPath)bin/$(Configuration)/$(MSBuildProjectName)/</BaseOutputPath>
<InstallersOutputPath>$(RepositoryRoot)artifacts\$(Configuration)\installers\</InstallersOutputPath>
<BaseOutputPath>$(RepositoryRoot)bin\$(Configuration)\$(MSBuildProjectName)\</BaseOutputPath>
<OutputPath>$(BaseOutputPath)</OutputPath>
<BaseIntermediateOutputPath>$(RootOutputPath)obj/$(MSBuildProjectName)/</BaseIntermediateOutputPath>
<IntermediateOutputPath>$(BaseIntermediateOutputPath)$(Configuration)/</IntermediateOutputPath>
<IntermediateOutputPath Condition=" '$(Platform)' != '' AND '$(Platform)' != 'AnyCPU' ">$(IntermediateOutputPath)$(Platform)/</IntermediateOutputPath>
<BaseIntermediateOutputPath>$(RepositoryRoot)obj\$(MSBuildProjectName)\</BaseIntermediateOutputPath>
<IntermediateOutputPath>$(BaseIntermediateOutputPath)$(Configuration)\</IntermediateOutputPath>
<IntermediateOutputPath Condition=" '$(Platform)' != '' AND '$(Platform)' != 'AnyCPU' ">$(IntermediateOutputPath)$(Platform)\</IntermediateOutputPath>
</PropertyGroup>
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory)..\, Directory.Build.props))\Directory.Build.props" />

View File

@ -0,0 +1,153 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 15
VisualStudioVersion = 15.0.26124.0
MinimumVisualStudioVersion = 15.0.26124.0
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "aspnetcoreCA", "AspNetCoreModule-Setup\CustomAction\aspnetcoreCA.vcxproj", "{7C27E72F-54D0-4820-8CFA-5E4BE640974B}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "iisca", "AspNetCoreModule-Setup\IIS-Setup\iisca\lib\iisca.vcxproj", "{7324770C-0871-4D73-BE3D-5E2F3E9E1B1E}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "CommonLib", "AspNetCoreModule-Setup\IIS-Setup\IIS-Common\lib\CommonLib.vcxproj", "{B54A8F61-60DE-4AD9-87CA-D102F230678E}"
EndProject
Project("{930C7802-8A8C-48F9-8165-68863BCCD9DD}") = "AncmIISExpressV1", "AspNetCoreModule-Setup\ANCMIISExpressV1\AncmIISExpressV1.wixproj", "{2A6A4709-30D2-4716-A597-55DF0FB74D37}"
EndProject
Project("{930C7802-8A8C-48F9-8165-68863BCCD9DD}") = "AncmIISExpressV2", "AspNetCoreModule-Setup\ANCMIISExpressV2\AncmIISExpressV2.wixproj", "{17C76489-4C09-4E14-B81C-7A86CD937144}"
EndProject
Project("{930C7802-8A8C-48F9-8165-68863BCCD9DD}") = "SharedFrameworkLib", "SharedFrameworkLib\SharedFrameworkLib.wixproj", "{5244BC49-2568-4701-80A6-EAB8950AB5FA}"
EndProject
Project("{930C7802-8A8C-48F9-8165-68863BCCD9DD}") = "SharedFrameworkBundle", "SharedFrameworkBundle\SharedFrameworkBundle.wixproj", "{D6C54D8B-043F-4877-B751-60E7390F9EC6}"
EndProject
Project("{930C7802-8A8C-48F9-8165-68863BCCD9DD}") = "AncmV1", "AspNetCoreModule-Setup\ANCMV1\AncmV1.wixproj", "{D36FDC38-FE53-48CC-BC82-A17C28F1CEE1}"
EndProject
Project("{930C7802-8A8C-48F9-8165-68863BCCD9DD}") = "AncmV2", "AspNetCoreModule-Setup\ANCMV2\AncmV2.wixproj", "{F9BACB48-3BD7-4EC2-AE31-664E8703EC12}"
EndProject
Project("{930C7802-8A8C-48F9-8165-68863BCCD9DD}") = "WindowsHostingBundle", "WindowsHostingBundle\WindowsHostingBundle.wixproj", "{6F1B115C-1903-40CB-837D-7961AB610F4E}"
EndProject
Project("{930C7802-8A8C-48F9-8165-68863BCCD9DD}") = "SharedFramework", "SharedFramework\SharedFramework.wixproj", "{C681D730-4505-42C6-9E6C-87F757C4FB32}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "InstallerTasks", "InstallerTasks\InstallerTasks.csproj", "{D58277B2-4C1F-46D6-B9E1-845C711E3B55}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Debug|x64 = Debug|x64
Debug|x86 = Debug|x86
Release|Any CPU = Release|Any CPU
Release|x64 = Release|x64
Release|x86 = Release|x86
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{7C27E72F-54D0-4820-8CFA-5E4BE640974B}.Debug|Any CPU.ActiveCfg = Debug|Win32
{7C27E72F-54D0-4820-8CFA-5E4BE640974B}.Debug|x64.ActiveCfg = Debug|x64
{7C27E72F-54D0-4820-8CFA-5E4BE640974B}.Debug|x64.Build.0 = Debug|x64
{7C27E72F-54D0-4820-8CFA-5E4BE640974B}.Debug|x86.ActiveCfg = Debug|Win32
{7C27E72F-54D0-4820-8CFA-5E4BE640974B}.Debug|x86.Build.0 = Debug|Win32
{7C27E72F-54D0-4820-8CFA-5E4BE640974B}.Release|Any CPU.ActiveCfg = Release|Win32
{7C27E72F-54D0-4820-8CFA-5E4BE640974B}.Release|x64.ActiveCfg = Release|x64
{7C27E72F-54D0-4820-8CFA-5E4BE640974B}.Release|x64.Build.0 = Release|x64
{7C27E72F-54D0-4820-8CFA-5E4BE640974B}.Release|x86.ActiveCfg = Release|Win32
{7C27E72F-54D0-4820-8CFA-5E4BE640974B}.Release|x86.Build.0 = Release|Win32
{7324770C-0871-4D73-BE3D-5E2F3E9E1B1E}.Debug|Any CPU.ActiveCfg = Debug|Win32
{7324770C-0871-4D73-BE3D-5E2F3E9E1B1E}.Debug|x64.ActiveCfg = Debug|x64
{7324770C-0871-4D73-BE3D-5E2F3E9E1B1E}.Debug|x64.Build.0 = Debug|x64
{7324770C-0871-4D73-BE3D-5E2F3E9E1B1E}.Debug|x86.ActiveCfg = Debug|Win32
{7324770C-0871-4D73-BE3D-5E2F3E9E1B1E}.Debug|x86.Build.0 = Debug|Win32
{7324770C-0871-4D73-BE3D-5E2F3E9E1B1E}.Release|Any CPU.ActiveCfg = Release|Win32
{7324770C-0871-4D73-BE3D-5E2F3E9E1B1E}.Release|x64.ActiveCfg = Release|x64
{7324770C-0871-4D73-BE3D-5E2F3E9E1B1E}.Release|x64.Build.0 = Release|x64
{7324770C-0871-4D73-BE3D-5E2F3E9E1B1E}.Release|x86.ActiveCfg = Release|Win32
{7324770C-0871-4D73-BE3D-5E2F3E9E1B1E}.Release|x86.Build.0 = Release|Win32
{B54A8F61-60DE-4AD9-87CA-D102F230678E}.Debug|Any CPU.ActiveCfg = Debug|Win32
{B54A8F61-60DE-4AD9-87CA-D102F230678E}.Debug|x64.ActiveCfg = Debug|x64
{B54A8F61-60DE-4AD9-87CA-D102F230678E}.Debug|x64.Build.0 = Debug|x64
{B54A8F61-60DE-4AD9-87CA-D102F230678E}.Debug|x86.ActiveCfg = Debug|Win32
{B54A8F61-60DE-4AD9-87CA-D102F230678E}.Debug|x86.Build.0 = Debug|Win32
{B54A8F61-60DE-4AD9-87CA-D102F230678E}.Release|Any CPU.ActiveCfg = Release|Win32
{B54A8F61-60DE-4AD9-87CA-D102F230678E}.Release|x64.ActiveCfg = Release|x64
{B54A8F61-60DE-4AD9-87CA-D102F230678E}.Release|x64.Build.0 = Release|x64
{B54A8F61-60DE-4AD9-87CA-D102F230678E}.Release|x86.ActiveCfg = Release|Win32
{B54A8F61-60DE-4AD9-87CA-D102F230678E}.Release|x86.Build.0 = Release|Win32
{2A6A4709-30D2-4716-A597-55DF0FB74D37}.Debug|Any CPU.ActiveCfg = Debug|x64
{2A6A4709-30D2-4716-A597-55DF0FB74D37}.Debug|x64.ActiveCfg = Debug|x64
{2A6A4709-30D2-4716-A597-55DF0FB74D37}.Debug|x64.Build.0 = Debug|x64
{2A6A4709-30D2-4716-A597-55DF0FB74D37}.Debug|x86.ActiveCfg = Debug|x64
{2A6A4709-30D2-4716-A597-55DF0FB74D37}.Release|Any CPU.ActiveCfg = Release|x64
{2A6A4709-30D2-4716-A597-55DF0FB74D37}.Release|x64.ActiveCfg = Release|x64
{2A6A4709-30D2-4716-A597-55DF0FB74D37}.Release|x64.Build.0 = Release|x64
{2A6A4709-30D2-4716-A597-55DF0FB74D37}.Release|x86.ActiveCfg = Release|x64
{17C76489-4C09-4E14-B81C-7A86CD937144}.Debug|Any CPU.ActiveCfg = Debug|x64
{17C76489-4C09-4E14-B81C-7A86CD937144}.Debug|x64.ActiveCfg = Debug|x64
{17C76489-4C09-4E14-B81C-7A86CD937144}.Debug|x64.Build.0 = Debug|x64
{17C76489-4C09-4E14-B81C-7A86CD937144}.Debug|x86.ActiveCfg = Debug|x64
{17C76489-4C09-4E14-B81C-7A86CD937144}.Release|Any CPU.ActiveCfg = Release|x64
{17C76489-4C09-4E14-B81C-7A86CD937144}.Release|x64.ActiveCfg = Release|x64
{17C76489-4C09-4E14-B81C-7A86CD937144}.Release|x64.Build.0 = Release|x64
{17C76489-4C09-4E14-B81C-7A86CD937144}.Release|x86.ActiveCfg = Release|x64
{5244BC49-2568-4701-80A6-EAB8950AB5FA}.Debug|Any CPU.ActiveCfg = Debug|x86
{5244BC49-2568-4701-80A6-EAB8950AB5FA}.Debug|x64.ActiveCfg = Debug|x86
{5244BC49-2568-4701-80A6-EAB8950AB5FA}.Debug|x86.ActiveCfg = Debug|x86
{5244BC49-2568-4701-80A6-EAB8950AB5FA}.Debug|x86.Build.0 = Debug|x86
{5244BC49-2568-4701-80A6-EAB8950AB5FA}.Release|Any CPU.ActiveCfg = Release|x86
{5244BC49-2568-4701-80A6-EAB8950AB5FA}.Release|x64.ActiveCfg = Release|x86
{5244BC49-2568-4701-80A6-EAB8950AB5FA}.Release|x86.ActiveCfg = Release|x86
{5244BC49-2568-4701-80A6-EAB8950AB5FA}.Release|x86.Build.0 = Release|x86
{D6C54D8B-043F-4877-B751-60E7390F9EC6}.Debug|Any CPU.ActiveCfg = Debug|x86
{D6C54D8B-043F-4877-B751-60E7390F9EC6}.Debug|x64.ActiveCfg = Debug|x86
{D6C54D8B-043F-4877-B751-60E7390F9EC6}.Debug|x86.ActiveCfg = Debug|x86
{D6C54D8B-043F-4877-B751-60E7390F9EC6}.Debug|x86.Build.0 = Debug|x86
{D6C54D8B-043F-4877-B751-60E7390F9EC6}.Release|Any CPU.ActiveCfg = Release|x86
{D6C54D8B-043F-4877-B751-60E7390F9EC6}.Release|x64.ActiveCfg = Release|x86
{D6C54D8B-043F-4877-B751-60E7390F9EC6}.Release|x86.ActiveCfg = Release|x86
{D6C54D8B-043F-4877-B751-60E7390F9EC6}.Release|x86.Build.0 = Release|x86
{D36FDC38-FE53-48CC-BC82-A17C28F1CEE1}.Debug|Any CPU.ActiveCfg = Debug|x64
{D36FDC38-FE53-48CC-BC82-A17C28F1CEE1}.Debug|x64.ActiveCfg = Debug|x64
{D36FDC38-FE53-48CC-BC82-A17C28F1CEE1}.Debug|x64.Build.0 = Debug|x64
{D36FDC38-FE53-48CC-BC82-A17C28F1CEE1}.Debug|x86.ActiveCfg = Debug|x64
{D36FDC38-FE53-48CC-BC82-A17C28F1CEE1}.Release|Any CPU.ActiveCfg = Release|x64
{D36FDC38-FE53-48CC-BC82-A17C28F1CEE1}.Release|x64.ActiveCfg = Release|x64
{D36FDC38-FE53-48CC-BC82-A17C28F1CEE1}.Release|x64.Build.0 = Release|x64
{D36FDC38-FE53-48CC-BC82-A17C28F1CEE1}.Release|x86.ActiveCfg = Release|x64
{F9BACB48-3BD7-4EC2-AE31-664E8703EC12}.Debug|Any CPU.ActiveCfg = Debug|x64
{F9BACB48-3BD7-4EC2-AE31-664E8703EC12}.Debug|x64.ActiveCfg = Debug|x64
{F9BACB48-3BD7-4EC2-AE31-664E8703EC12}.Debug|x64.Build.0 = Debug|x64
{F9BACB48-3BD7-4EC2-AE31-664E8703EC12}.Debug|x86.ActiveCfg = Debug|x64
{F9BACB48-3BD7-4EC2-AE31-664E8703EC12}.Release|Any CPU.ActiveCfg = Release|x64
{F9BACB48-3BD7-4EC2-AE31-664E8703EC12}.Release|x64.ActiveCfg = Release|x64
{F9BACB48-3BD7-4EC2-AE31-664E8703EC12}.Release|x64.Build.0 = Release|x64
{F9BACB48-3BD7-4EC2-AE31-664E8703EC12}.Release|x86.ActiveCfg = Release|x64
{6F1B115C-1903-40CB-837D-7961AB610F4E}.Debug|Any CPU.ActiveCfg = Debug|x86
{6F1B115C-1903-40CB-837D-7961AB610F4E}.Debug|x64.ActiveCfg = Debug|x86
{6F1B115C-1903-40CB-837D-7961AB610F4E}.Debug|x86.ActiveCfg = Debug|x86
{6F1B115C-1903-40CB-837D-7961AB610F4E}.Debug|x86.Build.0 = Debug|x86
{6F1B115C-1903-40CB-837D-7961AB610F4E}.Release|Any CPU.ActiveCfg = Release|x86
{6F1B115C-1903-40CB-837D-7961AB610F4E}.Release|x64.ActiveCfg = Release|x86
{6F1B115C-1903-40CB-837D-7961AB610F4E}.Release|x86.ActiveCfg = Release|x86
{6F1B115C-1903-40CB-837D-7961AB610F4E}.Release|x86.Build.0 = Release|x86
{C681D730-4505-42C6-9E6C-87F757C4FB32}.Debug|Any CPU.ActiveCfg = Debug|x86
{C681D730-4505-42C6-9E6C-87F757C4FB32}.Debug|x64.ActiveCfg = Debug|x86
{C681D730-4505-42C6-9E6C-87F757C4FB32}.Debug|x86.ActiveCfg = Debug|x86
{C681D730-4505-42C6-9E6C-87F757C4FB32}.Debug|x86.Build.0 = Debug|x86
{C681D730-4505-42C6-9E6C-87F757C4FB32}.Release|Any CPU.ActiveCfg = Release|x86
{C681D730-4505-42C6-9E6C-87F757C4FB32}.Release|x64.ActiveCfg = Release|x86
{C681D730-4505-42C6-9E6C-87F757C4FB32}.Release|x86.ActiveCfg = Release|x86
{C681D730-4505-42C6-9E6C-87F757C4FB32}.Release|x86.Build.0 = Release|x86
{D58277B2-4C1F-46D6-B9E1-845C711E3B55}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{D58277B2-4C1F-46D6-B9E1-845C711E3B55}.Debug|Any CPU.Build.0 = Debug|Any CPU
{D58277B2-4C1F-46D6-B9E1-845C711E3B55}.Debug|x64.ActiveCfg = Debug|Any CPU
{D58277B2-4C1F-46D6-B9E1-845C711E3B55}.Debug|x64.Build.0 = Debug|Any CPU
{D58277B2-4C1F-46D6-B9E1-845C711E3B55}.Debug|x86.ActiveCfg = Debug|Any CPU
{D58277B2-4C1F-46D6-B9E1-845C711E3B55}.Debug|x86.Build.0 = Debug|Any CPU
{D58277B2-4C1F-46D6-B9E1-845C711E3B55}.Release|Any CPU.ActiveCfg = Release|Any CPU
{D58277B2-4C1F-46D6-B9E1-845C711E3B55}.Release|Any CPU.Build.0 = Release|Any CPU
{D58277B2-4C1F-46D6-B9E1-845C711E3B55}.Release|x64.ActiveCfg = Release|Any CPU
{D58277B2-4C1F-46D6-B9E1-845C711E3B55}.Release|x64.Build.0 = Release|Any CPU
{D58277B2-4C1F-46D6-B9E1-845C711E3B55}.Release|x86.ActiveCfg = Release|Any CPU
{D58277B2-4C1F-46D6-B9E1-845C711E3B55}.Release|x86.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {920E3EE3-D833-457D-A5E3-05BE349FC3DF}
EndGlobalSection
EndGlobal

View File

@ -0,0 +1,6 @@
Windows Installers
==================
Windows Installers are built using the WiX toolset. See http://wixtoolset.org/ for documentation.
To open .wixproj files in Visual Studio, download and install the WiX Toolset extension from http://wixtoolset.org/releases/.

View File

@ -17,6 +17,7 @@
<HarvestSource>$(SharedFrameworkHarvestRootPath)\$(Platform)\</HarvestSource>
<DefineConstants>$(DefineConstants);AspNetCoreSharedFrameworkSource=$(HarvestSource)</DefineConstants>
<NamespaceGuid>$(SharedFrameworkNamespaceGuid)</NamespaceGuid>
<SchemaVersion>2.0</SchemaVersion>
</PropertyGroup>
<ItemGroup>
@ -39,6 +40,12 @@
</ItemGroup>
<ItemGroup>
<Compile Include="DependencyProvider.wxs" />
<Compile Include="Product.wxs" />
<EmbeddedResource Include="Strings.wxl" />
</ItemGroup>
<ItemGroup Condition="'$(BuildingInsideVisualStudio)' != 'true'">
<HarvestDirectory Include="$(HarvestSource)">
<SuppressRootDirectory>true</SuppressRootDirectory>
<ComponentGroupName>CG_AspNetCoreSharedFramework</ComponentGroupName>

View File

@ -6,10 +6,12 @@
<PropertyGroup>
<Name>AspNetCoreSharedFrameworkBundle</Name>
<IsProductInstaller>true</IsProductInstaller>
<OutputType>Bundle</OutputType>
<OutputName>$(RuntimeInstallerBaseName)-$(PackageVersion)-win-$(Platform)</OutputName>
<NamespaceGuid>$(SharedFrameworkNamespaceGuid)</NamespaceGuid>
<ProjectGuid>D6C54D8B-043F-4877-B751-60E7390F9EC6</ProjectGuid>
<ProjectGuid>{D6C54D8B-043F-4877-B751-60E7390F9EC6}</ProjectGuid>
<SchemaVersion>2.0</SchemaVersion>
</PropertyGroup>
<ItemGroup>
@ -24,12 +26,24 @@
</ItemGroup>
<ItemGroup>
<Compile Include="Bundle.wxs" />
<EmbeddedResource Include="thm.wxl" />
<Content Include="thm.xml" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\SharedFrameworkLib\SharedFrameworkLib.wixproj" SetPlatform="Platform=x86" />
<ProjectReference Include="..\SharedFrameworkLib\SharedFrameworkLib.wixproj" SetPlatform="Platform=x64" />
<ProjectReference Include="..\SharedFrameworkLib\SharedFrameworkLib.wixproj" SetPlatform="Platform=x86">
<Name>SharedFrameworkLib</Name>
<Project>{5244BC49-2568-4701-80A6-EAB8950AB5FA}</Project>
<Private>True</Private>
<DoNotHarvest>True</DoNotHarvest>
</ProjectReference>
<ProjectReference Include="..\SharedFrameworkLib\SharedFrameworkLib.wixproj" SetPlatform="Platform=x64">
<Name>SharedFrameworkLib</Name>
<Project>{5244BC49-2568-4701-80A6-EAB8950AB5FA}</Project>
<Private>True</Private>
<DoNotHarvest>True</DoNotHarvest>
</ProjectReference>
</ItemGroup>
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), Directory.Build.targets))\Directory.Build.targets" />

View File

@ -18,16 +18,14 @@
<?define DotNetHome=DOTNETHOME_X64?>
<?endif?>
<?define SourceFile=$(var.BinPath)\aspnetcore-runtime-$(var.PackageVersion)-win-$(var.Platform).msi?>
<MsiPackage Id="AspNetCoreSharedFramework_$(var.Platform)"
SourceFile="$(var.SourceFile)"
SourceFile="$(var.SharedFramework.TargetPath)"
Compressed="yes"
Visible="no"
Vital="yes"
InstallCondition="$(var.SharedFrameworkInstallCondition)">
<MsiProperty Name="DOTNETHOME" Value="[$(var.DotNetHome)]" />
<Payload Name="sfx_$(var.Platform).cab" SourceFile="$(var.BinPath)\sfx_$(var.Platform).cab"/>
<Payload Name="sfx_$(var.Platform).cab" SourceFile="$(var.SharedFramework.TargetDir)sfx_$(var.Platform).cab"/>
</MsiPackage>
</PackageGroup>
</Fragment>

View File

@ -6,23 +6,34 @@
<Name>AspNetCoreSharedFrameworkLib$(Platform)</Name>
<!-- Use the internal installer name because .wixlib files are only produced so we can hand them off to the dotnet/cli repo. -->
<OutputName>$(InternalInstallerBaseName)-$(PackageVersion)-win-$(Platform)</OutputName>
<!-- This is still marked as a 'product' because is needs to copied to artifact outputs. -->
<IsProductInstaller>true</IsProductInstaller>
<OutputType>Library</OutputType>
<LibBindFiles>true</LibBindFiles>
<NamespaceGuid>$(SharedFrameworkNamespaceGuid)</NamespaceGuid>
<ProjectGuid>5244BC49-2568-4701-80A6-EAB8950AB5FA</ProjectGuid>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)'=='Debug'">
<DefineConstants>$(DefineConstants);Debug</DefineConstants>
<ProjectGuid>{5244BC49-2568-4701-80A6-EAB8950AB5FA}</ProjectGuid>
<SchemaVersion>2.0</SchemaVersion>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\SharedFramework\SharedFramework.wixproj" SetPlatform="Platform=$(Platform)" />
<WixExtension Include="WixBalExtension">
<HintPath>$(WixExtDir)\WixBalExtension.dll</HintPath>
<Name>WixBalExtension</Name>
</WixExtension>
</ItemGroup>
<ItemGroup>
<Compile Include="Library.wxs" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\SharedFramework\SharedFramework.wixproj">
<Project>{C681D730-4505-42C6-9E6C-87F757C4FB32}</Project>
<Name>SharedFramework</Name>
<Private>True</Private>
<DoNotHarvest>true</DoNotHarvest>
</ProjectReference>
</ItemGroup>
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), Directory.Build.targets))\Directory.Build.targets" />
</Project>

View File

@ -4,29 +4,29 @@
<PackageGroup Id="PG_ANCM">
<RollbackBoundary Id="RB_ANCM" />
<MsiPackage Id="AspNetCoreModule_x86" SourceFile="$(var.BinPath)aspnetcoremodule_x86_en.msi"
Name="aspnetcoremodule_x86_en.msi"
<MsiPackage Id="AspNetCoreModule_x86" SourceFile="$(var.AspNetCoreModule_x86.TargetPath)"
Name="$(var.AspNetCoreModule_x86.TargetFileName)"
Compressed="yes"
Vital="yes"
Visible="no"
InstallCondition="NOT VersionNT64 AND (VersionNT &gt;= v6.1) AND (IISCoreWebEngineInstalled_x86=1) AND (IISW3SVCInstalled_x86=1) AND (NOT OPT_NO_ANCM)" />
<MsiPackage Id="AspNetCoreModule_x64" SourceFile="$(var.BinPath)aspnetcoremodule_x64_en.msi"
Name="aspnetcoremodule_x64_en.msi"
<MsiPackage Id="AspNetCoreModule_x64" SourceFile="$(var.AspNetCoreModule_x64.TargetPath)"
Name="$(var.AspNetCoreModule_x64.TargetFileName)"
Compressed="yes"
Vital="yes"
Visible="no"
InstallCondition="VersionNT64 AND (VersionNT64 &gt;= v6.1) AND (IISCoreWebEngineInstalled_x64=1) AND (IISW3SVCInstalled_x64=1) AND (NOT OPT_NO_ANCM)" />
<MsiPackage Id="AspNetCoreModuleV2_x86" SourceFile="$(var.BinPath)aspnetcoremodule_x86_en_v2.msi"
Name="aspnetcoremodule_x86_en_v2.msi"
<MsiPackage Id="AspNetCoreModuleV2_x86" SourceFile="$(var.AspNetCoreModuleV2_x86.TargetPath)"
Name="$(var.AspNetCoreModuleV2_x86.TargetFileName)"
Compressed="yes"
Vital="yes"
Visible="no"
InstallCondition="NOT VersionNT64 AND (VersionNT &gt;= v6.1) AND (IISCoreWebEngineInstalled_x86=1) AND (IISW3SVCInstalled_x86=1) AND (NOT OPT_NO_ANCM)" />
<MsiPackage Id="AspNetCoreModuleV2_x64" SourceFile="$(var.BinPath)aspnetcoremodule_x64_en_v2.msi"
Name="aspnetcoremodule_x64_en_v2.msi"
<MsiPackage Id="AspNetCoreModuleV2_x64" SourceFile="$(var.AspNetCoreModuleV2_x64.TargetPath)"
Name="$(var.AspNetCoreModuleV2_x64.TargetFileName)"
Compressed="yes"
Vital="yes"
Visible="no"

View File

@ -36,12 +36,8 @@
<MakeDir Directories="$(DepsPath)" />
<Exec Condition=" ! Exists('$(DepsPath)%(RemoteAsset.TargetFileName)') "
Command="powershell.exe -noprofile -NoLogo -ExecutionPolicy unrestricted -Command &quot;iwr -usebasicparsing -uri %(RemoteAsset.Identity) -outfile $(DepsPath)/%(RemoteAsset.TargetFileName)&quot;" />
<!-- Requires MSBuild 15.8 -->
<!-- <DownloadFile Condition=" ! Exists('$(DepsPath)%(RemoteAsset.TargetFileName)') "
SourceUrl="%(RemoteAsset.Identity)" DestinationFolder="$(DepsPath)" DestinationFileName="%(RemoteAsset.TargetFileName)" /> -->
<DownloadFile Condition=" ! Exists('$(DepsPath)%(RemoteAsset.TargetFileName)') "
SourceUrl="%(RemoteAsset.Identity)" DestinationFolder="$(DepsPath)" DestinationFileName="%(RemoteAsset.TargetFileName)" />
</Target>
<UsingTask AssemblyFile="$(OutputPath)..\InstallerTasks\InstallerTasks.dll" TaskName="RepoTasks.GetMsiProperty" />

View File

@ -8,17 +8,17 @@
<PropertyGroup>
<Name>WindowsServerHostingBundle</Name>
<OutputName>dotnet-hosting-$(PackageVersion)-win</OutputName>
<IsProductInstaller>true</IsProductInstaller>
<ProjectGuid>6F1B115C-1903-40CB-837D-7961AB610F4E</ProjectGuid>
<OutputType>Bundle</OutputType>
<Platform>x86</Platform>
<SchemaVersion>2.0</SchemaVersion>
<!-- Namespace used to generate stable UUID3 GUIDs for MSI ProductCode, etc. DO NOT CHANGE THIS. -->
<NamespaceGuid>$(HostingBundleNamespaceGuid)</NamespaceGuid>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\SharedFrameworkLib\SharedFrameworkLib.wixproj" SetPlatform="Platform=x86" />
<ProjectReference Include="..\SharedFrameworkLib\SharedFrameworkLib.wixproj" SetPlatform="Platform=x64" />
<WixExtension Include="WixUtilExtension">
<HintPath>$(WixExtDir)\WixUtilExtension.dll</HintPath>
<Name>WixUtilExtension</Name>
@ -35,6 +35,55 @@
<ItemGroup>
<Content Include="thm.xml" />
<Compile Include="ANCM.wxs" />
<Compile Include="Bundle.wxs" />
<Compile Include="DotNetCore.wxs" />
<EmbeddedResource Include="thm.wxl" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\AspNetCoreModule-Setup\ANCMV1\ANCMV1.wixproj">
<SetPlatform>Platform=x86</SetPlatform>
<Name>AspNetCoreModule_x86</Name>
<Project>D36FDC38-FE53-48CC-BC82-A17C28F1CEE1</Project>
<Private>True</Private>
<DoNotHarvest>true</DoNotHarvest>
</ProjectReference>
<ProjectReference Include="..\AspNetCoreModule-Setup\ANCMV1\ANCMV1.wixproj">
<SetPlatform>Platform=x64</SetPlatform>
<Name>AspNetCoreModule_x64</Name>
<Project>D36FDC38-FE53-48CC-BC82-A17C28F1CEE1</Project>
<Private>True</Private>
<DoNotHarvest>true</DoNotHarvest>
</ProjectReference>
<ProjectReference Include="..\AspNetCoreModule-Setup\ANCMV2\ANCMV2.wixproj">
<SetPlatform>Platform=x86</SetPlatform>
<Name>AspNetCoreModuleV2_x86</Name>
<Project>f9bacb48-3bd7-4ec2-ae31-664e8703ec12</Project>
<Private>True</Private>
<DoNotHarvest>true</DoNotHarvest>
</ProjectReference>
<ProjectReference Include="..\AspNetCoreModule-Setup\ANCMV2\ANCMV2.wixproj">
<SetPlatform>Platform=x64</SetPlatform>
<Name>AspNetCoreModuleV2_x64</Name>
<Project>f9bacb48-3bd7-4ec2-ae31-664e8703ec12</Project>
<Private>True</Private>
<DoNotHarvest>true</DoNotHarvest>
</ProjectReference>
<ProjectReference Include="..\SharedFrameworkLib\SharedFrameworkLib.wixproj">
<SetPlatform>Platform=x86</SetPlatform>
<Name>SharedFrameworkLib_x86</Name>
<Project>{5244BC49-2568-4701-80A6-EAB8950AB5FA}</Project>
<Private>True</Private>
<DoNotHarvest>true</DoNotHarvest>
</ProjectReference>
<ProjectReference Include="..\SharedFrameworkLib\SharedFrameworkLib.wixproj">
<SetPlatform>Platform=x64</SetPlatform>
<Name>SharedFrameworkLib_x64</Name>
<Project>{5244BC49-2568-4701-80A6-EAB8950AB5FA}</Project>
<Private>True</Private>
<DoNotHarvest>true</DoNotHarvest>
</ProjectReference>
</ItemGroup>
<Import Project="Product.targets" />

View File

@ -15,15 +15,22 @@
<InstallerProject Include="AspNetCoreModule-Setup/ANCMV2/ANCMV2.wixproj" AdditionalProperties="Platform=x64" />
<InstallerProject Include="AspNetCoreModule-Setup/ANCMV2/ANCMV2.wixproj" AdditionalProperties="Platform=x86" />
<!-- Build the SharedFramework bundles-->
<!-- Build the SharedFramework installers -->
<InstallerProject Include="SharedFrameworkBundle/SharedFrameworkBundle.wixproj" AdditionalProperties="Platform=x64" />
<InstallerProject Include="SharedFrameworkBundle/SharedFrameworkBundle.wixproj" AdditionalProperties="Platform=x86" />
<InstallerProject Include="*/*.wixproj" Exclude="@(InstallerProject);ancm/**/*" />
<!-- Build the SharedFramework wixlib -->
<InstallerProject Include="SharedFrameworkLib/SharedFrameworkLib.wixproj" AdditionalProperties="Platform=x64" />
<InstallerProject Include="SharedFrameworkLib/SharedFrameworkLib.wixproj" AdditionalProperties="Platform=x86" />
<!-- Windows hosting bundled -->
<InstallerProject Include="WindowsHostingBundle/WindowsHostingBundle.wixproj" AdditionalProperties="Platform=x86" />
</ItemGroup>
<Target Name="Build">
<MSBuild Projects="@(InstallerProject)" Targets="Build" />
<MSBuild Projects="@(InstallerProject)"
Targets="Build"
BuildInParallel="true" />
</Target>
<Target Name="Clean">
@ -32,7 +39,7 @@
<Target Name="Restore">
<MSBuild Projects="AspNetCoreModule-Setup/ANCMPackageResolver/ANCMPackageResolver.csproj" Targets="Restore" />
<MSBuild Projects="@(InstallerProject)" Targets="Restore" />
<MSBuild Projects="@(InstallerProject)" Targets="Restore" BuildInParallel="true" />
</Target>
</Project>

View File

@ -6,8 +6,6 @@
<Platform Condition="'$(Platform)' == ''">x64</Platform>
<Lang Condition="'$(Lang)' == ''">ENU</Lang>
<Cultures>en-US</Cultures>
<BaseOutputPath>$(RootOutputPath)bin/$(Configuration)/installers/</BaseOutputPath>
<OutputPath>$(BaseOutputPath)</OutputPath>
</PropertyGroup>
<!-- Additional parameters for Light/Candle-->

View File

@ -40,4 +40,10 @@
</PropertyGroup>
</Target>
<Target Name="CopyToArtifactsDirectory"
Condition=" '$(IsProductInstaller)' == 'true' "
AfterTargets="Build">
<Copy SourceFiles="$(TargetPath)" DestinationFolder="$(InstallersOutputPath)" />
</Target>
</Project>

View File

@ -41,7 +41,7 @@ if (-not (Test-Path "$harvestRoot/x64/shared/")) {
Push-Location $PSScriptRoot
try {
Invoke-Block { & $msbuild `
tasks/InstallerTasks.csproj `
InstallerTasks/InstallerTasks.csproj `
-nologo `
-m `
-v:m `