diff options
author | Sean Hall <r.sean.hall@gmail.com> | 2018-12-29 22:26:48 -0600 |
---|---|---|
committer | Sean Hall <r.sean.hall@gmail.com> | 2018-12-29 22:29:15 -0600 |
commit | 1dc08c5ec8e08f96e6e2d76a88bca1ed9d71a2d3 (patch) | |
tree | c7d348d42faee779bc52bacadf76b9bf7106d872 | |
parent | 60069b189db09521558b99827aee47fe3f81309b (diff) | |
download | wix-1dc08c5ec8e08f96e6e2d76a88bca1ed9d71a2d3.tar.gz wix-1dc08c5ec8e08f96e6e2d76a88bca1ed9d71a2d3.tar.bz2 wix-1dc08c5ec8e08f96e6e2d76a88bca1ed9d71a2d3.zip |
Integrate into latest v4.
-rw-r--r-- | .editorconfig | 37 | ||||
-rw-r--r-- | appveyor.cmd | 13 | ||||
-rw-r--r-- | appveyor.yml | 35 | ||||
-rw-r--r-- | balutil.sln | 31 | ||||
-rw-r--r-- | nuget.config | 8 | ||||
-rw-r--r-- | src/Cpp.Build.props | 100 | ||||
-rw-r--r-- | src/Directory.Build.props | 26 | ||||
-rw-r--r-- | src/Directory.Build.targets | 48 | ||||
-rw-r--r-- | src/NativeMultiTargeting.Build.props | 10 | ||||
-rw-r--r-- | src/balutil/balutil.nuspec | 22 | ||||
-rw-r--r-- | src/balutil/balutil.vcxproj | 94 | ||||
-rw-r--r-- | src/balutil/build/WixToolset.BalUtil.props | 23 | ||||
-rw-r--r-- | src/balutil/packages.config | 6 | ||||
-rw-r--r-- | src/balutil/precomp.cpp | 3 | ||||
-rw-r--r-- | version.json | 11 |
15 files changed, 467 insertions, 0 deletions
diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 00000000..1d72e683 --- /dev/null +++ b/.editorconfig | |||
@@ -0,0 +1,37 @@ | |||
1 | # 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. | ||
2 | # | ||
3 | # Do NOT modify this file. Update the canonical version in Home\repo-template\src\.editorconfig | ||
4 | # then update all of the repos. | ||
5 | |||
6 | root = true | ||
7 | |||
8 | [*] | ||
9 | charset = utf-8 | ||
10 | indent_style = space | ||
11 | indent_size = 4 | ||
12 | trim_trailing_whitespace = true | ||
13 | |||
14 | [*.{cs,vb}] | ||
15 | dotnet_sort_system_directives_first = true | ||
16 | |||
17 | [*.cs] | ||
18 | csharp_indent_case_contents = true : error | ||
19 | csharp_indent_switch_labels = true : error | ||
20 | csharp_new_line_before_open_brace = all | ||
21 | csharp_prefer_braces = true : error | ||
22 | csharp_style_expression_bodied_methods = when_on_single_line : suggestion | ||
23 | csharp_style_expression_bodied_constructors = when_on_single_line : suggestion | ||
24 | csharp_style_expression_bodied_operators = when_on_single_line : suggestion | ||
25 | csharp_style_expression_bodied_properties = when_on_single_line : suggestion | ||
26 | csharp_style_expression_bodied_indexers = when_on_single_line : suggestion | ||
27 | csharp_style_expression_bodied_accessors = when_on_single_line : suggestion | ||
28 | csharp_style_var_elsewhere = true : suggestion | ||
29 | csharp_style_var_for_built_in_types = true : suggestion | ||
30 | csharp_style_var_when_type_is_apparent = true : suggestion | ||
31 | dotnet_style_qualification_for_event = true : error | ||
32 | dotnet_style_qualification_for_field = true : error | ||
33 | dotnet_style_qualification_for_method = true : error | ||
34 | dotnet_style_qualification_for_property = true : error | ||
35 | |||
36 | [*.targets] | ||
37 | indent_size = 2 | ||
diff --git a/appveyor.cmd b/appveyor.cmd new file mode 100644 index 00000000..ee397c4a --- /dev/null +++ b/appveyor.cmd | |||
@@ -0,0 +1,13 @@ | |||
1 | @setlocal | ||
2 | @pushd %~dp0 | ||
3 | |||
4 | nuget restore | ||
5 | |||
6 | msbuild -p:Configuration=Release;Platform=x86;PlatformToolset=v140_xp | ||
7 | |||
8 | msbuild -p:Configuration=Release;Platform=x86;PlatformToolset=v141_xp | ||
9 | |||
10 | msbuild -p:Configuration=Release -t:Pack src\balutil\balutil.vcxproj | ||
11 | |||
12 | @popd | ||
13 | @endlocal \ No newline at end of file | ||
diff --git a/appveyor.yml b/appveyor.yml new file mode 100644 index 00000000..d55322da --- /dev/null +++ b/appveyor.yml | |||
@@ -0,0 +1,35 @@ | |||
1 | # 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. | ||
2 | # | ||
3 | # Do NOT modify this file. Update the canonical version in Home\repo-template\src\appveyor.yml | ||
4 | # then update all of the repos. | ||
5 | |||
6 | image: Visual Studio 2017 | ||
7 | |||
8 | version: 0.0.0.{build} | ||
9 | configuration: Release | ||
10 | |||
11 | environment: | ||
12 | DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true | ||
13 | DOTNET_CLI_TELEMETRY_OPTOUT: 1 | ||
14 | NUGET_XMLDOC_MODE: skip | ||
15 | |||
16 | build_script: | ||
17 | - appveyor.cmd | ||
18 | |||
19 | pull_requests: | ||
20 | do_not_increment_build_number: true | ||
21 | |||
22 | nuget: | ||
23 | disable_publish_on_pr: true | ||
24 | |||
25 | skip_branch_with_pr: true | ||
26 | skip_tags: true | ||
27 | |||
28 | artifacts: | ||
29 | - path: build\Release\**\*.nupkg | ||
30 | name: nuget | ||
31 | |||
32 | notifications: | ||
33 | - provider: Slack | ||
34 | incoming_webhook: | ||
35 | secure: p5xuu+4x2JHfwGDMDe5KcG1k7gZxqYc4jWVwvyNZv5cvkubPD2waJs5yXMAXZNN7Z63/3PWHb7q4KoY/99AjauYa1nZ4c5qYqRPFRBKTHfA= | ||
diff --git a/balutil.sln b/balutil.sln new file mode 100644 index 00000000..58f61391 --- /dev/null +++ b/balutil.sln | |||
@@ -0,0 +1,31 @@ | |||
1 | | ||
2 | Microsoft Visual Studio Solution File, Format Version 12.00 | ||
3 | # Visual Studio 15 | ||
4 | VisualStudioVersion = 15.0.26730.12 | ||
5 | MinimumVisualStudioVersion = 15.0.26124.0 | ||
6 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "balutil", "src\balutil\balutil.vcxproj", "{EDCB8095-0E6A-43E0-BC33-C4F762FC5CDB}" | ||
7 | EndProject | ||
8 | Global | ||
9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution | ||
10 | Debug|x64 = Debug|x64 | ||
11 | Debug|x86 = Debug|x86 | ||
12 | Release|x64 = Release|x64 | ||
13 | Release|x86 = Release|x86 | ||
14 | EndGlobalSection | ||
15 | GlobalSection(ProjectConfigurationPlatforms) = postSolution | ||
16 | {EDCB8095-0E6A-43E0-BC33-C4F762FC5CDB}.Debug|x64.ActiveCfg = Debug|x64 | ||
17 | {EDCB8095-0E6A-43E0-BC33-C4F762FC5CDB}.Debug|x64.Build.0 = Debug|x64 | ||
18 | {EDCB8095-0E6A-43E0-BC33-C4F762FC5CDB}.Debug|x86.ActiveCfg = Debug|Win32 | ||
19 | {EDCB8095-0E6A-43E0-BC33-C4F762FC5CDB}.Debug|x86.Build.0 = Debug|Win32 | ||
20 | {EDCB8095-0E6A-43E0-BC33-C4F762FC5CDB}.Release|x64.ActiveCfg = Release|x64 | ||
21 | {EDCB8095-0E6A-43E0-BC33-C4F762FC5CDB}.Release|x64.Build.0 = Release|x64 | ||
22 | {EDCB8095-0E6A-43E0-BC33-C4F762FC5CDB}.Release|x86.ActiveCfg = Release|Win32 | ||
23 | {EDCB8095-0E6A-43E0-BC33-C4F762FC5CDB}.Release|x86.Build.0 = Release|Win32 | ||
24 | EndGlobalSection | ||
25 | GlobalSection(SolutionProperties) = preSolution | ||
26 | HideSolutionNode = FALSE | ||
27 | EndGlobalSection | ||
28 | GlobalSection(ExtensibilityGlobals) = postSolution | ||
29 | SolutionGuid = {8741FA43-6BD2-40F9-ABA5-A5BD466A6518} | ||
30 | EndGlobalSection | ||
31 | EndGlobal | ||
diff --git a/nuget.config b/nuget.config new file mode 100644 index 00000000..790be2b0 --- /dev/null +++ b/nuget.config | |||
@@ -0,0 +1,8 @@ | |||
1 | <?xml version="1.0" encoding="utf-8"?> | ||
2 | <configuration> | ||
3 | <packageSources> | ||
4 | <clear /> | ||
5 | <add key="wixtoolset-dutil" value="https://ci.appveyor.com/nuget/wixtoolset-dutil" /> | ||
6 | <add key="api.nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" /> | ||
7 | </packageSources> | ||
8 | </configuration> \ No newline at end of file | ||
diff --git a/src/Cpp.Build.props b/src/Cpp.Build.props new file mode 100644 index 00000000..296b36ca --- /dev/null +++ b/src/Cpp.Build.props | |||
@@ -0,0 +1,100 @@ | |||
1 | <?xml version="1.0" encoding="utf-8"?> | ||
2 | <!-- 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. --> | ||
3 | |||
4 | <Project> | ||
5 | <PropertyGroup> | ||
6 | <Platform Condition=" '$(Platform)' == '' OR '$(Platform)' == 'AnyCPU' ">Win32</Platform> | ||
7 | <IntDir>$(BaseIntermediateOutputPath)$(Configuration)\$(Platform)\</IntDir> | ||
8 | <OutDir>$(OutputPath)$(Platform)\</OutDir> | ||
9 | </PropertyGroup> | ||
10 | |||
11 | <ItemDefinitionGroup> | ||
12 | <ClCompile> | ||
13 | <DisableSpecificWarnings>$(DisableSpecificCompilerWarnings)</DisableSpecificWarnings> | ||
14 | <WarningLevel>Level4</WarningLevel> | ||
15 | <AdditionalIncludeDirectories>$(ProjectDir)inc;$(MSBuildProjectDirectory);$(IntDir);$(SqlCESdkIncludePath);$(ProjectAdditionalIncludeDirectories);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | ||
16 | <PreprocessorDefinitions>WIN32;_WINDOWS;_WIN32_MSI=500;_WIN32_WINNT=0x0501;$(ArmPreprocessorDefinitions);$(UnicodePreprocessorDefinitions);_CRT_STDIO_LEGACY_WIDE_SPECIFIERS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | ||
17 | <PrecompiledHeader>Use</PrecompiledHeader> | ||
18 | <PrecompiledHeaderFile>precomp.h</PrecompiledHeaderFile> | ||
19 | <CallingConvention>StdCall</CallingConvention> | ||
20 | <TreatWarningAsError>true</TreatWarningAsError> | ||
21 | <ExceptionHandling>false</ExceptionHandling> | ||
22 | <AdditionalOptions>-YlprecompDefine</AdditionalOptions> | ||
23 | <AdditionalOptions Condition=" $(PlatformToolset.StartsWith('v14')) ">/Zc:threadSafeInit- %(AdditionalOptions)</AdditionalOptions> | ||
24 | <MultiProcessorCompilation Condition=" $(NUMBER_OF_PROCESSORS) > 4 ">true</MultiProcessorCompilation> | ||
25 | </ClCompile> | ||
26 | <ResourceCompile> | ||
27 | <PreprocessorDefinitions>$(ArmPreprocessorDefinitions);%(PreprocessorDefinitions)</PreprocessorDefinitions> | ||
28 | <AdditionalIncludeDirectories>$(ProjectAdditionalResourceIncludeDirectories);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | ||
29 | </ResourceCompile> | ||
30 | <Lib> | ||
31 | <AdditionalLibraryDirectories>$(OutDir);$(AdditionalMultiTargetLibraryPath);$(ProjectAdditionalLibraryDirectories);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories> | ||
32 | </Lib> | ||
33 | <Link> | ||
34 | <SubSystem>$(ProjectSubSystem)</SubSystem> | ||
35 | <ModuleDefinitionFile>$(ProjectModuleDefinitionFile)</ModuleDefinitionFile> | ||
36 | <NoEntryPoint>$(ResourceOnlyDll)</NoEntryPoint> | ||
37 | <GenerateDebugInformation>true</GenerateDebugInformation> | ||
38 | <AdditionalDependencies>$(ProjectAdditionalLinkLibraries);advapi32.lib;comdlg32.lib;user32.lib;oleaut32.lib;gdi32.lib;shell32.lib;ole32.lib;version.lib;%(AdditionalDependencies)</AdditionalDependencies> | ||
39 | <AdditionalLibraryDirectories>$(OutDir);$(AdditionalMultiTargetLibraryPath);$(ArmLibraryDirectories);$(ProjectAdditionalLinkLibraryDirectories);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories> | ||
40 | <AdditionalOptions Condition=" $(PlatformToolset.StartsWith('v14')) ">/IGNORE:4099 %(AdditionalOptions)</AdditionalOptions> | ||
41 | </Link> | ||
42 | </ItemDefinitionGroup> | ||
43 | |||
44 | <ItemDefinitionGroup Condition=" '$(Platform)'=='Win32' and '$(PlatformToolset)'!='v100'"> | ||
45 | <ClCompile> | ||
46 | <EnableEnhancedInstructionSet>NoExtensions</EnableEnhancedInstructionSet> | ||
47 | </ClCompile> | ||
48 | </ItemDefinitionGroup> | ||
49 | <ItemDefinitionGroup Condition=" '$(Platform)'=='arm' "> | ||
50 | <ClCompile> | ||
51 | <CallingConvention>CDecl</CallingConvention> | ||
52 | </ClCompile> | ||
53 | </ItemDefinitionGroup> | ||
54 | <ItemDefinitionGroup Condition=" '$(ConfigurationType)'=='StaticLibrary' "> | ||
55 | <ClCompile> | ||
56 | <DebugInformationFormat>OldStyle</DebugInformationFormat> | ||
57 | <OmitDefaultLibName>true</OmitDefaultLibName> | ||
58 | <IgnoreAllDefaultLibraries>true</IgnoreAllDefaultLibraries> | ||
59 | </ClCompile> | ||
60 | </ItemDefinitionGroup> | ||
61 | <ItemDefinitionGroup Condition=" '$(Configuration)'=='Debug' "> | ||
62 | <ClCompile> | ||
63 | <Optimization>Disabled</Optimization> | ||
64 | <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks> | ||
65 | <PreprocessorDefinitions>_DEBUG;DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> | ||
66 | <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> | ||
67 | </ClCompile> | ||
68 | </ItemDefinitionGroup> | ||
69 | <ItemDefinitionGroup Condition=" '$(Configuration)'=='Debug' and '$(CLRSupport)'=='true' "> | ||
70 | <ClCompile> | ||
71 | <BasicRuntimeChecks></BasicRuntimeChecks> | ||
72 | <RuntimeLibrary>MultiThreadedDebugDll</RuntimeLibrary> | ||
73 | </ClCompile> | ||
74 | </ItemDefinitionGroup> | ||
75 | <ItemDefinitionGroup Condition=" '$(Configuration)'=='Release' "> | ||
76 | <ClCompile> | ||
77 | <Optimization>MinSpace</Optimization> | ||
78 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> | ||
79 | <FunctionLevelLinking>true</FunctionLevelLinking> | ||
80 | <IntrinsicFunctions>true</IntrinsicFunctions> | ||
81 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> | ||
82 | </ClCompile> | ||
83 | <Link> | ||
84 | <EnableCOMDATFolding>true</EnableCOMDATFolding> | ||
85 | <OptimizeReferences>true</OptimizeReferences> | ||
86 | </Link> | ||
87 | </ItemDefinitionGroup> | ||
88 | <ItemDefinitionGroup Condition=" '$(Configuration)'=='Release' and '$(CLRSupport)'=='true' "> | ||
89 | <ClCompile> | ||
90 | <BasicRuntimeChecks></BasicRuntimeChecks> | ||
91 | <RuntimeLibrary>MultiThreadedDll</RuntimeLibrary> | ||
92 | </ClCompile> | ||
93 | </ItemDefinitionGroup> | ||
94 | <ItemDefinitionGroup Condition=" '$(CLRSupport)'=='true' "> | ||
95 | <Link> | ||
96 | <KeyFile>$(LinkKeyFile)</KeyFile> | ||
97 | <DelaySign>$(LinkDelaySign)</DelaySign> | ||
98 | </Link> | ||
99 | </ItemDefinitionGroup> | ||
100 | </Project> | ||
diff --git a/src/Directory.Build.props b/src/Directory.Build.props new file mode 100644 index 00000000..e853e22d --- /dev/null +++ b/src/Directory.Build.props | |||
@@ -0,0 +1,26 @@ | |||
1 | <?xml version="1.0" encoding="utf-8"?> | ||
2 | <!-- 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. --> | ||
3 | <!-- | ||
4 | Do NOT modify this file. Update the canonical version in Home\repo-template\src\Directory.Build.props | ||
5 | then update all of the repos. | ||
6 | --> | ||
7 | <Project> | ||
8 | <PropertyGroup> | ||
9 | <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> | ||
10 | <EnableSourceLink Condition=" '$(NCrunch)' == '1' ">false</EnableSourceLink> | ||
11 | |||
12 | <ProjectName Condition=" '$(ProjectName)' == '' ">$(MSBuildProjectName)</ProjectName> | ||
13 | <BaseOutputPath>$([System.IO.Path]::GetFullPath($(MSBuildThisFileDirectory)..\build\))</BaseOutputPath> | ||
14 | <BaseIntermediateOutputPath>$(BaseOutputPath)obj\$(ProjectName)\</BaseIntermediateOutputPath> | ||
15 | <OutputPath>$(BaseOutputPath)$(Configuration)\</OutputPath> | ||
16 | |||
17 | <Authors>WiX Toolset Team</Authors> | ||
18 | <Company>WiX Toolset</Company> | ||
19 | <Copyright>Copyright (c) .NET Foundation and contributors. All rights reserved.</Copyright> | ||
20 | <PackageLicenseExpression>MS-RL</PackageLicenseExpression> | ||
21 | <Product>WiX Toolset</Product> | ||
22 | </PropertyGroup> | ||
23 | |||
24 | <Import Project="Cpp.Build.props" Condition=" '$(MSBuildProjectExtension)'=='.vcxproj' " /> | ||
25 | <Import Project="Custom.Build.props" Condition=" Exists('Custom.Build.props') " /> | ||
26 | </Project> | ||
diff --git a/src/Directory.Build.targets b/src/Directory.Build.targets new file mode 100644 index 00000000..dac7452a --- /dev/null +++ b/src/Directory.Build.targets | |||
@@ -0,0 +1,48 @@ | |||
1 | <?xml version="1.0" encoding="utf-8"?> | ||
2 | <!-- 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. --> | ||
3 | <!-- | ||
4 | Do NOT modify this file. Update the canonical version in Home\repo-template\src\Directory.Build.targets | ||
5 | then update all of the repos. | ||
6 | --> | ||
7 | <!-- | ||
8 | Replace PackageReferences with ProjectReferences when the projects can be found in .sln. | ||
9 | See the original here: https://github.com/dotnet/sdk/issues/1151#issuecomment-385133284 | ||
10 | --> | ||
11 | <Project> | ||
12 | <PropertyGroup> | ||
13 | <ReplacePackageReferences>true</ReplacePackageReferences> | ||
14 | <TheSolutionPath Condition=" '$(NCrunch)'=='' ">$(SolutionPath)</TheSolutionPath> | ||
15 | <TheSolutionPath Condition=" '$(NCrunch)'=='1' ">$(NCrunchOriginalSolutionPath)</TheSolutionPath> | ||
16 | </PropertyGroup> | ||
17 | |||
18 | <Choose> | ||
19 | <When Condition="$(ReplacePackageReferences) AND '$(TheSolutionPath)' != '' AND '$(TheSolutionPath)' != '*undefined*' AND Exists('$(TheSolutionPath)')"> | ||
20 | |||
21 | <PropertyGroup> | ||
22 | <SolutionFileContent>$([System.IO.File]::ReadAllText($(TheSolutionPath)))</SolutionFileContent> | ||
23 | <SmartSolutionDir>$([System.IO.Path]::GetDirectoryName( $(TheSolutionPath) ))</SmartSolutionDir> | ||
24 | <RegexPattern>(?<="[PackageName]", ")(.*)(?=", ")</RegexPattern> | ||
25 | </PropertyGroup> | ||
26 | |||
27 | <ItemGroup> | ||
28 | <!-- Keep the identity of the PackageReference --> | ||
29 | <SmartPackageReference Include="@(PackageReference)"> | ||
30 | <PackageName>%(Identity)</PackageName> | ||
31 | <InSolution>$(SolutionFileContent.Contains('\%(Identity).csproj'))</InSolution> | ||
32 | </SmartPackageReference> | ||
33 | |||
34 | <!-- Filter them by mapping them to another ItemGroup using the WithMetadataValue item function --> | ||
35 | <PackageInSolution Include="@(SmartPackageReference->WithMetadataValue('InSolution', True))"> | ||
36 | <Pattern>$(RegexPattern.Replace('[PackageName]','%(PackageName)') )</Pattern> | ||
37 | <SmartPath>$([System.Text.RegularExpressions.Regex]::Match('$(SolutionFileContent)', '%(Pattern)'))</SmartPath> | ||
38 | </PackageInSolution> | ||
39 | |||
40 | <ProjectReference Include="@(PackageInSolution->'$(SmartSolutionDir)\%(SmartPath)' )"/> | ||
41 | |||
42 | <!-- Remove the package references that are now referenced as projects --> | ||
43 | <PackageReference Remove="@(PackageInSolution->'%(PackageName)' )"/> | ||
44 | </ItemGroup> | ||
45 | |||
46 | </When> | ||
47 | </Choose> | ||
48 | </Project> | ||
diff --git a/src/NativeMultiTargeting.Build.props b/src/NativeMultiTargeting.Build.props new file mode 100644 index 00000000..1ff46559 --- /dev/null +++ b/src/NativeMultiTargeting.Build.props | |||
@@ -0,0 +1,10 @@ | |||
1 | <?xml version="1.0" encoding="utf-8"?> | ||
2 | <!-- 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. --> | ||
3 | |||
4 | <Project> | ||
5 | <!-- Overrides the standard Cpp.Build.props to include the PlatformToolset in the output path. --> | ||
6 | <PropertyGroup> | ||
7 | <IntDir>$(BaseIntermediateOutputPath)$(Configuration)\$(PlatformToolset)\$(PlatformTarget)\</IntDir> | ||
8 | <OutDir>$(OutputPath)$(PlatformToolset)\$(PlatformTarget)\</OutDir> | ||
9 | </PropertyGroup> | ||
10 | </Project> | ||
diff --git a/src/balutil/balutil.nuspec b/src/balutil/balutil.nuspec new file mode 100644 index 00000000..fb07def8 --- /dev/null +++ b/src/balutil/balutil.nuspec | |||
@@ -0,0 +1,22 @@ | |||
1 | <?xml version="1.0"?> | ||
2 | <package > | ||
3 | <metadata> | ||
4 | <id>$id$</id> | ||
5 | <version>$version$</version> | ||
6 | <authors>$authors$</authors> | ||
7 | <owners>$authors$</owners> | ||
8 | <!-- <license type="expression">MS-RL</license> --> | ||
9 | <licenseUrl>https://licenses.nuget.org/MS-RL</licenseUrl> | ||
10 | <projectUrl>https://github.com/wixtoolset/balutil</projectUrl> | ||
11 | <requireLicenseAcceptance>false</requireLicenseAcceptance> | ||
12 | <description>$description$</description> | ||
13 | <copyright>$copyright$</copyright> | ||
14 | </metadata> | ||
15 | |||
16 | <files> | ||
17 | <file src="build\$id$.props" target="build\" /> | ||
18 | <file src="inc\*" target="build\native\include" /> | ||
19 | <file src="..\..\build\$configuration$\v140_xp\x86\balutil.lib" target="build\native\v140\x86" /> | ||
20 | <file src="..\..\build\$configuration$\v141_xp\x86\balutil.lib" target="build\native\v141\x86" /> | ||
21 | </files> | ||
22 | </package> | ||
diff --git a/src/balutil/balutil.vcxproj b/src/balutil/balutil.vcxproj new file mode 100644 index 00000000..a8b97615 --- /dev/null +++ b/src/balutil/balutil.vcxproj | |||
@@ -0,0 +1,94 @@ | |||
1 | <?xml version="1.0" encoding="utf-8"?> | ||
2 | <!-- 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. --> | ||
3 | |||
4 | <Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> | ||
5 | <Import Project="..\..\packages\WixToolset.BootstrapperCore.4.0.1\build\WixToolset.BootstrapperCore.props" Condition="Exists('..\..\packages\WixToolset.BootstrapperCore.4.0.1\build\WixToolset.BootstrapperCore.props')" /> | ||
6 | <Import Project="..\..\packages\WixToolset.DUtil.4.0.13\build\WixToolset.DUtil.props" Condition="Exists('..\..\packages\WixToolset.DUtil.4.0.13\build\WixToolset.DUtil.props')" /> | ||
7 | |||
8 | <ItemGroup Label="ProjectConfigurations"> | ||
9 | <ProjectConfiguration Include="Debug|Win32"> | ||
10 | <Configuration>Debug</Configuration> | ||
11 | <Platform>Win32</Platform> | ||
12 | </ProjectConfiguration> | ||
13 | <ProjectConfiguration Include="Release|Win32"> | ||
14 | <Configuration>Release</Configuration> | ||
15 | <Platform>Win32</Platform> | ||
16 | </ProjectConfiguration> | ||
17 | <ProjectConfiguration Include="Debug|x64"> | ||
18 | <Configuration>Debug</Configuration> | ||
19 | <Platform>x64</Platform> | ||
20 | </ProjectConfiguration> | ||
21 | <ProjectConfiguration Include="Release|x64"> | ||
22 | <Configuration>Release</Configuration> | ||
23 | <Platform>x64</Platform> | ||
24 | </ProjectConfiguration> | ||
25 | </ItemGroup> | ||
26 | |||
27 | <PropertyGroup Label="Globals"> | ||
28 | <ProjectGuid>{EDCB8095-0E6A-43E0-BC33-C4F762FC5CDB}</ProjectGuid> | ||
29 | <ConfigurationType>StaticLibrary</ConfigurationType> | ||
30 | <TargetName>balutil</TargetName> | ||
31 | <PlatformToolset>v141</PlatformToolset> | ||
32 | <CharacterSet>MultiByte</CharacterSet> | ||
33 | <Description>WiX Toolset Bootstrapper Application Layer native utility library</Description> | ||
34 | </PropertyGroup> | ||
35 | |||
36 | <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> | ||
37 | <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> | ||
38 | <Import Project="..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets" Condition="Exists('..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets')" /> | ||
39 | <Import Project="..\NativeMultiTargeting.Build.props" /> | ||
40 | |||
41 | <ImportGroup Label="ExtensionSettings"> | ||
42 | </ImportGroup> | ||
43 | |||
44 | <ImportGroup Label="Shared"> | ||
45 | </ImportGroup> | ||
46 | |||
47 | <PropertyGroup> | ||
48 | <ProjectAdditionalIncludeDirectories>$(ProjectDir)..\inc</ProjectAdditionalIncludeDirectories> | ||
49 | </PropertyGroup> | ||
50 | |||
51 | <ItemGroup> | ||
52 | <ClCompile Include="BalBootstrapperEngine.cpp" /> | ||
53 | <ClCompile Include="balcondition.cpp" /> | ||
54 | <ClCompile Include="balinfo.cpp" /> | ||
55 | <ClCompile Include="balretry.cpp" /> | ||
56 | <ClCompile Include="balutil.cpp" /> | ||
57 | <ClCompile Include="precomp.cpp"> | ||
58 | <PrecompiledHeader>Create</PrecompiledHeader> | ||
59 | </ClCompile> | ||
60 | </ItemGroup> | ||
61 | <ItemGroup> | ||
62 | <ClInclude Include="inc\BAFunctions.h" /> | ||
63 | <ClInclude Include="inc\BalBaseBAFunctions.h" /> | ||
64 | <ClInclude Include="inc\BalBaseBAFunctionsProc.h" /> | ||
65 | <ClInclude Include="inc\BalBaseBootstrapperApplication.h" /> | ||
66 | <ClInclude Include="inc\BalBaseBootstrapperApplicationProc.h" /> | ||
67 | <ClInclude Include="inc\BalBootstrapperEngine.h" /> | ||
68 | <ClInclude Include="inc\balcondition.h" /> | ||
69 | <ClInclude Include="inc\balinfo.h" /> | ||
70 | <ClInclude Include="inc\balretry.h" /> | ||
71 | <ClInclude Include="inc\balutil.h" /> | ||
72 | <ClInclude Include="inc\IBAFunctions.h" /> | ||
73 | <ClInclude Include="precomp.h" /> | ||
74 | </ItemGroup> | ||
75 | |||
76 | <ItemGroup> | ||
77 | <None Include="packages.config" /> | ||
78 | </ItemGroup> | ||
79 | |||
80 | <Target Name="Pack" | ||
81 | DependsOnTargets="GetBuildVersion"> | ||
82 | <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)"' /> | ||
83 | </Target> | ||
84 | |||
85 | <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> | ||
86 | <Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild"> | ||
87 | <PropertyGroup> | ||
88 | <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> | ||
89 | </PropertyGroup> | ||
90 | <Error Condition="!Exists('..\..\packages\WixToolset.BootstrapperCore.4.0.1\build\WixToolset.BootstrapperCore.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.BootstrapperCore.4.0.1\build\WixToolset.BootstrapperCore.props'))" /> | ||
91 | <Error Condition="!Exists('..\..\packages\WixToolset.DUtil.4.0.13\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.DUtil.4.0.13\build\WixToolset.DUtil.props'))" /> | ||
92 | <Error Condition="!Exists('..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets'))" /> | ||
93 | </Target> | ||
94 | </Project> | ||
diff --git a/src/balutil/build/WixToolset.BalUtil.props b/src/balutil/build/WixToolset.BalUtil.props new file mode 100644 index 00000000..6275e0e8 --- /dev/null +++ b/src/balutil/build/WixToolset.BalUtil.props | |||
@@ -0,0 +1,23 @@ | |||
1 | <?xml version="1.0" encoding="utf-8"?> | ||
2 | <!-- 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. --> | ||
3 | |||
4 | <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> | ||
5 | <ItemDefinitionGroup> | ||
6 | <ClCompile> | ||
7 | <AdditionalIncludeDirectories>$(MSBuildThisFileDirectory)native\include\;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | ||
8 | </ClCompile> | ||
9 | <ResourceCompile> | ||
10 | <AdditionalIncludeDirectories>$(MSBuildThisFileDirectory)native\include\;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | ||
11 | </ResourceCompile> | ||
12 | </ItemDefinitionGroup> | ||
13 | <ItemDefinitionGroup Condition=" $(PlatformToolset.ToLower().StartsWith('v140')) "> | ||
14 | <Link> | ||
15 | <AdditionalDependencies>$(MSBuildThisFileDirectory)native\lib\v140\$(PlatformTarget)\balutil.lib;%(AdditionalDependencies)</AdditionalDependencies> | ||
16 | </Link> | ||
17 | </ItemDefinitionGroup> | ||
18 | <ItemDefinitionGroup Condition=" $(PlatformToolset.ToLower().StartsWith('v141')) "> | ||
19 | <Link> | ||
20 | <AdditionalDependencies>$(MSBuildThisFileDirectory)native\lib\v141\$(PlatformTarget)\balutil.lib;%(AdditionalDependencies)</AdditionalDependencies> | ||
21 | </Link> | ||
22 | </ItemDefinitionGroup> | ||
23 | </Project> | ||
diff --git a/src/balutil/packages.config b/src/balutil/packages.config new file mode 100644 index 00000000..52c84cf0 --- /dev/null +++ b/src/balutil/packages.config | |||
@@ -0,0 +1,6 @@ | |||
1 | <?xml version="1.0" encoding="utf-8"?> | ||
2 | <packages> | ||
3 | <package id="Nerdbank.GitVersioning" version="2.1.65" targetFramework="native" developmentDependency="true" /> | ||
4 | <package id="WixToolset.BootstrapperCore" version="4.0.1" targetFramework="native" /> | ||
5 | <package id="WixToolset.DUtil" version="4.0.13" targetFramework="native" /> | ||
6 | </packages> \ No newline at end of file | ||
diff --git a/src/balutil/precomp.cpp b/src/balutil/precomp.cpp new file mode 100644 index 00000000..37664a1c --- /dev/null +++ b/src/balutil/precomp.cpp | |||
@@ -0,0 +1,3 @@ | |||
1 | // 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. | ||
2 | |||
3 | #include "precomp.h" | ||
diff --git a/version.json b/version.json new file mode 100644 index 00000000..5f857771 --- /dev/null +++ b/version.json | |||
@@ -0,0 +1,11 @@ | |||
1 | { | ||
2 | "version": "4.0", | ||
3 | "publicReleaseRefSpec": [ | ||
4 | "^refs/heads/master$" | ||
5 | ], | ||
6 | "cloudBuild": { | ||
7 | "buildNumber": { | ||
8 | "enabled": true | ||
9 | } | ||
10 | } | ||
11 | } | ||