From d2f27517dffc02b7c50e386793c7ad89762c6b64 Mon Sep 17 00:00:00 2001 From: Rob Mensching <rob@firegiant.com> Date: Wed, 21 Apr 2021 11:01:10 -0700 Subject: Integrate new build scripts with signing support --- src/CSharp.Build.props | 13 --- src/Cpp.Build.props | 112 -------------------- src/Directory.Build.props | 5 +- src/Directory.Build.targets | 85 +++++++++------ src/Directory.csproj.props | 13 +++ src/Directory.vcxproj.props | 115 +++++++++++++++++++++ src/WixToolset.Mba.Core/WixToolset.Mba.Core.csproj | 12 +-- src/balutil/balutil.vcxproj | 6 +- src/bextutil/bextutil.vcxproj | 6 +- src/test/BalUtilUnitTest/BalUtilUnitTest.vcxproj | 1 + src/test/BextUtilUnitTest/BextUtilUnitTest.vcxproj | 1 + .../WixToolsetTest.Mba.Core.csproj | 1 + 12 files changed, 188 insertions(+), 182 deletions(-) delete mode 100644 src/CSharp.Build.props delete mode 100644 src/Cpp.Build.props create mode 100644 src/Directory.csproj.props create mode 100644 src/Directory.vcxproj.props (limited to 'src') diff --git a/src/CSharp.Build.props b/src/CSharp.Build.props deleted file mode 100644 index 81d24ad1..00000000 --- a/src/CSharp.Build.props +++ /dev/null @@ -1,13 +0,0 @@ -<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. --> -<!-- - Do NOT modify this file. Update the canonical version in Home\repo-template\src\CSharp.Build.props - then update all of the repos. ---> -<Project> - <PropertyGroup> - <CheckForOverflowUnderflow>true</CheckForOverflowUnderflow> - <SignAssembly>true</SignAssembly> - <AssemblyOriginatorKeyFile>$([System.IO.Path]::GetFullPath($(MSBuildThisFileDirectory)wix.snk))</AssemblyOriginatorKeyFile> - <NBGV_EmitThisAssemblyClass>false</NBGV_EmitThisAssemblyClass> - </PropertyGroup> -</Project> diff --git a/src/Cpp.Build.props b/src/Cpp.Build.props deleted file mode 100644 index 4d2da36f..00000000 --- a/src/Cpp.Build.props +++ /dev/null @@ -1,112 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. --> - -<Project> - <PropertyGroup> - <Platform Condition=" '$(Platform)' == '' OR '$(Platform)' == 'AnyCPU' ">Win32</Platform> - <IntDir>$(BaseIntermediateOutputPath)$(Configuration)\$(Platform)\</IntDir> - <OutDir>$(OutputPath)$(Platform)\</OutDir> - - <!-- NBGV properties --> - <AssemblyCompany>$(Company)</AssemblyCompany> - <AssemblyCopyright>$(Copyright)</AssemblyCopyright> - </PropertyGroup> - - <PropertyGroup Condition="'$(WindowsTargetPlatformVersion)'=='' AND '$(VisualStudioVersion)'>='15.0'"> - <WindowsTargetPlatformVersion>$([Microsoft.Build.Utilities.ToolLocationHelper]::GetLatestSDKTargetPlatformVersion('Windows', '10.0'))</WindowsTargetPlatformVersion> - </PropertyGroup> - - <PropertyGroup> - <CodeAnalysisRuleSet>$(MSBuildThisFileDirectory)CustomizedNativeRecommendedRules.ruleset</CodeAnalysisRuleSet> - </PropertyGroup> - - <ItemDefinitionGroup> - <ClCompile> - <DisableSpecificWarnings>$(DisableSpecificCompilerWarnings)</DisableSpecificWarnings> - <WarningLevel>Level4</WarningLevel> - <AdditionalIncludeDirectories>$(ProjectDir)inc;$(MSBuildProjectDirectory);$(IntDir);$(SqlCESdkIncludePath);$(ProjectAdditionalIncludeDirectories);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <PreprocessorDefinitions>WIN32;_WINDOWS;_WIN32_MSI=500;_WIN32_WINNT=0x0501;$(ArmPreprocessorDefinitions);$(UnicodePreprocessorDefinitions);_CRT_STDIO_LEGACY_WIDE_SPECIFIERS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <PrecompiledHeader>Use</PrecompiledHeader> - <PrecompiledHeaderFile>precomp.h</PrecompiledHeaderFile> - <CallingConvention Condition="'$(Platform)'=='Win32'">StdCall</CallingConvention> - <TreatWarningAsError>true</TreatWarningAsError> - <ExceptionHandling>false</ExceptionHandling> - <AdditionalOptions>-YlprecompDefine</AdditionalOptions> - <AdditionalOptions Condition=" $(PlatformToolset.StartsWith('v14')) ">/Zc:threadSafeInit- %(AdditionalOptions)</AdditionalOptions> - <MultiProcessorCompilation Condition=" $(NUMBER_OF_PROCESSORS) > 4 ">true</MultiProcessorCompilation> - </ClCompile> - <ResourceCompile> - <PreprocessorDefinitions>$(ArmPreprocessorDefinitions);%(PreprocessorDefinitions)</PreprocessorDefinitions> - <AdditionalIncludeDirectories>$(ProjectAdditionalResourceIncludeDirectories);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - </ResourceCompile> - <Lib> - <AdditionalLibraryDirectories>$(OutDir);$(AdditionalMultiTargetLibraryPath);$(ProjectAdditionalLibraryDirectories);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories> - </Lib> - <Link> - <SubSystem>$(ProjectSubSystem)</SubSystem> - <ModuleDefinitionFile>$(ProjectModuleDefinitionFile)</ModuleDefinitionFile> - <NoEntryPoint>$(ResourceOnlyDll)</NoEntryPoint> - <GenerateDebugInformation>true</GenerateDebugInformation> - <AdditionalDependencies>$(ProjectAdditionalLinkLibraries);advapi32.lib;comdlg32.lib;user32.lib;oleaut32.lib;gdi32.lib;shell32.lib;ole32.lib;version.lib;%(AdditionalDependencies)</AdditionalDependencies> - <AdditionalLibraryDirectories>$(OutDir);$(AdditionalMultiTargetLibraryPath);$(ArmLibraryDirectories);$(ProjectAdditionalLinkLibraryDirectories);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories> - <AdditionalOptions Condition=" $(PlatformToolset.StartsWith('v14')) ">/IGNORE:4099 %(AdditionalOptions)</AdditionalOptions> - </Link> - </ItemDefinitionGroup> - - <ItemDefinitionGroup Condition=" '$(Platform)'=='Win32' and '$(PlatformToolset)'!='v100'"> - <ClCompile> - <EnableEnhancedInstructionSet>NoExtensions</EnableEnhancedInstructionSet> - </ClCompile> - </ItemDefinitionGroup> - <ItemDefinitionGroup Condition=" '$(Platform)'=='arm' "> - <ClCompile> - <CallingConvention>CDecl</CallingConvention> - </ClCompile> - </ItemDefinitionGroup> - <ItemDefinitionGroup Condition=" '$(ConfigurationType)'=='StaticLibrary' "> - <ClCompile> - <DebugInformationFormat>OldStyle</DebugInformationFormat> - <OmitDefaultLibName>true</OmitDefaultLibName> - <IgnoreAllDefaultLibraries>true</IgnoreAllDefaultLibraries> - </ClCompile> - </ItemDefinitionGroup> - <ItemDefinitionGroup Condition=" '$(Configuration)'=='Debug' "> - <ClCompile> - <Optimization>Disabled</Optimization> - <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks> - <PreprocessorDefinitions>_DEBUG;DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> - </ClCompile> - </ItemDefinitionGroup> - <ItemDefinitionGroup Condition=" '$(Configuration)'=='Debug' and '$(CLRSupport)'=='true' "> - <ClCompile> - <BasicRuntimeChecks></BasicRuntimeChecks> - <RuntimeLibrary>MultiThreadedDebugDll</RuntimeLibrary> - </ClCompile> - </ItemDefinitionGroup> - <ItemDefinitionGroup Condition=" '$(Configuration)'=='Release' "> - <ClCompile> - <Optimization>MinSpace</Optimization> - <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <FunctionLevelLinking>true</FunctionLevelLinking> - <IntrinsicFunctions>true</IntrinsicFunctions> - <RuntimeLibrary>MultiThreaded</RuntimeLibrary> - </ClCompile> - <Link> - <EnableCOMDATFolding>true</EnableCOMDATFolding> - <OptimizeReferences>true</OptimizeReferences> - </Link> - </ItemDefinitionGroup> - <ItemDefinitionGroup Condition=" '$(Configuration)'=='Release' and '$(CLRSupport)'=='true' "> - <ClCompile> - <BasicRuntimeChecks></BasicRuntimeChecks> - <RuntimeLibrary>MultiThreadedDll</RuntimeLibrary> - </ClCompile> - </ItemDefinitionGroup> - <ItemDefinitionGroup Condition=" '$(CLRSupport)'=='true' "> - <Link> - <KeyFile>$(LinkKeyFile)</KeyFile> - <DelaySign>$(LinkDelaySign)</DelaySign> - </Link> - </ItemDefinitionGroup> -</Project> diff --git a/src/Directory.Build.props b/src/Directory.Build.props index f83cc154..fb34d54e 100644 --- a/src/Directory.Build.props +++ b/src/Directory.Build.props @@ -8,7 +8,6 @@ <PropertyGroup> <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> <EnableSourceLink Condition=" '$(NCrunch)' == '1' ">false</EnableSourceLink> - <MSBuildWarningsAsMessages>MSB3246</MSBuildWarningsAsMessages> <ProjectName Condition=" '$(ProjectName)' == '' ">$(MSBuildProjectName)</ProjectName> <BaseOutputPath>$([System.IO.Path]::GetFullPath($(MSBuildThisFileDirectory)..\build\))</BaseOutputPath> @@ -22,8 +21,6 @@ <Product>WiX Toolset</Product> </PropertyGroup> - <Import Project="CSharp.Build.props" Condition=" '$(MSBuildProjectExtension)'=='.csproj' and Exists('CSharp.Build.props') " /> - <Import Project="Cpp.Build.props" Condition=" Exists('Cpp.Build.props') And '$(MSBuildProjectExtension)'=='.vcxproj' " /> - <Import Project="Wix.Build.props" Condition=" Exists('Wix.Build.props') And '$(MSBuildProjectExtension)'=='.wixproj' " /> + <Import Project="Directory$(MSBuildProjectExtension).props" Condition=" Exists('Directory$(MSBuildProjectExtension).props') " /> <Import Project="Custom.Build.props" Condition=" Exists('Custom.Build.props') " /> </Project> diff --git a/src/Directory.Build.targets b/src/Directory.Build.targets index cb988931..44701fb6 100644 --- a/src/Directory.Build.targets +++ b/src/Directory.Build.targets @@ -4,53 +4,70 @@ Do NOT modify this file. Update the canonical version in Home\repo-template\src\Directory.Build.targets then update all of the repos. --> -<!-- - Replace PackageReferences with ProjectReferences when the projects can be found in .sln. - See the original here: https://github.com/dotnet/sdk/issues/1151#issuecomment-385133284 ---> <Project> <PropertyGroup> - <CreateDocumentation Condition=" '$(CreateDocumentationFile)'!='true' ">false</CreateDocumentation> - <DocumentationFile Condition=" '$(CreateDocumentationFile)'=='true' ">$(OutputPath)\$(AssemblyName).xml</DocumentationFile> + <SigningToolFolder>$(BaseOutputPath)obj\.tools</SigningToolFolder> + <SigningToolExe>$(SigningToolFolder)\SignClient.exe</SigningToolExe> + <SigningFilelist>$(SigningToolFolder)\empty-filelist.txt</SigningFilelist> + <SigningConfiguration>$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildProjectDirectory), signing.json))\signing.json</SigningConfiguration> </PropertyGroup> <PropertyGroup> - <ReplacePackageReferences>true</ReplacePackageReferences> - <TheSolutionPath Condition=" '$(NCrunch)'=='' ">$(SolutionPath)</TheSolutionPath> - <TheSolutionPath Condition=" '$(NCrunch)'=='1' ">$(NCrunchOriginalSolutionPath)</TheSolutionPath> + <CreateDocumentation Condition=" '$(CreateDocumentationFile)'!='true' ">false</CreateDocumentation> + <DocumentationFile Condition=" '$(CreateDocumentationFile)'=='true' ">$(OutputPath)\$(AssemblyName).xml</DocumentationFile> </PropertyGroup> - <Choose> - <When Condition="$(ReplacePackageReferences) AND '$(TheSolutionPath)' != '' AND '$(TheSolutionPath)' != '*undefined*' AND Exists('$(TheSolutionPath)')"> + <Target Name="SetNuspecProperties" DependsOnTargets="InitializeSourceControlInformation" AfterTargets="GetBuildVersion" + Condition=" Exists('$(MSBuildProjectName).nuspec') "> + <PropertyGroup> + <ProjectUrl Condition=" '$(ProjectUrl)'=='' and '$(PrivateRepositoryUrl)'!='' ">$(PrivateRepositoryUrl.Replace('.git',''))</ProjectUrl> + + <NuspecFile>$(MSBuildProjectName).nuspec</NuspecFile> + <NuspecBasePath Condition=" '$(NuspecBasePath)'=='' ">$(MSBuildProjectDirectory)</NuspecBasePath> + <NuspecProperties>$(NuspecProperties);Id=$(PackageId);Authors="$(Authors)";Configuration=$(Configuration);Copyright="$(Copyright)";Description="$(Description)";Title="$(Title)"</NuspecProperties> + <NuspecProperties>$(NuspecProperties);Version=$(NPMPackageVersion);RepositoryCommit=$(SourceRevisionId);RepositoryType=$(RepositoryType);RepositoryUrl=$(PrivateRepositoryUrl);ProjectFolder=$(MSBuildProjectDirectory)\;ProjectUrl=$(ProjectUrl)</NuspecProperties> + <PublishRepositoryUrl>true</PublishRepositoryUrl> + <SymbolPackageFormat>snupkg</SymbolPackageFormat> + </PropertyGroup> + </Target> + + <Target Name="PackNative" DependsOnTargets="GetBuildVersion;SetNuspecProperties" + Condition=" Exists('$(MSBuildProjectName).nuspec') "> + + <Exec Command='nuget pack $(NuspecFile) -OutputDirectory "$(BaseOutputPath)$(Configuration)" -BasePath "$(NuspecBasePath)" -Properties $(NuspecProperties)' + WorkingDirectory="$(MSBuildProjectDirectory)" /> + + <ItemGroup> + <NuGetPackOutput Include="$(BaseOutputPath)$(Configuration)\**\$(PackageId)*.nupkg" /> + </ItemGroup> + </Target> + + <Target Name="_GetSignClient" + Condition=" !Exists('$(SigningToolExe)') "> - <PropertyGroup> - <SolutionFileContent>$([System.IO.File]::ReadAllText($(TheSolutionPath)))</SolutionFileContent> - <SmartSolutionDir>$([System.IO.Path]::GetDirectoryName( $(TheSolutionPath) ))</SmartSolutionDir> - <RegexPattern>(?<="[PackageName]", ")(.*)(?=", ")</RegexPattern> - </PropertyGroup> + <WriteLinesToFile File='$(SigningFilelist)' Lines='do-not-sign-files-in-nupkg' Overwrite='true' /> - <ItemGroup> - <!-- Keep the identity of the PackageReference --> - <SmartPackageReference Include="@(PackageReference)"> - <PackageName>%(Identity)</PackageName> - <InSolution>$(SolutionFileContent.Contains('\%(Identity).csproj'))</InSolution> - </SmartPackageReference> + <Exec Command='dotnet.exe tool install --tool-path "$(SigningToolFolder)" SignClient' /> + </Target> - <!-- Filter them by mapping them to another ItemGroup using the WithMetadataValue item function --> - <PackageInSolution Include="@(SmartPackageReference->WithMetadataValue('InSolution', True))"> - <Pattern>$(RegexPattern.Replace('[PackageName]','%(PackageName)') )</Pattern> - <SmartPath>$([System.Text.RegularExpressions.Regex]::Match('$(SolutionFileContent)', '%(Pattern)'))</SmartPath> - </PackageInSolution> + <Target Name="SignOutput" DependsOnTargets="_GetSignClient" AfterTargets="AfterBuild" + Condition=" '$(SigningUser)'!='' and '$(SignOutput)'!='false' and + ('$(MSBuildProjectExtension)'=='.csproj' or ('$(MSBuildProjectExtension)'=='.vcxproj' and '$(ConfigurationType)'!='StaticLibrary'))"> - <ProjectReference Include="@(PackageInSolution->'$(SmartSolutionDir)\%(SmartPath)' )"/> + <Exec Command='"$(SigningToolExe)" sign -i $(TargetPath) -c "$(SigningConfiguration)" -n "WiX Toolset" -d "WiX Toolset" -u https://wixtoolset.org/ -r "$(SigningUser)" -s "$(SigningSecret)"' + WorkingDirectory="$(MSBuildProjectDirectory)" EchoOff="true" /> + </Target> - <!-- Remove the package references that are now referenced as projects --> - <PackageReference Remove="@(PackageInSolution->'%(PackageName)' )"/> - </ItemGroup> + <Target Name="SignNupkg" DependsOnTargets="_GetSignClient" AfterTargets="Pack;PackNative" + Condition=" '$(SigningUser)'!='' and '@(NuGetPackOutput)'!='' and '$(SignNupkg)'!='false' "> + <ItemGroup> + <SigningNupkgs Include="@(NuGetPackOutput)" Condition=" '%(Extension)'=='.nupkg' " /> + </ItemGroup> - </When> - </Choose> + <Exec Command='"$(SigningToolExe)" sign -i "@(SigningNupkgs->'%(Identity)')" -c "$(SigningConfiguration)" -f "$(SigningFilelist)" -n "WiX Toolset" -d "WiX Toolset" -u https://wixtoolset.org/ -r "$(SigningUser)" -s "$(SigningSecret)"' + WorkingDirectory="$(MSBuildProjectDirectory)" EchoOff="true" /> + </Target> - <Import Project="Wix.Build.targets" Condition=" Exists('Wix.Build.targets') And '$(MSBuildProjectExtension)'=='.wixproj' " /> + <Import Project="Directory$(MSBuildProjectExtension).targets" Condition=" Exists('Directory$(MSBuildProjectExtension).targets') " /> <Import Project="Custom.Build.targets" Condition=" Exists('Custom.Build.targets') " /> </Project> diff --git a/src/Directory.csproj.props b/src/Directory.csproj.props new file mode 100644 index 00000000..81d24ad1 --- /dev/null +++ b/src/Directory.csproj.props @@ -0,0 +1,13 @@ +<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. --> +<!-- + Do NOT modify this file. Update the canonical version in Home\repo-template\src\CSharp.Build.props + then update all of the repos. +--> +<Project> + <PropertyGroup> + <CheckForOverflowUnderflow>true</CheckForOverflowUnderflow> + <SignAssembly>true</SignAssembly> + <AssemblyOriginatorKeyFile>$([System.IO.Path]::GetFullPath($(MSBuildThisFileDirectory)wix.snk))</AssemblyOriginatorKeyFile> + <NBGV_EmitThisAssemblyClass>false</NBGV_EmitThisAssemblyClass> + </PropertyGroup> +</Project> diff --git a/src/Directory.vcxproj.props b/src/Directory.vcxproj.props new file mode 100644 index 00000000..9ea7071b --- /dev/null +++ b/src/Directory.vcxproj.props @@ -0,0 +1,115 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. --> + +<Project> + <PropertyGroup> + <Platform Condition=" '$(Platform)' == '' OR '$(Platform)' == 'AnyCPU' ">Win32</Platform> + <IntDir>$(BaseIntermediateOutputPath)$(Configuration)\$(Platform)\</IntDir> + <OutDir>$(OutputPath)$(Platform)\</OutDir> + + <!-- NBGV properties --> + <AssemblyCompany>$(Company)</AssemblyCompany> + <AssemblyCopyright>$(Copyright)</AssemblyCopyright> + + <RuntimeIdentifiers>win-x86;win-x64;win-arm64</RuntimeIdentifiers> + <NuGetTargetMoniker>native,Version=v0.0</NuGetTargetMoniker> + </PropertyGroup> + + <PropertyGroup Condition="'$(WindowsTargetPlatformVersion)'=='' AND '$(VisualStudioVersion)'>='15.0'"> + <WindowsTargetPlatformVersion>$([Microsoft.Build.Utilities.ToolLocationHelper]::GetLatestSDKTargetPlatformVersion('Windows', '10.0'))</WindowsTargetPlatformVersion> + </PropertyGroup> + + <PropertyGroup> + <CodeAnalysisRuleSet Condition=" Exists('$(MSBuildThisFileDirectory)CustomizedNativeRecommendedRules.ruleset') ">$(MSBuildThisFileDirectory)CustomizedNativeRecommendedRules.ruleset</CodeAnalysisRuleSet> + </PropertyGroup> + + <ItemDefinitionGroup> + <ClCompile> + <DisableSpecificWarnings>$(DisableSpecificCompilerWarnings)</DisableSpecificWarnings> + <WarningLevel>Level4</WarningLevel> + <AdditionalIncludeDirectories>$(ProjectDir)inc;$(MSBuildProjectDirectory);$(IntDir);$(SqlCESdkIncludePath);$(ProjectAdditionalIncludeDirectories);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + <PreprocessorDefinitions>WIN32;_WINDOWS;_WIN32_MSI=500;_WIN32_WINNT=0x0501;$(ArmPreprocessorDefinitions);$(UnicodePreprocessorDefinitions);_CRT_STDIO_LEGACY_WIDE_SPECIFIERS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> + <PrecompiledHeader>Use</PrecompiledHeader> + <PrecompiledHeaderFile>precomp.h</PrecompiledHeaderFile> + <CallingConvention Condition="'$(Platform)'=='Win32'">StdCall</CallingConvention> + <TreatWarningAsError>true</TreatWarningAsError> + <ExceptionHandling>false</ExceptionHandling> + <AdditionalOptions>-YlprecompDefine</AdditionalOptions> + <AdditionalOptions Condition=" $(PlatformToolset.StartsWith('v14')) ">/Zc:threadSafeInit- %(AdditionalOptions)</AdditionalOptions> + <MultiProcessorCompilation Condition=" $(NUMBER_OF_PROCESSORS) > 4 ">true</MultiProcessorCompilation> + </ClCompile> + <ResourceCompile> + <PreprocessorDefinitions>$(ArmPreprocessorDefinitions);%(PreprocessorDefinitions)</PreprocessorDefinitions> + <AdditionalIncludeDirectories>$(ProjectAdditionalResourceIncludeDirectories);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + </ResourceCompile> + <Lib> + <AdditionalLibraryDirectories>$(OutDir);$(AdditionalMultiTargetLibraryPath);$(ProjectAdditionalLibraryDirectories);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories> + </Lib> + <Link> + <SubSystem>$(ProjectSubSystem)</SubSystem> + <ModuleDefinitionFile>$(ProjectModuleDefinitionFile)</ModuleDefinitionFile> + <NoEntryPoint>$(ResourceOnlyDll)</NoEntryPoint> + <GenerateDebugInformation>true</GenerateDebugInformation> + <AdditionalDependencies>$(ProjectAdditionalLinkLibraries);advapi32.lib;comdlg32.lib;user32.lib;oleaut32.lib;gdi32.lib;shell32.lib;ole32.lib;version.lib;%(AdditionalDependencies)</AdditionalDependencies> + <AdditionalLibraryDirectories>$(OutDir);$(AdditionalMultiTargetLibraryPath);$(ArmLibraryDirectories);$(ProjectAdditionalLinkLibraryDirectories);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories> + <AdditionalOptions Condition=" $(PlatformToolset.StartsWith('v14')) ">/IGNORE:4099 %(AdditionalOptions)</AdditionalOptions> + </Link> + </ItemDefinitionGroup> + + <ItemDefinitionGroup Condition=" '$(Platform)'=='Win32' and '$(PlatformToolset)'!='v100'"> + <ClCompile> + <EnableEnhancedInstructionSet>NoExtensions</EnableEnhancedInstructionSet> + </ClCompile> + </ItemDefinitionGroup> + <ItemDefinitionGroup Condition=" '$(Platform)'=='arm' "> + <ClCompile> + <CallingConvention>CDecl</CallingConvention> + </ClCompile> + </ItemDefinitionGroup> + <ItemDefinitionGroup Condition=" '$(ConfigurationType)'=='StaticLibrary' "> + <ClCompile> + <DebugInformationFormat>OldStyle</DebugInformationFormat> + <OmitDefaultLibName>true</OmitDefaultLibName> + <IgnoreAllDefaultLibraries>true</IgnoreAllDefaultLibraries> + </ClCompile> + </ItemDefinitionGroup> + <ItemDefinitionGroup Condition=" '$(Configuration)'=='Debug' "> + <ClCompile> + <Optimization>Disabled</Optimization> + <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks> + <PreprocessorDefinitions>_DEBUG;DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> + <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> + </ClCompile> + </ItemDefinitionGroup> + <ItemDefinitionGroup Condition=" '$(Configuration)'=='Debug' and '$(CLRSupport)'=='true' "> + <ClCompile> + <BasicRuntimeChecks></BasicRuntimeChecks> + <RuntimeLibrary>MultiThreadedDebugDll</RuntimeLibrary> + </ClCompile> + </ItemDefinitionGroup> + <ItemDefinitionGroup Condition=" '$(Configuration)'=='Release' "> + <ClCompile> + <Optimization>MinSpace</Optimization> + <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> + <FunctionLevelLinking>true</FunctionLevelLinking> + <IntrinsicFunctions>true</IntrinsicFunctions> + <RuntimeLibrary>MultiThreaded</RuntimeLibrary> + </ClCompile> + <Link> + <EnableCOMDATFolding>true</EnableCOMDATFolding> + <OptimizeReferences>true</OptimizeReferences> + </Link> + </ItemDefinitionGroup> + <ItemDefinitionGroup Condition=" '$(Configuration)'=='Release' and '$(CLRSupport)'=='true' "> + <ClCompile> + <BasicRuntimeChecks></BasicRuntimeChecks> + <RuntimeLibrary>MultiThreadedDll</RuntimeLibrary> + </ClCompile> + </ItemDefinitionGroup> + <ItemDefinitionGroup Condition=" '$(CLRSupport)'=='true' "> + <Link> + <KeyFile>$(LinkKeyFile)</KeyFile> + <DelaySign>$(LinkDelaySign)</DelaySign> + </Link> + </ItemDefinitionGroup> +</Project> diff --git a/src/WixToolset.Mba.Core/WixToolset.Mba.Core.csproj b/src/WixToolset.Mba.Core/WixToolset.Mba.Core.csproj index 1cfc8c11..2bd7ca80 100644 --- a/src/WixToolset.Mba.Core/WixToolset.Mba.Core.csproj +++ b/src/WixToolset.Mba.Core/WixToolset.Mba.Core.csproj @@ -19,6 +19,7 @@ </ItemGroup> <PropertyGroup> + <NuspecBasePath>$(OutputPath)</NuspecBasePath> <NativeFileListPath Condition=" '$(NCrunch)'=='' ">$(MSBuildProjectDir)..\..\build\obj\$(ProjectName)\$(Configuration)\NativeFileList.txt</NativeFileListPath> <NativeFileListPath Condition=" '$(NCrunch)'=='1' ">$(NCrunchOriginalProjectDir)..\..\build\obj\$(ProjectName)\$(Configuration)\NativeFileList.txt</NativeFileListPath> </PropertyGroup> @@ -27,7 +28,7 @@ <MSBuild Projects="..\mbanative\mbanative.vcxproj" Properties="Platform=Win32" Targets="Build;BuiltProjectOutputGroup;ContentFilesProjectOutputGroup;DebugSymbolsProjectOutputGroup"> <Output TaskParameter="TargetOutputs" ItemName="_NativeProjectOutput" /> </MSBuild> - + <WriteLinesToFile File="$(NativeFileListPath)" Lines="@(_NativeProjectOutput)" Overwrite="true" /> <ItemGroup> @@ -55,11 +56,4 @@ <FileWrites Include="@(_NCrunchNativeCopied)" /> </ItemGroup> </Target> - - <Target Name="SetNuspecProperties" AfterTargets="GetBuildVersion"> - <PropertyGroup> - <NuspecBasePath>$(OutputPath)</NuspecBasePath> - <NuspecProperties>Id=$(MSBuildThisFileName);Version=$(BuildVersionSimple);Authors=$(Authors);Copyright=$(Copyright);Description=$(Description);RepositoryCommit=$(SourceRevisionId);RepositoryType=$(RepositoryType);RepositoryUrl=$(PrivateRepositoryUrl)</NuspecProperties> - </PropertyGroup> - </Target> -</Project> \ No newline at end of file +</Project> diff --git a/src/balutil/balutil.vcxproj b/src/balutil/balutil.vcxproj index 73153d5e..ab33f159 100644 --- a/src/balutil/balutil.vcxproj +++ b/src/balutil/balutil.vcxproj @@ -39,6 +39,7 @@ <PlatformToolset>v142</PlatformToolset> <CharacterSet>MultiByte</CharacterSet> <Description>WiX Toolset Bootstrapper Application Layer native utility library</Description> + <PackageId>WixToolset.BalUtil</PackageId> </PropertyGroup> <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> @@ -88,11 +89,6 @@ <None Include="packages.config" /> </ItemGroup> - <Target Name="Pack" - DependsOnTargets="GetBuildVersion"> - <Exec Command='nuget pack balutil.nuspec -OutputDirectory "$(BaseOutputPath)$(Configuration)" -Properties Configuration=$(Configuration);Id=WixToolset.BalUtil;Version="$(BuildVersionSimple)";Authors="$(Authors)";Copyright="$(Copyright)";Description="$(Description)";Title="$(Title)"' /> - </Target> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> <Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild"> <PropertyGroup> diff --git a/src/bextutil/bextutil.vcxproj b/src/bextutil/bextutil.vcxproj index b3ce96ba..b9334cf3 100644 --- a/src/bextutil/bextutil.vcxproj +++ b/src/bextutil/bextutil.vcxproj @@ -39,6 +39,7 @@ <PlatformToolset>v142</PlatformToolset> <CharacterSet>MultiByte</CharacterSet> <Description>WiX Toolset Bundle Extension native utility library</Description> + <PackageId>WixToolset.BextUtil</PackageId> </PropertyGroup> <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> @@ -77,11 +78,6 @@ <None Include="packages.config" /> </ItemGroup> - <Target Name="Pack" - DependsOnTargets="GetBuildVersion"> - <Exec Command='nuget pack bextutil.nuspec -OutputDirectory "$(BaseOutputPath)$(Configuration)" -Properties Configuration=$(Configuration);Id=WixToolset.BextUtil;Version="$(BuildVersionSimple)";Authors="$(Authors)";Copyright="$(Copyright)";Description="$(Description)";Title="$(Title)"' /> - </Target> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> <Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild"> <PropertyGroup> diff --git a/src/test/BalUtilUnitTest/BalUtilUnitTest.vcxproj b/src/test/BalUtilUnitTest/BalUtilUnitTest.vcxproj index b7bbd77d..d3a81e2a 100644 --- a/src/test/BalUtilUnitTest/BalUtilUnitTest.vcxproj +++ b/src/test/BalUtilUnitTest/BalUtilUnitTest.vcxproj @@ -24,6 +24,7 @@ <ConfigurationType>DynamicLibrary</ConfigurationType> <CharacterSet>Unicode</CharacterSet> <CLRSupport>true</CLRSupport> + <SignOutput>false</SignOutput> </PropertyGroup> <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> diff --git a/src/test/BextUtilUnitTest/BextUtilUnitTest.vcxproj b/src/test/BextUtilUnitTest/BextUtilUnitTest.vcxproj index f45b9b83..a9937894 100644 --- a/src/test/BextUtilUnitTest/BextUtilUnitTest.vcxproj +++ b/src/test/BextUtilUnitTest/BextUtilUnitTest.vcxproj @@ -24,6 +24,7 @@ <ConfigurationType>DynamicLibrary</ConfigurationType> <CharacterSet>Unicode</CharacterSet> <CLRSupport>true</CLRSupport> + <SignOutput>false</SignOutput> </PropertyGroup> <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> diff --git a/src/test/WixToolsetTest.Mba.Core/WixToolsetTest.Mba.Core.csproj b/src/test/WixToolsetTest.Mba.Core/WixToolsetTest.Mba.Core.csproj index 9d9b9c2b..53d82f7e 100644 --- a/src/test/WixToolsetTest.Mba.Core/WixToolsetTest.Mba.Core.csproj +++ b/src/test/WixToolsetTest.Mba.Core/WixToolsetTest.Mba.Core.csproj @@ -6,6 +6,7 @@ <TargetFramework>netcoreapp3.1</TargetFramework> <IsPackable>false</IsPackable> <RuntimeIdentifier>win-x86</RuntimeIdentifier> + <SignOutput>false</SignOutput> </PropertyGroup> <ItemGroup> -- cgit v1.2.3-55-g6feb